Why You Need To Hire Great Developers

30 Jun 2012. comments

Hiring great developers is critical.

“What we do is like opening doors every day, you open the wrong one, all sorts of bad things will come in. You have to be careful which door you open.”

– Steve Jobs

If you let a bad developer in the door, you’ll sap the productivity of the great developers you have because they’ll just spend a ton of time cleaning up the messes and getting demoralized. The negative impact can’t be understated.

Software engineering has no qualification standards, and we’re really awful at distinguishing great developers to hire. The result is that there are legions of terrible developers in the field. Our industry is packed with developers who have no business being in the industry.

If after you interview a candidate you find that you aren’t completely sure about them, don’t hire them. If you aren’t completely convinced that they will add value, don’t hire them. If 1 out of 6 people on the interview loop is a ‘no hire’ vote, don’t hire them. The consequence of letting a bad developer in the door is far greater than maybe missing a good one, and if they are good they will have no trouble landing a gig elsewhere.

“I observed something fairly early on at Apple, which I didn’t know how to explain then, but have thought a lot about it since. Most things in life have a dynamic range in which average to best is at most 2:1. For example if you go to New York City and get an average taxi cab driver versus the best taxi cab driver, you’ll probably get to your destination with the best taxi driver 30% faster. And an automobile; What’s the difference between the average car and the best? Maybe 20% ?  The best CD player versus the average CD player? Maybe 20% ? So 2:1 is a big dynamic range for most things in life.

Now, in software, and it used to be the case in hardware, the difference between the average software developer and the best is 50:1; Maybe even 100:1. Very few things in life are like this, but what I was lucky enough to spend my life doing, which is software, is like this. So I’ve built a lot of my success on finding these truly gifted people, and not settling for ‘B’ and ‘C’ players, but really going for the ‘A’ players.

And I found something… I found that when you get enough ‘A’ players together; when you go through the incredible work to find these ‘A’ players, they really like working with eachother. Because most have never had the chance to do that before. And they dont work with ‘B’ and ‘C’ players, so its self policing. They only want to hire ‘A’ players. So you build these pockets of ‘A’ players and it just propogates.”

– Steve Jobs


Tagged: software craftsmanship interview software engineering

2018 Ben Lakey

The words here do not reflect those of my employer.