Hiring developers is tricky because software development is a creative process and objective measures of the quality of a developer are difficult.
Like with any role, though, what you probably want is a developer with great attitude and great aptitude.
For a developer you need hire across these three dimensions;
1) Great technical ability – this is essential but don’t make the common mistake of thinking it’s the only important thing. It is necessary but not sufficient.
2) Ability to work in a team – there are enough good developers out there to make sure that you don’t need to compromise on this one. Don’t hire “brilliant jerks”. As The CEO of Netflix, Reed Hastings, put it “Do not tolerate brilliant jerks. The cost to teamwork is too high”.
3) An impact focus – presumably you’re hiring a developer because you want some kind of impact. Make sure you hire people who judge their effectiveness on the results of what they do – not the quality of their analysis, fullness of their investigations or whatever.
OK – so how do you interview a developer for these things?
We tend to do three “screens” looking at these three criteria before any face-to-face interviews are set up.
A) CV/Resume screen. Look at the CV/Resume with these three dimensions in mind.
B) A 15 minute “attitude” phone screen.
C) A 15 minute “aptitude” (technical skills) phone screen. (Ideally one of your existing developers would do this but services like HackerRank are emerging if that’s not possible).
During the attitude phone screen ask them these sort of questions..
i) If you were to interview a developer what would you look for? This checks 1) , 2) and 3) above. Do they aspire to having great technical skills? Do they relate value to impact? Do they understand that software development is a team sport?
ii) If you’ve had a good or bad day at work what kind of things might have happened that day? This checks 2), 3) and 1) indirectly.
iii) What has made you successful so far? 1) and 3) and implying 2) gets a bonus point.
If your potential developer passes these three filters then they are “good to go” for the face-to-face stage.
It’s not easy to interview a developer but this kind of approach has worked pretty well for us and enabled us to work with some truly great people. At the end of the day there is nothing more motivating then that.