Hacker News new | ask | show | jobs
by anatoly 6039 days ago
I think this is a terrible way to interview. I've encountered, again and again, candidates who appear to be very intelligent, you can have a great discussion with them, terrific rapport, they understand everything, they give interesting suggestions, and when you ask them to write a simple piece of code they absolutely cannot do it. Not because they're stressed etc., you can actually see they can't write code. Sometimes the incongruity between their confident appearance and convincing talk versus their inability to write code is mind-boggling.

Now I consider any interview process incomplete and utterly unreliable if it doesn't include writing actual code, however simple and straightforward.

3 comments

He was pretty clear that he looks at their code. Go back and read the third paragraph.

The place I'm currently at interviews in a very similar matter and we're currently batting 3 for 3 on new hires over the last year or so. I've never been a fan of the "run puzzles at them until they fall over" method. Google's hiring methods gave me a big fat headache and made me run as fast as I could from there.

I recently interviewed at another company that does a variation on this by sending you a coding challenge and you send the results back within 2 hours (you text them at a certain time and then they send the challenge). I liked this approach as well.

Both have their pros and cons but each of them will show you how someone codes. The hardest part for us has been figuring out if their style/approach to problem solving meshes with the team. That's still hard to determine in an interview because it's something of a personality thing We've worked our way through those issues, though.

What sort of programming problems are you giving them? Did these candidates have experience with other projects and were they able to fluidly explain their involvement with them?

It must be pretty rare to find a person who can describe a complex project in detail but is unable to write any code during an interview.

I thought it was rare too until I started interviewing a lot.

Yes, these candidates would typically be able to explain their involvement with previous projects, to give a technical overview of what they'd done. They would totally pass my bullshit filter. I thought I had a well-tuned bullshit filter. I was wrong.

The programming problems are typically very simple, an order of magnitude simpler than an algorithm or design question that might be a part of the same interview. I don't want to give specific examples, but maybe implement one of a standard algorithms on an array or a tree (I'm not talking balanced trees, way simpler). Maybe do something that requires a nested loop and some bit-twiddling, or careful thinking about entries in a two-dimensional array, or a bit of smarts to hold some sparse data - but again, nearly trivial from the algorithmic point of view. There are many possibilities.

What you want to check is whether the candidate can think through their own code, whether they know to check for edge cases, whether they think of test cases, how they deal with off-by-1 possibilities, how they debug their own code, do they have a reasonably clear style.

What you tend to see when a candidate fails such an assignment is people who don't remember the mask to fill a byte with 1's, who can't get a nested loop right because they can't seem to keep two counters in their head at the same time, who don't have the instinct to check for an off-by-1, who can't trace through their own code visually with sample arguments, etc. etc. Sometimes they had just impressed you a lot a few minutes before with a nice technical summary of what they did in their previous project.

He mentions in the article that the interviewees DO write code in his process
No, he said that he would ask for a code sample or demo. There doesn't seem to be any programming involved during the interview.
"I ask them to do part of the job. Usually this means picking some fairly separable piece we need and asking them to write it."
I have no recollection of reading this paragraph when I first read the submission. Maybe I skipped it somehow. Anyway, this doesn't make it clear whether this is done face-to-face as part of the interview, or offline. I also doubt it's practical.
Sorry, you're right.

I don't think that paragraph and the proceeding one was there when I originally read the post. Seems it's been edited since it was submitted.

Both you and Anatoly are right: the paragraphs were added later, based on comments here and to the blog itself.

See this thread in the comments on the blog (from the author): "The comments here and on Hacker News reminded me I left out a step. I’ve added it." (http://www.aaronsw.com/weblog/hiring#c9)

I just didn't want you two thinking you were crazy or somehow accidentally skipped two paragraphs.

Thanks, much appreciated.