Do not hire the best software developer you can find

Tom Winter
Devskiller
Published in
3 min readAug 13, 2018

Nike got it wrong. Just don’t do it.

Doesn’t that seem like a ridiculous idea to you? Well yeah it is if you think about it a bit. After all, you want to be able to get the best people for your company. And it definitely makes sense to get a really good software developer. Software developers build your product, and your company exists to sell a product.

A software developer probably has more responsibility than almost any other non-executive employee at the company. After all, software scales much better than just about any other kind of physical product. This means that a well-built piece of software can shoot your company into the stratosphere, but equally, a buggy or poorly functioning piece of software can absolutely sink it. So you’d want to get the best software developer you can find to build your product, right? If so much is riding on the result, why wouldn’t this make sense?

The best software developer in the world may not be able to help you

And if they are truly the best software developer in the world, they are going to know it and command a high salary regardless of whether they are the right person for the job. While, not quite on the scale of professional athletes or investment bankers, software developers salaries can make up a big proportion of a business’s operating revenues. So mistakes here could potentially cost you a ton in salary but that’s not the main point.

Software development expertise are very domain-specific

The best Java developer in the world may not be great at maintaining databases. Equally, the best front-end developer may not be able to do much of anything on the server side.

There’s this idea that has been floating around for a while that the best developers are so good, that they can do well at any technology they put their hand to. But the thing is that you don’t want a developer to do well, you want them to do great.

Great software developers should already have a lot of domain experience. The thing is that when you’ve solved a number of problems in a technology or area before, you can anticipate the pitfalls and issues that you will encounter. You’ll know how to avoid time-wasting dead ends and where you can make shortcuts. You also have a good understanding of the different resources available in the field.

Hire somebody who knows their libraries and frameworks

For example, the best front-end Python developers should have a good working understanding of Flask and Django. An equally great Ruby developer should know rails and a great JavaScript developer should know React, Angular, or View. But even if you are the best developer in the world, you still will have to learn how to properly utilize these resources to make great software. Devskiller provides the perfect platform to do this. As you can see for their coding test catalog, the tasks available go beyond technologies and involve the technological environment to build a useful function or app.

So I’d like to reiterate this point.

Don’t go out and hire the best software developer you can find. Go out and hire the best developer you can find in the field that you work in.

Otherwise you’ll end up taking on a white elephant who will not give you the performance you need potentially leading to an expensive mistake.

So when you’re hiring, it’s a good idea to give your candidate a real work task like the ones that they’ll be handling for you and see how they do it. This will show you how they utilize all of the resources available to them including frameworks and libraries to solve the problems that your company needs solved. It’ll give you a much better indication of whether a developer is right for your company than simply getting the best person you can find.

--

--

Tom Winter
Devskiller

Co-founder @Devskiller and Tech Recruitment Adviser