A blog that needs work

Hiring is (mostly) bullshit

I was having a conversation with a friend of mine about a possible fit at our company. We'd worked together in the past, and are good friends, and I thought that our rapport would help to solidify our engineering team. Unfortunately, having just come out of school, he doesn't have a lot of work experience, and his previous work placements are not at AAA places. That doesn't bother me per se, but, I explained that my coworkers likely would not be as sympathetic as they had not worked with him.

"I don't understand why I'm being penalized for not working in my free time," he told me. "It's like the chicken and the egg problem: how do I get experience for a job if I need the job to get experience?"

Ignoring the fact that there are lots of ways to get experience, the point remains that you still need to demonstrate that experience somehow. It got me thinking about the hiring process, specifically ours, but hiring in general.

I decided to revisit some old favourite articles. In particular, I was reading Steve Yegge's Done and Gets Things Smart. After reading that, and reflecting back on a few panels from Anime North, I came to this conclusion:

Hiring is bullshit.

I don't mean that it is unnecessary, or untrue, or unfair (though it is, a bit); just that it is misleading. It is misleading in a way that you think you understand what is going on right up until the point that you do not.

Suppose that you are in a position to find work. Suppose as well that you find a company that is hiring; you've noted that the company has been hiring for the position for quite some time. Let us further suppose that you are actually a perfect fit for the job, that you apply, and that you get an interview. For whatever reason, you don't get the job. What happened?

Well, as you may have guessed, hiring is bullshit, but that's not very specific. To be more specific, hiring is not an exact science: there're a explicit job requirements (those advertised), implicit job requirements (cultural fit, team fit, etc.), perceptions of the candidate (and their perception of your company)... the list goes on, but all of these are inputs to an ill-defined system terminating at whoever is responsible for hiring. All of the inputs are weighted, but you're not entirely sure how (hirer or hiree), and even if you did know, the inputs aren't so much weighted as they are a set of preference relationships...

If that sounds complicated, that's partly because I'm complicating matters, but also because people are really bad at hiring people who aren't themselves. I'm by no means the first person to come to this conclusion.

Frankly, I'm not an expert, but it seems like a very difficult problem (with low yield) to develop the 'perfect' hiring system, mostly due to those pesky implicit requirements, and ill-defined explicit requirements. People just don't know what they want.

Why do we continue to hire as we do then? If you've ever read a book on the job search (like, say, What Color is Your Parachute?) or just happen to know, you'll know that companies try to do as little work hiring as possible. I don't mean to say that they're lazy, but an example is in order. Below I've listed a preference relationship as for how companies typically hire (abridged from my 2008 copy of the aforementioned book):

  1. From within
  2. From proof
  3. From a friend or business colleague's referral
  4. From a referral from an agency they trust
  5. From an ad they've placed
  6. From a resume

You should notice two things about this: first, that people look for jobs in the exact opposite way, but more importantly, the further down the list you go, the more work is involved. I don't blame employers, because its a lot of work vetting people, but it still remains that employers are lazy.

"It's not what you know, but who you know", you might say. You might also look at the list above and say that it wreaks of nepotism or other abuses of the system. That is possible, but how do you pick the 'best' candidate when you don't really know what you want?

Well, in the absence of knowing what you want, and knowing how to evaluate someone, you just have a series of cruder and cruder proxies. An interview (or a resume, or whatever) is a crude proxy of knowing you. Since it is unlikely that the person hiring you has ever worked with you personally, all the communication up to the hiring decision is the employer getting a more refined view of you. All that information is a proxy of what its like working with you.

The whole process is just a complex set of communication, starting with you who you are, what you can do, and what you're capable of and the employer trying to verify these claims and responding with the same information about themselves.

To make matters worse, you (as a potential employee) are competing against lots of other people, you have no idea where they are relative to you (assuming an objective measure), and might even have an edge because they program in their spare time. The playing field is not fair.

It's unreasonable to get out of bed on a snow day, when school has been cancelled, and turn the downtime into six hours of work on an extra credit physics lab. It's unreasonable to launch a technology product that jumps the development curve by nine months, bringing the next generation out much earlier than more reasonable competitors. ... It's unreasonable to walk away from a good gig in today's economy, even if you want to do something brave and original. ... It's unreasonable to devote years of your life making a product that most people will never appreciate. Fortunately, the world is filled with unreasonable people. Unfortunately, you need to compete with them.

-- Seth Godin

So if employers don't know what they want, are lazy, are bad at hiring people that aren't themselves, and the playing field isn't fair, what can you do?


Be really good, and really lucky?


Really, I wish I had better advice, but based on what I've read, that's all that can be done. You have control over what you learn, how you communicate, and how much you practice, and those ultimately affect the goal of being really good. As for being lucky, just look for opportunities. I have gotten where I have because I have been fortunate, and not a total idiot.

I can't claim that our hiring isn't bullshit, but if you're a front-end developer who loves python and javascript, you can contact us. At least then you just need to be really good.

Nicholas Terwoord

A self-titled software developer, "code archaeologist" (whatever that means), and professional geek. Spends too much of his time coming up with new projects, and not enough time working on them. Likes video games, board games, anime, manga, and Pathfinder / Dungeons and Dragons (GOTO: Line #1 - Geek).