(no title)
gervase | 6 years ago
Once we'd actually started using it, though, we found it filtered between 20-30% of our applicant pool, even when we let them use literally any language they desired, presumably their strongest.
However, it usually only filtered fresh grads (CS students from top-10 schools). Those with previous work experience almost never had a problem.
cs02rm0|6 years ago
I've had the same, I was a contractor and not usually involved in the hiring process but I'd been asked for a question they could take to a candidate.
One of the team at the time was a young Maths grad, super bright but prone to being over confident. So I wrote a clear FizzBuzz question, passed him the pen and paper and asked him if he was sure when he was done. There was some minor issue, a boundary issue one think and he was livid with himself. So they took it to the candidate and apparently it was a bit of a disaster.
Personally, the first time I came across it was in an interview and I quite enjoyed it - simple enough to not be threatening but I guess sufficiently able to show I could write code as they offered me the role. They asked some extra questions too with some extensions and about how you could unit test it.
Beats having to implement red-black trees by remembering the crib sheet you read the day before.
crispyambulance|6 years ago
I suspect that candidates who are otherwise fine (and not misrepresenting themselves on their CV's), fail fizzbuzz because they overthink the problem, stumble on the not-so-frequently-used modulo operator and then paint themselves into a corner where they can't just loosen up, take a breath and figure out the solution.
blunte|6 years ago
You should be able to have a 10 minute conversation with someone and know if they can solve fizzbuzz (without even posing the problem).
jerf|6 years ago
gwbas1c|6 years ago
It's so well known that everyone uses it to study for their interview. You'll end up hiring someone who just memorized the solution.
Instead, come up with your own unique programming challenge that the candidate hasn't seen before. It should be about as easy / hard as Fizzbuzz.
Related: I once interviewed a candidate who came across as knowing my questions ahead of time, and delivering a well-reheased answer. I made up a question on the spot, and got a "this wasn't supposed to be on the test" tone of voice in the answer. I rejected the candidate.
Technical interviews aren't things that the candidate should memorize and rehearse. That's why I'd never ask Fizzbuzz.
theamk|6 years ago
If one is concerned about people memorizing answer, it is pretty simple to change the question a bit to make it non-recognizeable,
crimsonalucard|6 years ago
Think about it, it takes way more work, way more intelligence to get into and graduate from a top 10 school then it does to learn how to pass a fizzbuzz test.
I can 100% tell you that ALL CS grads from top 10 schools can pass fizz buzz given a day to do it. That being said I can also say literally most of your coworkers who are administering the fizz buzz test will not be able to ever attend a top 10 school given a lifetime to prepare.
It is incredulous to me that people can literally dismiss an MIT candidate because he didn't pass a fizzbuzz test. Do you not realize that it is 100x easier to learn programming then it is to get into MIT?
People need to get it through their heads. Programming is actually really, really easy. That's why there's so many people who can learn how to do it without going to college. But instead I see most people thinking that they are so intelligent they didn't need to go to college because they can just learn programming.... That may be partially true, but most of what I see is actually just people learning programming because they COULDN'T get into university.
But it still begs the question... what is making an MIT student fail a fizzbuzz test? It's like failing to recite a paragraph out loud with zero stuttering to an audience who is judging your future career. How could one possibly be so stupid and not stutter? If you stutter it must mean you can't speak english, just like how if you fail a fizzbuzz test is must mean you can't program.
To be honest I don't know why so many programmers fail. But I'm honestly pretty sure fizzbuzz is so dreadfully easy that there is some other factor that is influencing this high failure rate.
gwbas1c|6 years ago
Because many people are not capable of programming.
More importantly, the school you go to has nothing to do with your capability of a programmer. I worked with quite a few people in my CS department who couldn't program their way out of a paper bag. Most were still very bright people who I assume figured out successful careers.
I suspect a lot of the recent CS grads who can't do fizzbuzz end up following careers that don't require programming.
It's also important to understand that Computer Science is not Software Engineering. Computer Science is fundamentally a mathematical field. Don't conflate the two.
AnimalMuppet|6 years ago
> Programming is actually really, really easy.
Perhaps. Software engineering is hard, though, and it is not the same as CS. We turn out these CS degrees, and then we expect that they can do software engineering.
That said, fizz buzz may not be the best way to tell if people can do software engineering, either...
sn9|6 years ago
I find it hard to believe that anyone who has spent more than a week programming couldn't solve FizzBuzz. Even if they somehow weren't familiar with the modulo operator, you could just explain how it worked.
FizzBuzz is a way of easily filtering con artists.