Interviewing software developers is a problem that has interested me ever since I began interviewing for software development jobs. During most interviews the candidate and interviewer generally have an hour or less together. By the time you cut out the introductions and time at the end for questions it doesn’t leave much time for real interview questions. So how do you determine if someone will make a great software developer in under an hour? This question, and potential answers, has been a favorite topic of mine for some time.
The other day a friend and colleague pointed out a commonly known coding interview exercise known as FizzBuzz (http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz.html). I found this very interesting and was curious at my own ability to solve the problem. It turns out, thankfully, I was able to solve the problem in just a few minutes but it did make me rethink my ideas on interviewing potential software engineers.
The FizzBuzz problem does not seem all that complex and maybe even too trivial to ask during an interview. However, it will tell you immediately if someone claiming years of software development experience can at least solve simple problems and implement simple solutions quickly. I would caution against reading too much into the exact implementation someone codes while solving this during an interview. I would not look for this code to be optimized or implemented in the fewest number of lines, I would simply evaluate someone on their ability to solve or not solve the problem.
I traditionally have not asked candidates to code in front of me but rather ask conceptual problems that we can talk through together. I think the next time I interview a candidate I may just try the FizzBuzz problem.
What are your thoughts on coding problems during the interview process?

Interviews are an interesting topic, and Psychologists have heavily researched how to best predict that a given worker will succeed at a given job.
Despite all kinds of funky interview styles and personality profiling experiments, the best single predictor of on the job performance is to give the candidate a real portion of the job you are hiring them to do.
Interviews are comparatively worthless. People in general have been proven to be pretty worthless at picking candidates based on an interview…
If you’re still on the fence: grab your favorite earphones, head down to a Best Buy and ask to plug them into a Zune then an iPod and see which one sounds better to you, and which interface makes you smile more. Then you’ll know which is right for you.