Why Software Development Hiring Is Broken

Hiring in software development is horribly, perhaps irretrievably, broken. As both a software development manager and a software developer, I’ve seen the process stop good developers from getting jobs while incompetent numbskulls who shouldn’t be anywhere near production get hired over and over again. The latter do so only to get fired a few months later when they can’t deliver results. Usually the rest of us get to clean up their results for months or years after they are gone. It’s really dumb that most places use a broken process, but that’s the reality we have to deal with.

In this article, we’re going to discuss the reasons why it is difficult to evaluate software developers, how companies have traditionally tried to handle it, and how various approaches have failed. Understanding why things are messed up is very helpful in dealing with the problem in a constructive way, even if you can’t fix the problem itself. Software development hiring managers have been trying to find a good way to evaluate developers for decades, and have yet to come up with anything that both works well and is trivial to implement. We’ll discuss how the industry first used quizzes, live coding challenges, and various other approaches to evaluate developers. Then we will discuss how the industry settled on using whiteboard interviews as a common way to evaluate developers.

Difficult to Evaluate

The biggest problem of the software development process is that it is difficult to evaluate candidates for a variety of reasons, especially when the market is tight. If you hire someone unqualified, they can (and will) easily cost you thousands or tens of thousands of dollars before you get to go through the process again. All that is assuming that they don’t take the company down with them, putting you in a position where you are interviewing from the other side of the table. On the other hand, if you do manage to get the resume of a good developer across your desk and the market is full of jobs, you may not get a lot of time to decide whether you want to hire this person or not, before they get snapped up by another company in town. Hiring managers are in a very difficult position and are thus forced to make a lot of decisions quickly, even if they come to regret those decisions later.

Worse still, hiring managers don’t have a lot of time. If a healthy company is hiring, it’s because they either have more work than they can do or they are anticipating having more work than they can do. Neither situation gives the hiring manager a lot of time to carefully consider candidates. This tends to mean that they will develop shortcuts to cut down on how much time they spend on the hiring process. This is especially true of software development managers who are still writing code themselves. Many software development managers don’t enjoy managing people and will go to a lot of effort to limit their time doing so. As a result, you are very likely to be interviewed by someone who is in a hurry, doesn’t particularly want to be there, and just wants to be done with the whole thing so they can get back to the rest of the work on their plate. This state of affairs can be a huge disadvantage to the unprepared, but can be wonderfully helpful to those who have done the work up front to make it an advantage.

Software development is unusual, especially for such a high-paying profession, in that there are a ton of ways that someone can get into the industry, with varying degrees of success. Not all software developers go to school for it; in fact, on the majority of teams I’ve worked with, most developers haven’t had a computer science degree. And it’s not like such developers lack skill—my friend Jeremiah doesn’t have such a degree, and I know he can code circles around me. The difference is made with diligent practice, work ethic, and experience. The degree can help, but is not a sufficient measurement on its own.

And there’s another problem too. Not everyone that goes to school is good. In fact, I’ve worked with a number of people who have gone as far as getting a PhD in computer science who, being kind, can’t code their way out of a wet paper bag. You can’t use a degree as proof of skill in software

If you are looking to hire then you should use UJober the video interviewing job portal. UJober allows you to make sure you hire the right person the first time guaranteed. UJober allows you to video interview your potential new hire to make sure you get things correct the first time. It also streamlines the hiring process saving you time. Make sure you sing up for UJober today for free. Posting your job is completely free so take advantage of UJober today.