Live data from Hacker News

What I've learned from 100s of interviews with candidates at top tech companies

observer.com

21–30 of 225 posts

Re: What I've learned from 100s of interviews with candidates at top tech companies

#21
post #4

Earlier quoted context omitted.

I've tried getting interviews at Google and the only time their recruters have contacted me back were from internal referrals (none of those worked out in the end as they wanted me to move to SF, and I wanted to work from Canada). How would one go about getting your foot in the door at such companies (I've had similar experiences with both Microsoft & Facebook as well) ?

Referrals are honestly a great strategy. Often employees will be open to referring you even if you don't know them well. Use social media, Facebook groups, Quora, etc. Recruiters want to be found. Have an active github. Make yourself Google-able. Have a website where you list projects. Screenshots help make things feel more "real", especially if it's a recruiter/sourcer who might not understand some of the technical…

For people not in college anymore, those are great advices.

Having been on the recruited and recruiting side for one of the big 5, I'd add an extra advice: Don't panic if you don't have any of the things mentioned above, especially when still young in College.

I didn't have an active github, nor a website, nor screenshots of my side projects. If you're genuinely passionate when you talk about it (no matter how small you think this is), the recruiter will notice this.

One of the most important advice that was given in this article for me is: "Show initiative even at the risk of failure"

-> You did X in a class project : It won't matter so much because you had to do it to pass your class. If it's a group project it will matter even less because there's no way for the recruiter to know if you did 90%/50%/5% of the job.

-> You did a small Android app or a personal command line tool for you, but you didn't publish it at all on github, and it's a private thing (a tool to help your grandma do X remotely), it's fine, but like the Amazon interviewee who started her game company: Mention this on your resume and to the recruiter!!

I've also seen people downplay achievements because they thought it looked lame compared to what is produced by Google/Amazon/FB/Microsoft ... but those products have dozens if not hundreds of engineers behind them, PM, UX teams etc. Of course your project will be lame compared to it. Still put it on your resume.

If you're going at a top CS school, having all of these doesn't matter as much, the recruiters usually know that the projects/classes you took are not trivial (via Alumni giving feedback on those), if you go to an average one, you need to show your passion in one way or another, working on a small side project you genuinely enjoy is a great way of showing this.

Finally, if you have very little time for side projects because you're busy working multiple side jobs to be able to pay your tuition and rent, mention it somehow when talking with a recruiter. You certainly don't want the recruiter to perceive you as what the authors describe "mentally lazy" when in fact the reason you're not doing that much in the side-project side is because you're working your ass off to simply be able to graduate. You can also use some of those side jobs experiences to show the recruiter you have some applied leadership/teamwork skills.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#22

Sure- you don't need a CS degree but you need to know everything taught in a CS degree regardless of it's applicability to real life software engineering. You should also buy a bunch of books and section off at least a month to study. Especially if you don't have that CS degree. Hope you don't have other obligations like a family or a demanding job. You should also spend a lot of time doing coding competitions even i…

1. No, you don't need to know everything. You should know what a binary search tree. You probably don't need to know the specifics of how to balance one. (If a company is requiring this knowledge, then they're doing whiteboard interviews poorly [or they have a very specific skillset needed]. That's not a problem with whiteboard interviews. That's a problem with that company or interviewer. It takes maybe a week for a smart developer without a CS degree to learn what they need to know for interviews.

2. Yes, I understand that interview prep might interfere with other obligations. You don't have to study. But it'll help you. I'm not sure what you expect here. Do you want companies to hire based on how smoothly you're able to bullshit about what you can claim to have done in the past?

3. Sure, you could do coding competitions if you want. That'll replace existing interview studying; you wrote your comment as though that's in addition to your previous studying.

4. Yes, true, you don't code on a whiteboard. But this, in and of itself, doesn't matter. What matters is whether whiteboards are more predictive and whether they create a better candidate experience. So, forget whether it's "real world" or not. Whiteboards have their pros and cons. The major benefit of a whiteboard is that it allows a candidate to not get caught up in details, like the exact syntax for some function (who cares?) or writing in all the details of some trivial thing just so it can compile. It allows us to focus on the big picture. It encourages more thought process and communication. On a computer, many candidates just shut down -- they try to get things out as fast as possible, and they stop thinking about what they're actually doing.

5. You do not need to work on your handwriting. I've done A LOT of interviews and this has almost never been an issue.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#23
post #2

I'll try to stay active on this thread if anyone has any more specific questions. (Context: I'm the author of Cracking the Coding Interview)

If you do not get an offer even though you did well on technical questions(verified your answers online). Should you reapply? Why? Personally I think it's the sign of cultural fit issue so they unlikely will like you just because you reapply.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#24
I do not go home and code after work. I have plenty of hobbies that all pertain to the outdoors (I call it balance). This quote stuck out:

"I once worked with a candidate at Google for a product manager role. During the interview, he started talking about how he kept chickens at his house. He was extremely passionate about building a door for the coop that opened and closed automatically to control the chickens’ movements."

I have 30 tomato plants in my backyard and was planning some automation around watering. It doesn't always have to include a raspberry pi even though I may go that route to monitor soil temp in the hot months. Filling up a 5 gallon bucket with water and compost and the right size holes can slowly drip feed the plants.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#25
post #8

Oh we all value diversity so so much. Just fucking all dress alike, it's our culture, no diversity here. Hypocrisy.

While you sort of have a point there, there's much more diversity in how people dress at top tech companies than in, say, finance or consulting. It seems you're upset that an interviewer might be biased against someone for wearing a suit. That's fair; an interviewer shouldn't be biased against a candidate for that. And most wouldn't be -- consciously. But subconscious bias can still exist. It's best to skip the suit,…

While maybe it shouldn't be a strong signal, showing up for a tech interview in a suit is kinda like showing up for a finance interview in jeans and a hoodie. It indicates that you're either unfamiliar with the norms in the industry, or deliberately violating them, and neither one is a great first impression.

The typical interview rule, IMO, is a good one, at least for men (women unfortunately are under very different pressures): dress one (and only one) notch nicer than the people that will be interviewing you.

There are some rare situations where dressing down compared to your interviewer makes sense, but a normal dev looking for a normal job is not one of them.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#26
post #8

Oh we all value diversity so so much. Just fucking all dress alike, it's our culture, no diversity here. Hypocrisy.

While you sort of have a point there, there's much more diversity in how people dress at top tech companies than in, say, finance or consulting. It seems you're upset that an interviewer might be biased against someone for wearing a suit. That's fair; an interviewer shouldn't be biased against a candidate for that. And most wouldn't be -- consciously. But subconscious bias can still exist. It's best to skip the suit,…

Unless you're interviewing at companies where everyone is expected to at least interview in a suit. I don't know what other areas are like but in Boston it seems like a 60/40 chance as to whether they want you to be dressed casual/business casual for the interview or want you in a full suit. its not just non technical people who expect the suit at time either. I've met at least a handful of engineers here who have said they straight up wont hire anyone who doesn't wear a suit to the interview.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#27
post #8

Oh we all value diversity so so much. Just fucking all dress alike, it's our culture, no diversity here. Hypocrisy.

You're being downvoted because you're phrasing is a bit harsh, but I think you have a valid point.

It's so hard as an interviewer not to have a higher score for candidates who look, act, and dress like me. I've caught myself doing it before and I hate it.

And the worst part is that most people (myself included) have a very hard time even recognizing they are doing it, which means it actually is good advice. Play on the interviewers unconscious biases. Ugh.

Re: What I've learned from 100s of interviews with candidates at top tech companies

#28

Sure- you don't need a CS degree but you need to know everything taught in a CS degree regardless of it's applicability to real life software engineering. You should also buy a bunch of books and section off at least a month to study. Especially if you don't have that CS degree. Hope you don't have other obligations like a family or a demanding job. You should also spend a lot of time doing coding competitions even i…

1. No, you don't need to know everything. You should know what a binary search tree. You probably don't need to know the specifics of how to balance one. (If a company is requiring this knowledge, then they're doing whiteboard interviews poorly [or they have a very specific skillset needed]. That's not a problem with whiteboard interviews. That's a problem with that company or interviewer. It takes maybe a week for a…

>> You should know what a binary search tree. You probably don't need to know the specifics of how to balance one.

Fine. I know this. Will this give me a job? No

>> Yes, I understand that interview prep might interfere with other obligations. You don't have to study. But it'll help you. I'm not sure what you expect here. Do you want companies to hire based on how smoothly you're able to bullshit about what you can claim to have done in the past?

No. I want to be hired for the skills I'm bringing in and not for my ability to solve toy problems on a whiteboard.

If the interviewer cannot filter out bullshitters, the interviewer is incapable of the "job of interviewing". Maybe hire better interviewers. Why is the burden on the candidate?

>> The major benefit of a whiteboard is that it allows a candidate to not get caught up in details, like the exact syntax for some function (who cares?) or writing in all the details of some trivial thing just so it can compile. It allows us to focus on the big picture. It encourages more thought process and communication. On a computer, many candidates just shut down -- they try to get things out as fast as possible, and they stop thinking about what they're actually doing.

I agree with this, only so long as the interviewers don't fret about some stupid edge case. Why is there an expectation of perfect code in 15 mins on a whiteboard? Who does that in production?

The interviewer knows about these edge cases because they've seen the problem before. But I can guarantee that the same interviewer would not be able to 'perfectly' solve some problems that I pose them without having seen them before.

Which brings me back to the question. What is the point of the coding interview (or perfection in coding interview) if the only people who can solve them are the ones who have seen the problem before?

Re: What I've learned from 100s of interviews with candidates at top tech companies

#29
post #19
post #2

I'll try to stay active on this thread if anyone has any more specific questions. (Context: I'm the author of Cracking the Coding Interview)

CTCI is a great book. Is it acceptable to ask an interviewer for a different question? For example, if you're really bad at chess algorithms and you get the N-Queens question?

This is actually a really interesting point.

(Context: In chess, a queen can move along a row, column, or diagonal to attack. The N Queens problem is to place N queens on an NxN chessboard such that no two queens can attack each other.)

No one does poorly here because they are "bad at chess algorithms." They might do poorly because they think they're bad at chess algorithms. But this is not a "chess algorithm." It's an algorithm, with a chess skin.

But, sure, if you're bad at chess algorithms, I'll give you this problem: Given an N by N boolean matrix (all falses), set N cells to true such that no two rows, columns, or diagonals have two trues.

Same question, but with a boolean skin. Now will you be able to tackle it?

So, advice: Don't assume you're bad at __ type of algorithm question. For the most part, this isn't true. At most, there's a tiny bit of knowledge to tackle it (so you're not bad at it; you just don't know something). Nearly every time I hear someone say they're bad at some type of question, it's actually just an insecurity. They aren't even missing any knowledge.

The only partial exception here is recursion/dynamic programming, which does have its own little approach.

At a higher level: Can you ask for a new question if you're bad at that type?

You could, but it's risky. If I ask you a question that really involves pointers and you don't understand them, then okay. But realize that this might be a deal breaker for me. I might need that knowledge, or I might be concerned about the tendency to give up.

You're probably better off just voicing something like: "To be honest, I haven't worked much with pointers. I'm happy to give it a shot though, unless you want to move onto a different question."

Re: What I've learned from 100s of interviews with candidates at top tech companies

#30
post #7

Has any link ever been determined between interview performance and on-the-job performance? I've made the clichéd mistake mentioned in the article of wearing a suit to an interview where it wasn't appropriate, and felt the air being sucked out of the room. It strikes me as silly, but what do I know. Do these hiring practices result in a good cohort of employees?

Google kinda-sorta did a study there, but the "study" was fundamentally flawed. They didn't look at people who didn't get hired (duh). So the most they could say is that once people passed the (very high, risk averse) bar, how much better they did beyond that didn't have a strong enough correlation with job performance to come out in a small-ish number of data points. To me, it's pretty clear that it basically works.…

Virtually every top tech company has been formed with these practices

Just to be clear, does "top tech company" mean simply "large tech company?

Post reply on HN