This discussion about Interviewing Techniques has inspired me to ask, "Why don't all programming job interviews involved writing some kind of a program?"
In my opinion, asking an interviewee to sit down in front of a computer and write a small program, in a language they claim to be proficient in, to solve a predefined problem, would weed out those candidates who can actually program, and those who can't.
I know that not all programming job interviews invlove writing a program, or even a single line of code, or even psuedo code. So my question is, why not?
Obviously one potential reason could be the time factor. I'd like to hear more about that as well as other thoughts. Thanks.
Edit: I'm not saying that I believe that writing code should be the entire interview. I think talking through a problem solving scenario and asking some computer science questions are also important parts of a comprehensive interview. I'd also make sure a candidate is proficient in revision control tool concepts.
However, I'd skip asking clichéd questions like, "What is your biggest strength, and what is your biggest weakness," maybe even, "Explain a difficult situation you faced and how you dealt with it." in order to make time for writing code.
I also think using Pair Programming during interviews is an interesting idea.