One of the big problems with hiring a developer is that it is extremely challenging to judge a developer’s quality over the course of a standard interview. Tech jobs are unique in that those with skill – and those without – quickly rise or fall based on their own merits (given an ideal work environment).
However, hiring an employee is an expensive undertaking – a common maxim in development is that a new programmer will not become a net positive benefit to their company for at least six months and for as long as a year after being hired, regardless of their experience level.
This means that it is crucial to the success of a development team to select competent developers, and keep the incompetent ones from ever coming on board. This is more challenging than it might seem at a glance. You’re looking at simultaneously covering two problems – weeding out the people who are “all talk,” and making sure not to falsely eliminate competent developers with an unnecessarily challenging screening process.
Many of the larger companies in tech, though, have gone off the deep end. In many ways it started with Microsoft’s brain teasers, but one of the pervasive frustrations in technical job hunting is that of the “hard” interview. Many of the most popular companies among tech employees have taken the approach that it is better to reject 100 good employees than to let a single bad one through.
I firmly believe that while many who weather the arduous process interviewees are subjected to hold it up as a badge of pride, these people are in fact perpetuating a dehumanizing and borderline insulting aspect of the hiring process.
These companies want you to put forth dozens of hours of effort in studying for their interview process, go through several different rounds with different engineers who often judge you on a subjective – rather than objective – basis, and at the end of the process they simply tell you “no, not this time.”
A prospective employee will work hard to study everything required for an interview, pass multiple phone screens, take time off work and out of their life to fly or drive to the company’s offices for an in-person follow-up, and they won’t even be given a modicum of respectful constructive criticism should they fail.
While I understand the points of view of these companies, this attitude is needlessly condescending and, frankly, insulting to prospective developers who have worked hard to present their best front during the interview.
There should be some consideration and respect shown to the interviewee, and these companies – though they are trying to do the “right thing” from their perspective – are doing a disservice to the development community at large. The sad part is that it will take a wholesale mental shift in the development community to boycott these companies before any real change can take place.