Idiotic Interview Questions

Interviews questions always seem to be a topic that comes up frequently at a developer peer group I attend and while at work.  In a recent .NET Rocks! podcast, they touched on this topic and brought up the Fizz Buzz Test.  We have all been in interviews where we are given some ridiculous programming question, that is “intended” to show the interviewer your problem solving skills.  Or maybe (I think likely) they ask these questions because they are the stock questions, and everyone asks them.  It’s like asking someone for their strengths and weaknesses.  Do you really think people aren’t telling you what you want to hear.  These stock questions have stock answers.

Back to the ridiculous programming questions.   If someone asked me today in an interview some asinine array sorting question, or better yet a problem that you rarely encounter in the real world, I think my answer would be: Google.

Most of the problems that I encounter in the real world have been already dealt with.  I do not need to come up with my own solution.  I’m not arrogant enough to think that my solution is the best.  Using available resources (ie, Google) to to find the best solution to a problem seems like a better answer.  After all, wasn’t the point of the question to see your problem solving skills?  Why not ask questions related to Patterns, Practices, and Principles?  If the interviewee can discuss SOLID principles, doesn’t the Fizz Buzz Test seem idiotic to ask?

  • I would imagine that displaying the willingness to at least try to roll up one’s sleeves and attempt a thing by oneself instead of depending on the easy outs would generally be a selling point all by itself. Accepting status quo rarely leads to any innovation. Certainly a Google might solve some problems quicker, as would a high school cheat sheet, but to show you can do it on your own, without aid, would suggest you are concerned with more than merely the bottom line.

    • dcomartin

      I agree with your status quo statement. These questions are generally trivial or not encountered in the real world. We do not need to reinvent the wheel to a generally common problem. Sometimes there just isn’t a need to innovate. I believe asking higher level questions to validate someones overall understanding of programming will imply someone knows how to solve a fizzbuzz question.