Live data from Hacker News

Ask HN: What should an ideal developer interview process look like?

news.ycombinator.com

61–70 of 289 posts

Re: Ask HN: What should an ideal developer interview process look like?

#61
A process that I've seen have some success (years ago):

Start with a very, very simple initial phone screen or take-home test, intended to basically verify whether the candidate can write any code, at all. Max 1 hour, weeds out more people than you'd think.

For the first in-house interview, ask the candidate to code up a problem that is representative of your company's work and requires coding a significant amount, ideally 100+ LOC. The problem should not require any major leaps of intuition, dynamic programming, or recursion – all of these are areas where people do way worse when they're nervous, and this is an engineering interview not special forces training. Let them bring their own laptop, give them the prompt, and have them code, although they can ask the interviewer questions at any time. When they're done, go over the question in detail with the expectation that their code compiles and runs, discuss extensions, etc. Max 1 hour. This interview should answer the binary question "can this person promptly produce meaningful working code and discuss it intelligently?"

For the next in-house interview, do a deep dive into a technical project that the candidate worked on that they're proud of. They describe it and you ask questions. Keep asking questions, especially getting at the "why" behind different decisions, for as long as you can – you're trying to get to the borders of their knowledge and intelligence. Look for mastery of the area, thoughtful decisions, and communication skills. Max 1 hour. This interview should answer the question "is this person a thoughtful, effective, smart contributor on a project?" A good answer should make you think "damn, that's really smart, I wonder if I would have thought of that?" at least once.

End with a final behavioral interview, intended to sell the candidate. This is also a last gut check on whether they're insane, dangerous to themselves or others, extremely arrogant, etc. Also use this time to ask the candidate questions about what really matters to them to improve your closing rate. 30 minutes, and can be combined with the step above.

I've liked this system, YMMV. It's a relatively efficient process, doesn't have weird tricks, and based upon a longterm analysis of candidate outcomes was quite effective (this included an analysis of candidates whom we rejected and who rejected us).

Re: Ask HN: What should an ideal developer interview process look like?

#62
post #61

A process that I've seen have some success (years ago): Start with a very, very simple initial phone screen or take-home test, intended to basically verify whether the candidate can write any code, at all. Max 1 hour, weeds out more people than you'd think. For the first in-house interview, ask the candidate to code up a problem that is representative of your company's work and requires coding a significant amount, i…

What kinda stuff does your company make, anyway?

Re: Ask HN: What should an ideal developer interview process look like?

#63
Ideal process for me is being placed in front of other engineers and discussing what I did in the past and how I understand their challenges. Meeting the team I’m working with is a plus to see if we are a match. I don’t do tests and stop the process before it gets to that. I also consider talking to HR a waste of time. The company should sell itself to me.

Re: Ask HN: What should an ideal developer interview process look like?

#64
post #10

Most interviews have asymmetric costs. There’s a potential payoff for both parties, but costs are higher for the interviewee (time off, prep, work done). I recommend trying to make the cost/benefit more symmetric. One way of doing this, is offering compensation for real work. Essentially, hire interviewees to do a small amount of useful (a day?) and evaluate them based on that. This isn’t going to work for all interv…

Not going to happen - I think the supply of software developers has started to outweigh the demand, so there's no way that companies are going to offer compensation to interviewees. If anything, the difficulty bar is just going to continue to go up. If there were a shortage there wouldn't be so many of these silly hoops to jump through. It's not really worth it to interview nowadays. Practicing leetcode for months, f…

Your company might be inadvertently attracting poor candidates. I imagine a lot of good candidates (like myself) would just pass on a 4 hours of homework for a random programming job. And good candidates almost certainly won’t spend 3 days on it.

Remember Joel Splosky’s classic observation: all the good programmers already have good jobs. The ones on the job market who apply to jobs are usually the bad ones.

Re: Ask HN: What should an ideal developer interview process look like?

#65

No whiteboard code, no algorithms questions. If you want them to code, let them do it on their own time in a comfortable environment. The industry needs to stop the bullshit leetcode meme that millenials are propagating.

I’m a little confused — can you explain how this is a generation’s fault? It certainly seems that millennials are subjugated to this type of process, and it’s possible that millennials are the ones giving these types of interviews more often than not, but as far as I can tell these interviews propagated because large, well-regarded, highly successful companies (Google etc.) started performing them and then smaller co…

Well said.

Re: Ask HN: What should an ideal developer interview process look like?

#66
After many years of winging it, I developed what I think is a pretty robust interview process, inspired by Pivotal's RPI. If the candidate makes it through a quick 15-30m remote screening, I call them in to the office for pairing session.

* The session takes place at a pairing station - two keyboards/mice, two monitors (mirrored).

* We work through a fake problem that is relevant to real-world problems that we actually work on. No brain teasers, no complex algorithms. Basic software engineering using some of the tools the company uses.

* The problem is exactly the same for every candidate. This is essential; you need to be able to compare apples to apples. You can't use "real work" because real work is different every week.

* The stuff I look for is pretty mundane - can they name things sensibly? Do I have to push them or do they naturally drive out behavior with tests?

It takes 1-2 hours. It's partly a way of evaluating candidates, and partly a way of communicating "this is how we develop software at this organization". Some folks really respond well to it. Some don't. That's ok.

At the end of the pairing session. I know 100% if I want to extend an offer. I've gotten some really great hires out of this. My bad hires ended up bad for reasons unrelated to technical ability (like, their life was a trainwreck).

Re: Ask HN: What should an ideal developer interview process look like?

#67
post #45

I've spent alot of time thinking about this, and I've concluded with this: Hire local people minimum wage to learn and teach each other coding structured around your company's codebase. Once they get to know the basics, have them work on your company's open source projects. Identify the ones who actively help others and convert them as a full time software engineer. It takes an average person about 1 year to learn en…

For reference, this only works in places where the minimum wage is also a reasonable amount.

In the UK, the minimum wage is laughably poor and in Switzerland it's significantly below the amount needed to live.

A better threshold would be to look at the cost of living _in the area_ and pay a reasonable starting wage that actually lets people live there comfortably.

Re: Ask HN: What should an ideal developer interview process look like?

#68
Our Android dev task: write a login/signup dialog. Shows that you have layout skills, networking skills, general Java skills, etc. Candidates either bomb it or nail it, no mis-hires yet after about two years. You get a real good sense of experience level, confidence, and "I like clean code" attitude.

Re: Ask HN: What should an ideal developer interview process look like?

#69

Earlier quoted context omitted.

So instead of giving you a 6 month trial run followed by employment they should give you a permanently temporary gig? Because a job where they hire and fire freely sounds a lot like how companies treat contractors.

That's already the way almost all jobs are. Being "hired" isn't a protection for your job. It just means you're getting automatic tax withholding. I was a formal full-time employee at NCC Group until just a month ago, when they fired me with no warning, no explanation, and no severance.

In US perhaps, elsewhere a job signifies significantly greater income stability.

Re: Ask HN: What should an ideal developer interview process look like?

#70
I have a slightly related question. Imagine that you were being head hunted by a company and that they've decided that they definitely want to hire you, even before the interview. Let's say they can afford to pay you whatever you consider a "reasonable" salary (not high, but not low either).

How would you like the interview to go so that you can decide if you want to work there?

Interestingly, I would like to see a variety of people that I might potentially work with. I'd like to pair program with them. I mean, really pair program -- with each pair writing some code. I'd like to write some code and see how they react to it. I'd like to see them write some code to see how they approach it. I'd like to work though some simple conflicts to see how they react.

I'd like to see some code (and I'm willing to sign an NDA). I'd like to work through it with some of the people who work on it and ask questions. I'd like to see how firmly they hold on to the existing code and how open they are to new ideas.

I'd like to talk to a few people in management. I'd like to see a few plans (again under NDA). I'd like to see what kinds of statistics they collect and how they think those statistics help them.

Finally, I'd like to talk to management about how they do reviews and see some statistics about attrition rate, typical pay raises per year, how many stocks actually vest before people leave (yeah, yeah, NDA).

That would be awesome.

Post reply on HN