views:

380

answers:

7

We've got a round of hiring coming up and something that the brass wants to emphasize in the phone screen is UML experience.

Does anyone have suggestions for UML questions to ask in a technical phone screen?

I'm more of an in-person interview guy than a phone screen guy, so "normally" with something like UML I'd have the candidate knock out some simple diagrams on paper. However, I'd rather not have the candidates try to describe an UML diagram over the phone (mostly because I'd be terrible at that, and partly because I'd hate to try and judge them on their UML skills based on my napkin drawing for their description.)

How do other people phone-screen for UML?

+1  A: 

Instead of focusing on the details of UML, you could focus instead on the question of why. As in Why would you use UML in this situation? What is the purpose of UML? that kind of question would probably work well over the phone.

Soldier.moth
+3  A: 

Rather than have the candidate draw a diagram, you could have him interpret, implement, or find errors in given diagrams. My impression is that those who understand UML can create and understand diagrams, and those that don't use it much fail on both.

If you trust the candidate enough to not distribute the questions (e.g., this is a late interview), you may want to send him a few moderately complex diagrams by email during the phone screen and see in real time whether he can interpret them. You can send a diagram with an error and ask the candidate to find it. Or you could ask the candidate to code something specific (e.g., class definitions).

If you want to avoid sending questions, setup some web site that will tempoerarily show the diagram (E.g., via flash) but that the diagram cannot be captured without actually capturing the screen (which the candidate should be too busy to do during the interview).

Of course, you can also use a real time shared whiteboarding application and have the user scribble. Most UML in collaborative design is initially generated as freehand sketches, not with formal case tools.

Also, if you like puzzles, one way to do an informal UML interview (assuming you have real-time drawing) is to play "UML pictionary". There was a company in DC that did this at a recruiting event, where candidates had to either draw a phrase in UML, or interpret it.

Uri
A: 

How about some gross UML options which are easy to explain?

  • Describe the difference in a UML diagram of private vs. public inheritance?
  • Describe your most used / favorite dynamic diagram and why?
  • Describe your most used / favorite static diagram and why?
  • What level of detail have you found UML to be most useful in your development?
  • What things DON'T go into a use case diagram?
Chris Harris
+1  A: 

"Have you used UML? For what purpose? What did you think of it?"

The phone screen, IMO, isn't necessarily to detect whether people are lying: in which case there's no need to 'test' people over the phone.

Instead, the phone screen is to see whether (assuming that the person isn't lying) their experience and desires seems like a sufficiently good fit that it's worth their travelling for an in-person interview.

If they were being untruthful during the phone interview, you can detect that later during the in-person interview or on-site test.

ChrisW
+2  A: 

There is a big difference between the level of UML experience required for a site doing model-driven development and somewhere that wants to use UML just for more formal design and documentation.

You should be in agreement with management about which category you fit or aspire to ;-)

1) ask them which diagram types they use most often and to describe the last occasion on which they used each of those diagrams. If they are really using UML regularly, they should be able to come up with a realistic scenario.

2) ask them to talk about using whiteboard UML vs tools, which can lead into a discussion of their favourite tool and its benefits/weaknesses as well as the need to retain whiteboard diagrams or not.

Anybody who uses UML regularly to think and especially to work out design collaboratively should be able to talk to these points without much hesitation.

Andy Dent
A: 

I agree with Soldier.moth most people just misuse UML overcomplicating it instead of using it as a communication tool with Users.

So asking WHY is the best question. It is an open question but personnaly that's how you see if the candidate is not a robot learning by rote.

Rebol Tutorial
+1  A: 

Another good question is some variant of "What do you feel are the main limitations of UML?"

Anybody who used UML enough will have a whole list of little annoyances and things that it's just not expressive enough for. Someone who just learned the shapes wouldn't succeed here.

Uri