What makes a good interview question? Clearly it should allow you differentiate a hire candidate from a no hire candidate. That's fine but how do we do that? I am a fan of the Joel approach basically Smart and Gets Things Done. Once again that fine, but what does that mean.
I'll start with the Gets Things Done part. This is a very important part of a candidate, but for me it is kind of a one sided interview question. Its just a check box you need to check. The reason is it is hard to get first hand evidence in an hour, or a day, of interviews that a candidate will get things done. The best you can do is use some behavioral interviewing and get examples of situations where the candidate has Gotten Stuff Done in the past.
Which is great and all. But if we assume the person is as smart as I hope they are, then it is pretty possible that they are able to make this whole part up. Now clearly you want to ask probing questions into the details of the situation, which is all fine and dandy. But I still assume a good candidate could make it all up. So the moral of the story is the only thing you can do is rule your self out in the Gets Stuff Done part of the interview.
So assuming they don't screw up the Gets Stuff Done part how do assess smartness. You don't want a question that has just a right or wrong answer, or that requires a burst of insight to figure out. Those types of questions don't allow you to get any insight into the candidates thought process or ability to assimilate new information into their solution.
I am also a believer that if you are hiring a person to code, you should probably see them code. Makes sense when you say it, but I still see some people asking logic questions that are only marginally related to programing.
A pet peeve I have about interviews and coding questions is the medium. Are you hiring the person to write code on paper? On a white board? To just talk about code? No you are hiring them to type out code in an IDE. So have the interview set up like that. Let the person code in an IDE they are used to.
So that is everything about my Favorite interview question but the question, which seems like a good place to stop part 1. Hurry back for part 2 to find out the question.