On hiring developers (Part I - Formalism)

This is part I of multi-part series devoted to hiring. Don’t miss Part II - Part III and Part IV.

Hiring developers is extremely challenging process given talent scarceness, enormous employer competition and stupid process we accustomed to use for the last few decades. My humble hiring experience counts about 600 interviews for different positions from IT managers to developer apprentices in various companies where every hiree mattered (fortunately I haven’t ever hired for a body shop). I also become interviewee at least twice a year in order to keep myself in shape. It’s time to share what I’ve learned after myriads of successes and, more importantly — failures.

When formalism bites

Once I’ve applied for a job at one of the most prestigious software development consultancy in the world whose name I will undisclose in the sake of solidarity. CV has been sent and in about a day I’ve received robot-made rejection letter with the following explanation —

Dear Mr. Sizovs, we decided not to proceed further with your application at the moment. Do not expect any explanation from our side as we’re receiving myriad of applications and running out of hands.

Such letters suck at its heart, but let’s leave it for another story. What’s interesting is that few years ago I’ve applied for the same position at the same company, successfully went through a bunch of interviews and got a job offer (which I politely refused for a good reason). Curious and upset I decided to conduct an experiment and send the same but slightly modified CV (+10 years of fake and meaningless Java experience added to the end of job record resulting to ~20 years of overall experience, all vital community-related activities and big wins have been removed). After few hours I was invited to 2nd round. In other words, adding few rows of completely-unrelated Lorum Ipsum experience and removing things that really matter (but are hard to auto-scan) brought me closer to the job. Real Eduards lost the battle. The perfect mock-up jubilates!

Sadly, formal CV-scanning insanity brought loss to both parties. If I’d be the only sufferer — hell with it. But it’s a systematical, repeatable bullshit that happens almost everywhere.

I can’t stop wondering how often skill-based and years-of-experience-based CV scanning leads to disastrous outcomes and unpleasant side-effects.

Formal scanning is a weapon which, if used incorrectly, is a disaster given current market conditions. An obvious misfit is the only flaw formal scanning can catch. For example, when a hard-core .NET developer applies for UX designer position — it’s an obvious misfit. When technical writer sends CV full of grammar mistakes — it’s an obvious misfit. When developer with few years of experience applies for senior position — it’s may be a misfit, but there is no proof until you check closer. Sorry but candidate should be given a chance. Remember there is a unique personality sitting on the other side of the network. Unique personality that can blow-out your mind and save company millions.

I can guarantee that the best hires I’ve ever made would never pass formal requirements companies normally publish. Sometimes great candidates, especially those with self-critical attitude even don’t consider applying because of natural fear they feel. Here is what happens in their head:

FooBarTech asks for familiarity with the entire company stack: Java, Objective-C, Ruby, MySQL, and Redis. I haven’t ever coded in Objective-C. Probably they met someone who knows the stack. Lucky he, someday I will be this tall too.

In fact no candidate will ever be this tall. And luckily no one really should because technically it’s not possible. Companies must be realistic and hunt for minimal possible familiarity and huge interest.

Otherwise well-grounded candidate, who believes familiarity is equivalent to practical experience will pass by. Likely you will get an army of paranoidal candidates who think they know everything. And capable of nothing.

Premature rejection, over-formalisation and simplification is appealing because it can save your from time-consuming eye-to-eye interviews. Just remember that short-cuts cause long delays and the easiest path is not always the best path to take. There are things money can’t buy. Similarly, there are things you can’t auto-scan — empathy, product grasp, cultural fit, initiative, tenacity and many others which should be preferred over naked numbers.

How many good candidates have you lost because of excessive formalism?

Please share this article if you liked it and don't forget to follow me on Twitter. Ah, don't be shy to comment ↓ as well!