News for hackers. Stuff that matters.
Re:Red flags I saw while doing technical interviews by Throysksk282 on Tuesday September 15, 2020 @12:50PM (#24483428)
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.
Re:Red flags I saw while doing technical interviews by joezydeco on Tuesday September 15, 2020 @03:48PM (#24485921)
I'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.

Re:Red flags I saw while doing technical interviews by heavenlyblue on Tuesday September 15, 2020 @06:30PM (#24487490)
What is a single inline math statement?
Re:Red flags I saw while doing technical interviews by addaon on Tuesday September 15, 2020 @07:33PM (#24487925)
!!(n & (n >> 1)), I assume.
Re:Red flags I saw while doing technical interviews by joezydeco on Tuesday September 15, 2020 @09:00PM (#24488502)
Bonus 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”...

Re:Red flags I saw while doing technical interviews by Jach on Wednesday September 16, 2020 @05:28AM (#24490984)
Heh, I'd accept it. In screening I used to ask them to implement an isOdd() function for an unsigned int, and after they did it (never had someone fail) see if they could come up with alternate ways. Mainly to see if they're aware of bitwise operators, though it's nice to see they can write loops too. It wasn't a fatal flaw if they weren't (it would be if they couldn't solve it in any way), but knowing is better than not knowing. Anyway one person who didn't know nevertheless amused me by doing a conversion to string and checking the last digit.

After years of asking the same questions to intern candidates and to senior+ candidates, interns did consistently better. There are a lot of "experienced" but not very skilled people out there. They exist already inside ompanies too (Principle level checking in hundreds of lines of code with many classes and tests, purportedly to add logging support to something, but the code was ultimately a NOP as it did nothing) but even if it's impossible to put out the tire fire it's best not to contribute to it.

Re:Red flags I saw while doing technical interviews by heavenlyblue on Wednesday September 16, 2020 @05:27AM (#24490978)
The 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.

Re:Red flags I saw while doing technical interviews by joezydeco on Thursday September 17, 2020 @11:56AM (#24506218)
Like I mentioned above, most of the time it never got that far. Candidates were messing with string handling and converting base-10 integers into binary (not understanding that the machine already had the integer represented in binary)
Re:Red flags I saw while doing technical interviews by cmrdporcupine on Tuesday September 15, 2020 @12:56PM (#24483510)
I'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.
Re:Red flags I saw while doing technical interviews by BeetleB on Tuesday September 15, 2020 @04:01PM (#24486063)
I 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.

Re:Red flags I saw while doing technical interviews by cellularmitosis on Tuesday September 15, 2020 @10:54PM (#24489113)
> 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.

Re:Red flags I saw while doing technical interviews by BeetleB on Wednesday September 16, 2020 @12:33AM (#24489557)
I'm sure there exist jobs where its OK not to know that a mod operator exists, but none of mine were of those kind. I'm pretty sure my experience matches the majority by a pretty large margin.

> A fizzbuzz with fewer false-positive rejections might be something like "implement multiplication without using the multiplication operator".

While possibly a fair question, this is a whole order of magnitude more difficult than FizzBuzz. It requires more domain knowledge as well (lots of people have forgotten how to multiply).

> Allows the quality candidates lots of room to shine.

But this is precisely the opposite of FizzBuzz. The goal is to weed out horrible candidates, not identify great ones.

Re:Red flags I saw while doing technical interviews by cellularmitosis on Wednesday September 16, 2020 @05:00AM (#24490845)
> this is a whole order of magnitude more difficult than FizzBuzz

Sorry, in my mind the input was restricted to positive integers. My fault for not making that clear.

    def mul(a, b):
        accum = 0
        while b > 0:
            accum = accum + a
            b -= 1
        return accum
You are correct that accounting for floating point would make this more complicated than fizzbuzz.

> But this is precisely the opposite of FizzBuzz. The goal is to weed out horrible candidates, not identify great ones.

This accomplishes both at once. That's a super set, not an opposite.

Re:Red flags I saw while doing technical interviews by joks on Wednesday September 16, 2020 @12:11PM (#24494025)
It's even easier to do it with the inclusion of non-integers, though - `prod = a / (1 / b)`

Granted, that may be counter to the spirit of the question, but it's a valid answer lol

Re:Red flags I saw while doing technical interviews by danmg on Wednesday September 16, 2020 @10:57AM (#24493288)
When I'm interviewing people I'll ask a fizzbuzz level question. Not fizzbuzz itself though. I'll pick something that just has them doing some basic operations with strings and arrays like reversing the words in a string.

I'll give an easy question, but I'll have them do it ssh'd on to a remote machine. I'm more interested if they know how the environment works and how much coaching they need to navigate around.

Re:Red flags I saw while doing technical interviews by jpindar on Wednesday September 16, 2020 @01:36AM (#24489855)
You don't need to use the mod operator to do fizzbuzz.
Re:Red flags I saw while doing technical interviews by cmrdporcupine on Tuesday September 15, 2020 @04:08PM (#24486149)
Fair 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...)

Re:Red flags I saw while doing technical interviews by 0xffff2 on Tuesday September 15, 2020 @04:30PM (#24486352)
I'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.

Re:Red flags I saw while doing technical interviews by cmrdporcupine on Tuesday September 15, 2020 @04:39PM (#24486440)
You 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.
Re:Red flags I saw while doing technical interviews by Throysksk282 on Tuesday September 15, 2020 @01:07PM (#24483663)
I 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).

Re:Red flags I saw while doing technical interviews by TulliusCicero on Tuesday September 15, 2020 @02:37PM (#24484974)
I 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.

Re:Red flags I saw while doing technical interviews by cmrdporcupine on Tuesday September 15, 2020 @03:57PM (#24486021)
I 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.

Re:Red flags I saw while doing technical interviews by sn9 on Tuesday September 15, 2020 @07:24PM (#24487875)
You'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.
Re:Red flags I saw while doing technical interviews by monocasa on Tuesday September 15, 2020 @01:05PM (#24483632)
Which part of fizzbuzz would be an issue for you?
Re:Red flags I saw while doing technical interviews by cmrdporcupine on Tuesday September 15, 2020 @01:09PM (#24483683)
Writing 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?

Re:Red flags I saw while doing technical interviews by Throysksk282 on Tuesday September 15, 2020 @01:16PM (#24483813)
If 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.

Re:Red flags I saw while doing technical interviews by jhayward on Tuesday September 15, 2020 @01:30PM (#24484027)
> 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.

Re:Red flags I saw while doing technical interviews by dominotw on Tuesday September 15, 2020 @01:11PM (#24483711)
I thought google does leetcode/whiteboard questions . How did you get in without being able to write fizzbuzz.

Not sure if you are trolling.

Re:Red flags I saw while doing technical interviews by nunez on Tuesday September 15, 2020 @08:40PM (#24488388)
Like, 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 ```

Re:Red flags I saw while doing technical interviews by sobani on Wednesday September 16, 2020 @07:39AM (#24491620)
You 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.

Re:Red flags I saw while doing technical interviews by nunez on Saturday September 19, 2020 @03:14AM (#24525775)
Fair enough!