About 18 months ago my non-technical Manager of Applications Development asked me to do the technical interviews for a .NET web developer position that needed to be filled. Because I don't believe in white board interviewing (that's another rant), but I do need to see if the prospective dev can actually code, for the initial interview I prepare a couple of coding problems on paper and ask that they solve them using any language or pseudo code they want. I tell them that after they're done we'll discuss their thought process. While they work the other interviewing dev and I silently do our own stuff.

About half way through the first round of technical interviews the aforementioned manager insisted we interview a dev from his previous company. This guy was top notch. Excellent. Will fit right in.

The manager's applicant comes in to interview and after some initial questions about his resume and experience I give him the first programming problem: a straightforward fizzbuzz (http://wiki.c2.com/?FizzBuzzTest). He looked as if the gamesters of Triskelion had dropped him into the arena. He demurs. Comments on the unexpectedness of the request. Explains that he has a little book he usually refers to to help him with such problems (can't make this stuff up). I again offer that he could use any language or pseudo code. We just want to see how he thinks. He decides he will do the fizzbuzz problem in SQL. My co-interviewer and I are surprised at this choice, but recover quickly and tell him to go ahead. Twenty minutes later he hands me a blank piece of paper. Of the 18 or so candidates we interview, he is the only one who cannot write a single line of code or pseudo code.

I receive an email from this applicant a couple of weeks after his interview. He has given the fizzbuzz problem some more thought. He writes that it occurs to him that the code could be placed into a function. That is the culmination of his cogitation over two weeks. We shake our heads and shortly thereafter attend the scheduled meeting to discuss the applicants.

At the meeting the manager asks about his former co-worker. I inartfully, though accurately, tell him that his candidate does not know how to code. He calls me irrational. After the requisite shocked silence of five people​ not knowing how to respond to this outburst we all sing Kumbaya and elect to hire someone else.

Interviews are fraught for both sides of the table. I use Fizzbuzz because if the applicant knows how to code it's an early win in the process and we all need that. And if the applicant can't solve it, cut bait and go home.

Fizzbuzz. Best. Interview. Question. Ever.

  • 7
    Just did an interview with this question. Interviewer thought I messed up by not checking a certain condition, but I just made it less redundant. His boss (jokingly) made fun of him. Got the job. Possibly due to my stellar personality also 😉
  • 1
    How the hell do you fail FizzBuzz? I couldve done that easilly by my second or third Java class in college (my induction to coding that wasn't markup like HTML)
  • 2
    It truly amazes me how many candidates cannot do fizzbuzz. My company is currently hiring at the junior level and fizzbuzz is usually the first question we ask in a technical screen unless we think they're a little more competent. It's truly amazing the number of people that, even with general guidance on how to solve it, still could not do it. I used to think those blogs talking about how many candidates failed fizzbuzz was overexaggerating, but it's really not.
  • 7
    I'm not familiar with fizzbuzz, so I go ahead and click the provided link. Decided to do the programming assignment and was successful. I think the level of self validation I've felt is out of proportion to the task. But I am very very satisfied. :D
  • 0
    Actually it's a problem in projecteuler.
  • 4
    Didn't know about fizzbuzz. Looked it up. I think I'd almost feel offended if I were asked to implement it. That's "hello world" level stuff.
    If you can't do something that simple, you should definitely not call yourself a developer.
Add Comment