7 ms·
On the flip side, I've been interviewing people with supposedly 15+ years of experience using simple whiteboard questions for a while and I've seen too many peo
by Throysksk282 6y ago
On the flip side, I've been interviewing people with supposedly 15+ years of experience using simple whiteboard questions for a while and I've seen too many people fail miserably at writing basic for loops (a very slightly more involved problem than fizzbuzz, really) for me to simply trust that spending time selling you on the company is useful. Lying on a resume is easy, and even truthful resumes can be misleading. Screening candidates with a half hour of simple coding gets rid of a lot of people who seem to be making money without actually knowing how to write code, which is a problem when you're hiring people to write code and help others write code.
- cmrdporcupine 6y agoI'd fail fizzbuzz on your whiteboard. And I'd be proud of it. Working in this industry for 25 years and almost 10 at Google has not trained me to write fizzbuzz.
- monocasa 6y agoWhich part of fizzbuzz would be an issue for you?
- cmrdporcupine 6y agoWriting code on a whiteboard like it's a test or a competition, without being able to sit down in my editor of choice and calmly think it through and trial and error. Programming is not sports. I'm not a coding athlete. Maybe it is for some people, but not for me. That's not what the job I've held for all this time has ever been about. Plus you get to a certain age and experience and the thought of "proving myself" to some 25 year old is just... Really?
- Throysksk282 6y agoIf you have to sit down and deeply think about a question like fizzbuzz then as an interviewer I'd be a bit concerned - this is a quick check to make sure you're basically competent, not architecture of a critical piece of infrastructure. If you just don't like hand writing and prefer typing, then that's cool with me and you can just do that during the interview (the content of interview is important, not the medium you write with). If you're mentoring a 25 year old you'll have to prove yourself to them every day.
- jhayward 6y ago> If you're mentoring a 25 year old you'll have to prove yourself to them every day. No, you won't. If they don't want to listen to you, they don't have to. As a mentor it's my job to listen to them and guide them with experience as my context, not joust with them over irrelevant, stupid, gotcha contests. And I'm happy to help them realize that just by not engaging in it.
- Throysksk282 6y agoI find it kind of shocking that you are a senior engineer at Google and are unable to write fizzbuzz. Every senior engineer I've worked with including myself is able to write a for loop with a few lines of code in the body, because doing basic coding like this is important when training new grads and doing code review (not to mention when writing your own code).
- dominotw 6y agoI thought google does leetcode/whiteboard questions . How did you get in without being able to write fizzbuzz. Not sure if you are trolling.
- TulliusCicero 6y agoI work at Google, and don't know anyone who'd struggle with Fizzbuzz. That's an extraordinarily simple coding problem, and the usual ones you have to pass to get into Google are much harder.
- cmrdporcupine 6y agoI never said I'd struggle with fizzbuzz. I said I'd struggle with fizzbuzz on _his_ whiteboard. Because it would give me anxiety to do it there in front of him, and it's not how I code or think. And this is a person who created a throwaway account on HN just to get into an argument, so I can imagine how the experience would be. Getting the job @ Google was worth that stress. The original comment I made was to the effect of: before you dump a coding test on me, you better make sure it's worth the stress by convincing me why.
- sn9 6y agoYou'd struggle to find anyone in a freshman CS class a few weeks in who'd fail Fizzbuzz, excepting those who weren't going to last more than a year or two before switching majors and never coding again.
- BeetleB 6y agoI have to wonder if you know what fizzbuzz is. It's not your typical Leetcode question where you need to know algorithms, etc. It's a lot easier than perhaps the easiest Leetcode problem. Fizzbuzz wasn't designed to test people's prowess in coding. It was designed as "This is one of the simplest possible programs one can write. Can this candidate do it?" While many people may go through their whole career not dealing with dynamic programming or most data structures, almost all programming is fairly similar to FizzBuzz. As an analogy, it's like giving someone who claims to be a circuit designer a basic circuit where he's failing at Ohm's Laws or Kirchoff's Theorems. Or an electromagnetics person who cannot integrate a basic polynomial. If you have test anxiety that's one thing, but if your reason is "I need time to think this through", it's a huge red flag. Kind of like the person saying he needs to consult a table of integrals to integrate x^2. I'm against intense Facebook/Google style whiteboarding. Fizzbuzz is at the extreme other end of intensity.
- cmrdporcupine 6y agoFair enough, I was being inflammatory in my response. I would not fail fizzbuzz. But I'd probably want to, just to piss off this person (the throwaway account who came on here to argue...)
- cellularmitosis 6y ago> It was designed as "This is one of the simplest possible programs one can write. Weeellll, I mean it doesn't totally succeed in meeting that design criteria. Fizzbuzz weeds out three kinds of candidates: - candidates who are (currently) unfit for any programming job - candidates who freeze up during the interview - candidates who have never used the mod operator I fault fizzbuzz a bit, because there are candidates in that last category who have several years of experience successfully duct-taping together libraries to meet product requirements, yet panic because they've never had to find the remainder of division in their language of choice. They might be fine for the rec you have open. A fizzbuzz with fewer false-positive rejections might be something like "implement multiplication without using the multiplication operator". edit: Oooh! "How many ways can you implement multiplication" would be a much more interesting warm-up/weed-out question! Allows the quality candidates lots of room to shine.
- 0xffff2 6y agoI'm not sure I even believe you. Maybe you would refuse to do it because you don't want to, but you've spent 25 years as a successful developer and you can't write out fizzbuzz on a whiteboard? I haven't been a professional developer for anywhere near 25 years, but I could write fizzbuzz while blindfolded, on a wet bar napkin after a couple of drinks, in any one of at least half a dozen languages. If someone asked you to write down the answer to 3+5 would you struggle with that as well? To me, fizzbuzz is barely a set up in terms of complexity.
- cmrdporcupine 6y agoYou shouldn't believe me, I was being flamey, and yes, I would probably refuse to because I wouldn't want to without being properly told why it was worth my time, which was the point of my original comment.
- nunez 6y agoLike, on purpose? If you know what fizzbuzz is, then you can probably whiteboard it. It’s literally: ``` case $input when $input % 3 == 0: “Fizz” when $input % 5 == 0: “Buzz” when ($input % 3 == 0 && $input % 5 == 0): “Fizzbuzz” end ```
- sobani 6y agoYou failed to return the numbers that are neither divisible by 3 nor by 5. Also I'm pretty sure your code will never return "Fizzbuzz", since 15 would already be matched by %3. It's quite ironic that you had all the time in the world to check your code and the ability to silently walk away when the pressure would've been too high and yet you included 2 obvious bugs in your 'proof' of how easy this is. Thank you for your time, but I'm afraid you would not be a good match for this position at this moment.
- nunez 6y agoFair enough!
- joezydeco 6y agoI've seen the same thing. I hire a lot of embedded engineers and when I need someone that has solid experience with drivers and bit-level work, I'll ask a simple question to start off. In the past I've never disclosed the question, but why the hell not now. I didn't write it anyway: Given a 32-bit unsigned integer, return true if the binary representation has two consecutive ones in it. And...that's it. And people that have passed the recruiter gates and made it through the phone screen just completely lose it here. Let's be clear - I really don't care how you do it. There are 3-4 ways right off the bat ranging from a state machine to a shifting mask all the way down to a single inline math statement. If you're as comfortable as you say, it will be a no brainer. As a check I took an intern and told him to meet me in a conference room to get the same stress level out of him. I posed the problem and got an answer in five seconds.
- heavenlyblue 6y agoWhat is a single inline math statement?
- addaon 6y ago!!(n & (n >> 1)), I assume.
- joezydeco 6y agoBonus points for the boolean sanitation! Now let me tell you about the candidate that wanted to turn the integer into a character string and then search the string for “11”...
- heavenlyblue 6y agoThe solution gives you an answer if there is “at least two”, not two exactly? However I understand that may be part of the discussion afterwards.
- joezydeco 6y ago