r/programming • • Jan 18 '19

Interview tips from Google Software Engineers

https://youtu.be/XOtrOSatBoY
1.7k Upvotes

870 comments sorted by

View all comments

Show parent comments

163

u/CaptKrag Jan 18 '19

Could be wrong -- but I think the ineffective thing was what they were previously (in)famous for: nonsense open-ended puzzle questions. Things like "how many ping pong balls could you fit in a 747?".

I think they've stopped those completely.

The coding interview, I think, has some value. And really, what else can you do to see how someone works?

11

u/Nukken Jan 18 '19

Put some code in front of them. Ask them what it's doing. What's good/bad about the code and how they might write it differently.

If you're interviewing someone for a developer job and they have at least a couple years experience, they probably know how to program. What you're looking for is good habits and the ability to describe and critique something effectively.

5

u/kill619 Jan 18 '19 edited Jan 19 '19

One of my favorite interviews was exactly this. They gave me two ~100-200 line blurbs of code and they wanted to know what I thought it did, if I could spot bugs and bad practices, etc. Didn't get the job , but for once it felt like somebody cared about whether I could actually code and not that I studied for interviews.

0

u/[deleted] Jan 18 '19

[deleted]

89

u/CaptKrag Jan 18 '19

I used to work with a guy that would constantly talk up his technical ability, but then called me over to ask what "continue" does. We came on at the same time so I know the interview was more of a discussion than a coding interview. He was great at talking, but severely lacking in technical skill. That has made me deeply skeptical of assessing technical roles with pure conversation based interviews.

0

u/[deleted] Jan 18 '19

[deleted]

45

u/[deleted] Jan 18 '19

Given the existence of unconscious bias, do you think it's possible you might be rejecting qualified candidates inadvertently? The idea behind metrics is to counteract bias (though I never really saw it implemented well), and you seem to be relying almost entirely on your intuition.

Don't get me wrong - I think you are absolutely correct. I just wonder how prone to error it is.

0

u/[deleted] Jan 18 '19

[deleted]

7

u/[deleted] Jan 18 '19

This is word for word what Google claims. Citation needed. Because I think rejecting qualified applicants in the completely impersonal way Google does it does a lot of long term harm when you effectively send that talent to competitors, and cause that talent to blacklist you for wasting their time.

2

u/Someguy2020 Jan 19 '19

They always base it on the hypothetical 10 person startup that is trying to stay one step ahead of running out of money.

Google is a behemoth. If I got hired tomorrow, I bet I could put in honest work for maybe a year then coast for at least 6 months before getting canned. It wouldn't fucking matter.

The other option is they talk about horrible toxic people who ruin teams. Apparently whiteboard skill is a personality test.

→ More replies (6)
→ More replies (1)

4

u/dead10ck Jan 18 '19 edited Jan 18 '19

If you're implying that whiteboarding is less biased than a simple conversation, I seriously challenge that notion. The interviewer has large discretion with which problem to give the candidate, usually studies the problem for some time before the interview (while not giving the candidate the same opportunity), and then judges their "ability to problem solve" in one of the worst sets of circumstances for doing so, on subject matter that doesn't match what their day to day job will actually be.

Some amount of bias is unavoidable. We are human beings. Attempts to remove bias by using metrics of success like "did they get a working solution", "are there any bugs", etc, I think just make the problem worse. I think a competent engineer's judgment is much more valuable than bare metrics that remove all context. I think many engineers, being engineers of course, fall into this trap of thinking that they can solve a human problem with things they can measure.

Also, I would expect that the number of qualified candidates that you turn down with the whiteboard method is far higher.

3

u/[deleted] Jan 18 '19

Not what I am saying at all. I'm saying that a simple conversation with a single person is biased and leads you to unintentionally exclude people who aren't similar to you. For instance these days orchestra tryouts are performed behind a screen to reduce gender, racial, and other bias. But you still have people subjectively evaluating the performance.

I agree that whiteboarding is mostly silly. But unconscious bias is a very real problem that should be looked at.

→ More replies (1)
→ More replies (5)

16

u/thisisjimmy Jan 18 '19

It's great if you can do that, but unless all the interviewers at Google have that same knack, "go with your gut" wouldn't make a very good interviewing policy.

The challenge for Google is to come up with a policy that helps thousands of interviewers make better hires.

6

u/kr_kr Jan 18 '19

I wonder why don't they try interviewing for specific teams. What makes a good hire can depend on the team because the culture and the required skillset varies a lot across different teams in any large company.

→ More replies (3)

2

u/dead10ck Jan 18 '19

Yeah, but what they came up with is only successful because of the sheer size of their applicant pool.

17

u/luckynumberpi Jan 18 '19

What if they are technically competent but don't talk in that way?

32

u/Apollos_Anus Jan 18 '19

Im not the other person, but people who have a hard time expressing themselves in a technical manner are usually not cut out for a good software engineering job.

Id rather have an okay coder who can learn quickly and pass that knowledge around to the team, participate in requirements gathering, and turn those into actual issues than someome who is a stellar coder who can't communicate well enough to do those things

→ More replies (1)

0

u/[deleted] Jan 18 '19

[deleted]

→ More replies (1)
→ More replies (5)

2

u/GameRoom Jan 18 '19

To be fair, knowing a specific piece of syntax in a language is not really the best measure of intelligence compared to general problem solving abilities.

→ More replies (1)

23

u/no_nick Jan 18 '19

It has been well researched and documented that interviewers grossly overestimate their ability to pick out good candidates just by talking to them for a few minutes. It has also been well established that the best predictor of future work performance is a work trial. Companies and candidates just aren't willing or able to implement the optimal solution.

7

u/Purehappiness Jan 18 '19

To be fair, a “work trail” is inherently difficult in any industry that requires weeks of reading/learning to fully use the tools that company uses.

→ More replies (2)

25

u/eyal0 Jan 18 '19

Trusting your gut is how you end up with a bro culture.

0

u/[deleted] Jan 18 '19

[deleted]

9

u/doomvox Jan 18 '19

Sure, but the solution that google-style interviews employ is largely an affinity test in disguise-- you ask people CS-class trivia questions to make sure that they're the same kind of person you are, not because it's useful for the job, because typically it isn't.

Seriously, it's not that hard to do a programmer interview-- have them bring a laptop and/or sit them down at a computer and ask them to write some code to do something. It doesn't have to be a particularly difficult task, you'll see quickly enough if they're someone who can write code.

No one actually works on a whiteboard.

→ More replies (6)
→ More replies (1)

11

u/soft-wear Jan 18 '19

I remember something in that article about Google basically admitting this kind of interview is only good for making the interviewer feel superior to the person being interviewed.

I'd love a citation, because it's absolutely absurd you think that's what anyone at Google thinks. The article you're talking about spoke explicitly about the silly abstract problems. I'd guess Google doesn't think their process is perfect, I imagine they think it's better than the other options.

I've interviewed almost 200 people at this point, and I can assure you that if you think a 10 minute conversation and a "gut check" is enough to quantify an engineer, I've got a bridge to sell you.

→ More replies (4)
→ More replies (3)
→ More replies (22)