Live data from Hacker News

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

news.ycombinator.com

271–280 of 289 posts

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

#271
post #258

Earlier quoted context omitted.

If life's too short to continue with the final stages of an interview process, I don't know what to say. The whole idea, if you do it right, at least, is that you only give this test to developers that you already know you want. That means that for those developers, this is not one of dozens of tests they need to do, it's the one test; or one of a few, if they're that lucky. And if they're not interested in putting a…

Depends for many people there is not a shortage of jobs to apply for, so coding a path through a maze which is just regurgitation rote memorised algos is a filter for us. I do agree about a daylong set of interviews with 4 or 5 people that's also a filter id use.

I guess it's also an issue of what you want. Are you fine with just any job, or do you want something specific, or something challenging? Do you want to be the smartest person in the room or do you want competent co-workers?

In my experience, these sort of tests do often seem to be used by the more interesting, more competent kind of companies. The first company where I encountered this (14 years ago), had only highly competent developers, many of them committers to various open source projects. About the recent one where I wrote a customised version of A* (because of the presence of wormholes, which made it not remotely rote for me or for most people, I'd expect), I of course don't know how it would have turned out had I taken the job, but if they select for this kind of thinking, I see that as a very positive signal about the kind of work they do and the kind of people they hire.

At companies that didn't have this kind of test, the quality of their developers was a lot more hit-and-miss.

At least for permanent employees; I've never encountered this for freelancers.

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

#272
post #266

Earlier quoted context omitted.

> Everyone should be able to sit down to a terminal, make a change to a repository, and commit it Disagree - You're testing can someone use the basics of git in a terminal. > you can always check the help or man page. Assuming you know how to do that, and what you're looking at. Say I'm sat down in front of a terminal, and I'm told "here's a terminal, make a change and commit it" I type in "git", and I get: "usage: g…

> I type in "git", and I get: "usage: git" - If you're used to using shell tools, then sure you can make sense of it, If you're not, then you're done. That's part of the test, to see if they're familiar with the command line and if they know how to open the man page. It's trying to weed out the people that can only work in the confines of an IDE and gui tools. That said I wouldn't expect anyone to know git from the m…

> That's part of the test, to see if they're familiar with the command line and if they know how to open the man page.

That doesn't tell you anything about how good a programmer they are. I don't need to use a command line or man pages for 99.999% of my work, so I'm not going to waste time learning to use more tools.

> It's trying to weed out the people that can only work in the confines of an IDE and gui tools

Ah, so anyone who uses a terminal is superior to someone who uses an IDE or a GUI?

> I would however expect anyone for a senior role to be familiar with what is a de-facto industry standard.

In _your_ industry. As I've mentioned before, I use Perforce (which is standard in my industry).

> And source control in general is a great topic for interviews on both sides

Agreed, but asking somone to rattle off `git init git add . git commit -m"I can remember three lines"` doesn't tell you anything about how much they know about source control. Talk to them about branching/workflows to find out how much they know about source control, or let them use the tools they're comfortable with, but plonking someone in front of a terminal to rattle off some commands is the equivalent of looking for a "culture fit"

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

#273

Earlier quoted context omitted.

In theory there shouldn’t be any, assuming it’s limited to an hour, both in description and in reality. In practice there’s a pervasive phenomenon called asymmetry of effort. The hiring manager may crib a task set either from a perfunctory google search or their own body part. The sum total of time spent on their part is often five minutes, including coming up with the problem and their review of your code. This foll…

Seems like you have a problem with the implementation of the idea, not the idea itself. At my current employer, our recruiting manager has a preliminary talk with the candidate and if there seems to be mutual interest in continuing in the process, she sends a simple task. The task was defined by the technical team , it should be short (no more than an hour) and it has nothing to do with our work. Once she receives th…

> I am yet to hear any story of any candidate that was interested in the position but walked away due to the way that the process is conducted.

Thank you for making my point. Why would you ever hear about it?

This is the "British Rails" fallacy in action. (A long time ago, the British Rail organization had heard complaints that residents of a local community weren't satisfied with the once-daily train service it received. Its response was there was no need for a second train, because at the times considered, no one was standing on the platform waiting to board it).

Nice coconut earmuffs.

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

#274

Check out my open source code. Call some of my references. Verify my past employment and make me an offer. It’s really that simple. If 3+ professionals are willing to vouch for me and I have 20 verified years working at major tech companies, do you really think I’m a guy faking I know how to code?

As a hiring manager: your coding skills are just one of many things I look at when I decide whether I'll make an offer or not. I need to think how you'll interact with the team, whether our company culture is something that you'll enjoy or not, whether my team will become a better team when you join us. Maybe you're defensive about your code and do not like having it reviewed? In that case I feel you won't fit well a…

I think there should be more emphasis placed on the non-techincal abilities of a candidate then is the current trend.

We love to think that getting a job should be based on pure meritocracy, but being able to do the job is one small piece of the puzzle.

It's the personality, cultural fit, and general interpersonal skills that really make or break a good team. If you have a team of the 5 best programmers in the world but they can't handle basic human interaction, nothing will get done.

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

#275

Earlier quoted context omitted.

As a hiring manager: your coding skills are just one of many things I look at when I decide whether I'll make an offer or not. I need to think how you'll interact with the team, whether our company culture is something that you'll enjoy or not, whether my team will become a better team when you join us. Maybe you're defensive about your code and do not like having it reviewed? In that case I feel you won't fit well a…

Let's see the questions you listed: - how you'll interact with the team - whether our company culture is something that you'll enjoy - whether my team will become a better team when you join us - maybe you're defensive about your code and do not like having it reviewed - maybe you enjoy pair programming As a hiring manager, how do you find answers to these questions?

These were just example questions, for example pair programming might be irrelevant, if it's not a significant part of team culture. I admit some questions here are tricky. It's hard to predict how candidate will interact with the whole team: maybe they're very respectful to me, but they will look down on junior developers?

Here are a few things I do that help me better predict whether candidate will fit the team:

- ask candidate to do coding task at home and later discuss the solution during face-to-face interview. While discussing the solution and suggesting improvements I can see how candidate reacts to feedback, whether they can explain why they came up wit this particular implementation, what do they say when I suggest an idea for refactoring etc.

- I like having another team member with me during interview. That person is an observer and they help me review candidate's performance (e.g. it happened that I had an impression that candidate did quite well, but my observer told me that I was often helping candidate with their task, which I had not noticed)

- lunch with candidate might be helpful. I take 2 team members with me and 4 of us grab some food out of the office. This helps candidate meet potential teammates and talk in a more relaxing atmosphere, so both sides can see how they feel about each other.

- one more thing I do is during initial phone call when I tell candidate about company, at first I give a very brief introduction, then before I say more, I ask whether candidate has any questions. This gives me a lot of insight: some candidates ask advanced questions, some ask very basic ("so what does your company do?" happened a few times!), some focus on product, some ask whether they'll be able to learn a particular skill. Some candidates don't have any questions, which is usually a red flag. These questions themselves are not enough to decide that candidate won't fit, but they're helpful.

- I ask candidates what they would like in their new job to be different than in the previous one. One candidate tells me they want to focus on one particular JS framework. If in my company we chose libraries and languages on per-project basis, she might not like it. Counter example: candidate that wants to learn multiple new frameworks might not feel well in a place that is conservative when it comes to introducing new libraries

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

#276
post #271

Earlier quoted context omitted.

Depends for many people there is not a shortage of jobs to apply for, so coding a path through a maze which is just regurgitation rote memorised algos is a filter for us. I do agree about a daylong set of interviews with 4 or 5 people that's also a filter id use.

I guess it's also an issue of what you want. Are you fine with just any job, or do you want something specific, or something challenging? Do you want to be the smartest person in the room or do you want competent co-workers? In my experience, these sort of tests do often seem to be used by the more interesting, more competent kind of companies. The first company where I encountered this (14 years ago), had only highl…

Really? do CERN, JPL NASA the various "interesting TLAs" do this for non New grads.

I certainly didn't get asked coding Questions when I went to BHRA (ranked 1 or 2 in its field) research organisation.

I was told in my first week "oh there is a book on Fortran in the library" teach yourself it

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

#277

Earlier quoted context omitted.

I was, of course, using the story to illustrate the absurdity of the overall situation. I don't want to leave a secure job for an insecure situation because they're difficult to find. They won't consider a direct hire for a "perfect candidate" -- proving my fears. My point which perhaps I should have been made more clearly is that they're asking me to leave a direct hire situation for a temp job. They're asking me fo…

I see, thank you for explaining. It just seemed odd that you yourself sought a secure situation but in you also said "Culturally, we should hire and fire more freely" which to me sounded like we shouldn't have these secure situations at all.

Nah, you're right. It was unclear.

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

#278
I've seen many different formats used.

1. Focus on open ended questions with very little programming

2. Give very difficult algorithm questions 3. Take home assignment

4. Knowledge based questions

5. Brain teasers

By far I think the most useful is take home assignment as it is the most fun, relaxed, and realistic way to measure someone's ability to code.

I don't think algorithm questions are that realistic because usually they are unrealistically difficult.

Mixture of take home and knowledge based questions with maybe some algorithm questions of realistic difficulty is best.

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

#279
Ideal, though unrealistic, would look like this.

Phone call from interested employer to ask a few questions back and forth. If things seem good set up an interview.

At interview, show potential employee where they will be working, what they would work on, then sit at a table for the interview. Potential hire knows their ability level and is honest with the employer about it. Employer knows exactly what they need in the hire and is honest with them about it. They come to a mutual decision about whether they are a good fit for employment there.

Interview done, and both parties know what to expect from each other afterwards.

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

#280

Earlier quoted context omitted.

this comment misses the point and is why we don't give take-home work to senior developer candidates. they are in high demand and will not spend their free time on homework, when many other companies will gladly hire them without making them jump through hoops.

I've seen companies hire truly awful senior developers who ended up costing the company quite a lot after they were fired and the entire search had to begin again 3 months later. If the position is in high demand, you still need to gate it to make sure you get a decent chance at a good hire. Also, I highly suspect companies who are having trouble hiring senior devs are having issues stemming from not paying enough fo…

You’re making it sound like any alternative to a take home project will increase hiring risks.

Companies like Square and Stripe have project-centered rounds during their onsite that allows them to assess these skills without giving a take home.

Post reply on HN