hiring process for programmers

Is the hiring process for computer programmers broken?

If you talk to just about any computer programmer that has been in the business for a while, they will tell you that the hiring process for new coders isn’t ideal. According to many, the methods that companies use to evaluate candidates do not accurately measure their abilities, and some interview methods are so rough that many programmers are avoiding these interviews at all costs. One programmer even went so far as to say the interview process was “humiliating and dehumanizing.” So where did it all go wrong?

The rise of the whiteboard

The main culprit behind this broken interview process is what is known as “whiteboarding.” Whiteboarding is an interview technique that employers use to judge their candidates, in which the candidate is asked to write out a series of algorithms on a whiteboard, while other developers sit in the room and watch. The candidate is not allowed to look up any information they forget, and must have a long list of functions and algorithms memorized. There is often a time element involved, and if you are unsure of an answer, you must try and guess your way into it. After the interview, the candidate may only receive a written letter notifying them that they were not selected, with no further explanation.

The idea behind this process is simple – if you really want that high-paying coding job, you’ll spend the time necessary to memorize the algorithms. The reasoning goes that those people who put in more time preparing for the interview want the job more, and will therefore be better employees.

Why most coders hate whiteboarding

So why doesn’t this process work? Shouldn’t programmers be able to write code on a whiteboard, without having to look up information? According to programmers, the answer is no. Whiteboarding tests a candidate’s ability to memorize algorithms, not their ability to write clean code. Being able to write clean computer code is about more than simply memorizing some functions – it requires creative and analytical thinking, skills that whiteboarding techniques do not test.

In fact, most high-end developers do not have everything memorized when it comes to code. A recent social movement highlighted this fact, when top programmers admitted their “sins” on social media. The man who started it – David Heinemeier Hansson, the creator of the Ruby on Rails framework – kicked it off by announcing that he “looks up code on the Internet all the time.” Other coders began to follow suit, announcing which things they routinely had to look up, no matter how much experience they had.

Coders feel that whiteboarding is a skill, and one that is not needed when it comes time to do the job. In their work environment, programmers will always have the Internet and other coders to rely on to help them with their work. They can test their programs to see if they work, and go back to make changes if necessary. This is not the case when writing on a whiteboard. Said coding instructor Quincy Larson, “The only world where you would actually need to be able to recall an algorithm would be a post-apocalyptic one.”

How whiteboarding is hurting the industry

This process has become so maligned that it is now having a wide impact on the entire industry. For starters, developers are reluctant to leave their current jobs. While a developer may see an opening for a more exciting position that pays better, they are wary about going through the hiring process. Most programmers know that they would perform poorly on a whiteboarding test – since they never have to do it in their day-to-day operations – and so they forgo the interview altogether. This lack of job mobility keeps coders working at jobs that they are perhaps too qualified for.

Those that do pass the whiteboarding tests often do so because they have spent hours upon hours studying for it. This amount of free time is not available to everyone, and especially harms certain groups. For instance, those who are currently raising a family likely do not have the time to study for an interviewing process while also working their full-time job. This can potentially filter out diversity in the workplace by preventing those who have financial and/or familial responsibilities from getting hired, instead giving a leg up to recent college graduates with more time on their hands. Aline Lerner, one of the founders of the website Interviewing.io, postulates that “technical interviewing is a broken process for everyone but that the flaws within the system hit underrepresented groups the hardest.” Diversity is already a problem in the computer science world, and the interview process is one of the main reasons.

Finally, this type of interview process harms more than the employees. Since whiteboarding does not test for real-life work situations, it can filter out some of the best candidates – which means some employers are not always getting the best person for the job. Using whiteboarding in your interview process will show you which candidates memorized the algorithms, not which candidates know how to use them the best. If a company really wants to find the best candidate, it might behoove them to move on from a whiteboard-based interview process towards something more practical.

Where to go from here

It’s hard to say how this problem can be fixed. On one hand, you have companies who are looking for the best way to find great employees, and to sift through the numerous applications they receive. Defenders of whiteboarding will also say that this process tests a candidate’s ability to work under pressure, and that it tests for a base level of competence.

On the other hand, you have candidates who hate the job application process so much that they don’t bother to even apply. They feel the process does not measure their abilities accurately, and don’t see the point in subjecting themselves to such a grueling experience, especially when there’s a chance they might not be offered a job.

Even if a more effective method for testing candidates was developed tomorrow, it would still take time for it to spread to enough companies. For now, companies should continue to look for new ways to test candidates – possibly in addition to whiteboarding – while programmers will have to do the best they can on the whiteboarding portion, and try to find other ways to showcase their talents.