4 ms·
As a side note, FizzBuzz is mostly a meme, right? I don't get how it's a real interview question considering that it requires hardly any thinking at all. You'r
by jstx1 5y ago
As a side note, FizzBuzz is mostly a meme, right?
I don't get how it's a real interview question considering that it requires hardly any thinking at all. You're almost directly writing the description of the problem in code instead of having to think about algorithms, complexity, data structures or edge cases, like in most other problems. Is a test of if-statements and remainders that useful of a filter/signal?
I know that some companies give it because I've had to do it myself but I still find it bizzare to give such an easy test. Maybe it's fine as warm-up in a series of questions and it's used to make the candidate comfortable?
- Jtsummers 5y agoFizzBuzz itself certainly is, by this point, and would be totally unsuitable to hand out (as too many people know it). However, FizzBuzz level difficulty programs catch a surprising number of applicants who aren't competent programmers. Another program I've seen candidates struggle with even though they, ostensibly, know C: swap. A surprisingly large number can't get it right, even though it was, IIRC, in programming assignment 2 or 3 (week 3 or 4) in an undergrad course I took 20 years ago that taught (quickly, over 6 or 7 weeks) C in order to get to the meat of the course (baby compilers). It should be a trivial program for any C programmer, but so many applicants are just padding resumes.
- toast0 5y ago> I don't get how it's a real interview question considering that it requires hardly any thinking at all. It's not supposed to be the only question you give, but it (or similar) works well to exclude people who can't program at all; which is sometimes a scary portion of the candidates. Most of the algorithm, complexity, and data structures questions end up testing if you studied the right things, rather than if you'd be good at the basics of the job --- which is usually translating a description of something someone wants into if-statements, and maybe a bit of math here and there, but not a whole lot, and maybe some nested loops. Honestly, my interview question is setup to see if the person can take a problem, describe an output format/file that works with the problem, and then see if they can write something that looks like code that outputs what they said they were going to. Enough candidates have trouble with a simple loop (or sometimes a two deep loop) or keeping to the format they specified that I don't need a hard problem to be very selective.
- muzani 5y agoIt's not mindless. There's a catch where with 3/5/15, where if you can't think about the condition at 15, it won't work. There are some other tests like reversing a linked list, which may be more challenging, but it's a worse indicator of fundamental coding ability. I taught a bootcamp and we'd try to get them to FizzBuzz by the first or second weekend. So it's not a terrible test. Also you have to look back at the history of it. There used to be a lot of degrees that taught nothing but theory, and would output someone who couldn't code at all. I actually did a FizzBuzz level test for my first interview (10 years ago), and the interviewer was impressed that I could do it so fast. These days, it's the opposite. Most graduates could probably code a singleton or something that finds prime numbers, but don't know how to normalize tables. These tests are there to weed out the people who specialize in scoring interviews, but still don't have the basic ability to do the job. Much of the time you don't even want a great programmer, just some code monkey who can retrieve something from an API, combine it with some inputs, and save the results to another API.