Older posts...
Older posts...
28 Sep
How I'm going to land my dream job
28 Sep 2014
How I'm going to land my dream job
1 Oct
Neural net training fail
1 Oct 2014
Neural net training fail
13 Oct
Pow + SSL without the hassle
13 Oct 2014
Pow + SSL without the hassle
17 Oct
Using machine learning to rank search results (part 1)
17 Oct 2014
Using machine learning to rank search results (part 1)
23 Oct
Using machine learning to rank search results (part 2)
23 Oct 2014
Using machine learning to rank search results (part 2)
9 Nov
Managing complexity in Go
9 Nov 2014
Managing complexity in Go
25 Nov
Remote work: an engineering leader's perspective
25 Nov 2014
Remote work: an engineering leader's perspective
19 Sep
Running A/B tests on our hosting infrastructure
19 Sep 2016
Running A/B tests on our hosting infrastructure
19 Jan
Optimising Redis storage, part two
19 Jan 2017
Optimising Redis storage, part two
27 Mar
Every service is an island
27 Mar 2017
Every service is an island

How I'm going to land my dream job

It’s that time of the decade again: in about 6 weeks, I’m going to pick up my bags, leave the team I’ve grown to love, and find a new (professional) home.

if you have a job for me, read this!

Since I’m a geek (can’t really help it), I thought I’d share some data, the viewpoint of someone who’s been on both sides several times, and my process to try and nail this.

If you’re considering a new job, hopefully this will give you some inspiration.

Fingers crossed—I’ll find a team as fab as the one I’m leaving. Let the (job) hunt begin!

At HouseTrip, I’ve been exposed to hiring (amongst other HR topics) from the “recruiter” side of the fence.

With the help of talented headhunters and of my technical leads, I’ve grown my last team from 12 to 27 engineers in 18 months. I’ve given 92 interviews in the same period (according to my list of transcripts in Evernote). Before those, I’ve reviewed the resumes of around 180 people (projecting this based on the last period I have data for). And according to my colleagues in HR, they screened about 5 resumes for each profile they passed on to me.

Hmm. The odds don’t look so good.

If you take this at face value, the conclusion is:

when your resume makes it to an HR person, there’s a 1.6% chance you’ll get hired.

Wow, I’ve managed to scare myself.

I was little anxious already because this time, my hunt may be harder than usual: I’m tele-working from the lovely city of Crémieu, France (3500 souls), and unfortunately, very few companies are remote-friendly. (Sidebar: if you think hiring remote workers is a bad idea, I think you should stop reading this and go read Remote immediately!)

Now that we know a bit more about the (predictable) harsh reality of the recruiting side of this, let’s take a peek at the candidate side.

Caveat Emptor: The plural of (my) anecdote is not data—I’m just one data point. I’m also in the almost-unbelievably lucky situation of a highly-demanded craft: I’m a software engineer. The number of competent “programmers” is far outstripped by the number of available positions (particularly in London, Paris, and of course the US). Given the savoury anecdotes I’ve heard from colleagues and read in other places, I think there is at least some generality to this.

Understandably, many companies have trouble hiring, and head hunters are trying very hard to fill positions using a number of techniques. Let’s focus on emails.

Over the past year (since December 2013), I’ve ceremoniously kept all (well, hopefully all) emails I’ve received from recruiters. Bear in mind I wasn’t on the market at the time; my profiles mentioned this where possible (my resume was hidden on Monster; I was marked as “not available for hire” on Stack Overflow Careers). Here’s a breakdown of the emails I received:

  • 212 total emails from recruiters (some direct, some from Linkedin);
  • 116 “shotgun” emails: random jobs, which were apparently sent my way because the spec says “computer” or “programmer”;
  • 76 “targeted” emails: I’m a half-decent match for the job spec, but the recruiter obviously made no effort to address me personally; I’m just an anonymous profile;
  • 20 “tailored” emails: the head hunter specifically tried to get me for the job, and there’s evidence they read my resume, or even researched my background in detail.

My archives indicate that 16 emails (7%) were relevant enough for me to send a detailed response at the time.

Here’s what that looks like for the visually inclined:

Good for my ego. Bad for my OCD.

Attribution wise, the majority of those emails came to me through social profiles. Very close to 50% came through LinkedIn, the rest is harder to determine (or I’m too lazy). Presumably there’s leftovers from my former presence on Monster on various resume databases; there’s also a handful of recruiters I’d previously had contact with.

Note that I’m not criticising recruiters. They do a bloody difficult job without much help from technology. Only a few companies, like Workable, try to help them automate part of their needle-in-a-haystack job—remember the 1.6%? that’s their conversion rate. And automated matchmaking for recruitment, unlike for your love life, is still a research topic.

So, they’re just trying to do their job, even if it’s annoying. Consider this: the “shotgun” approach is low cost, and even if marginally successful, low risk. It’s similar to spam mail; it’s sufficient if a couple of recipients follow up.

On the other end of the scale, narrow targeting is very expensive. I’ve seen a couple of cases where the head hunter had to have spent a day of work before any contact with me. Yes, it’s very flattering. It’s also a risky (time) investment for them… but one that (I presume) is more likely to pay off, as they connnect with people who are a good match, and are better equipped to convince them.

To wrap this very informal study up… I feel bad about not having replied to most of those emails. But on the bright side, having all those recruiters (and hopefully, companies) putatively interested in my little person makes those 1.6% odds much less scary.

Which brings me to, how am I going to optimize my hunt for the perfect job this time around?

Time for a bit of introspection. Let’s not make it navel-gazing.

Like many of my fellow software craftsmen, I’m happy when I code, happier when I share something I’ve built with others, and happiest when it’s used.

I’m also told I’m a good lead and manager, and I believe it’s because I try to be honest, fair, transparent, curious beyond the realm of software, and able to make decisions even when some facts are missing.

But also like many of my peers, I’m terrified to leave a job: because it means I may be unable to exercise my craft, not have a stable source of income, or even worse—to have to do something I don’t love in exchange for income.

The web, and our personal networks, are littered with horror stories of software cultures gone wrong. I suspect this decades-long clash of cultures plays no small part in fueling depression amongst software engineers.

I really, really don’t want to get there. Paranoidly so.

I want to enjoy building software things I can be proud of with people I like.

This last paragraph is my first step of preparing for hunt: writing down what I want to be doing the next few years.

From there, I went into details and wrote a handful of paragraphs that portray the job I’m after, the company, and the people.

If you’re still reading this last section: this is where the action begins. My tactical plan for getting hired is:

  • list companies,
  • ask for intros,
  • pimp myself up,
  • send out applications,
  • manage recruiters,
  • go to interviews.

I won’t go into great detail as these topics have been covered at length by others. For instance, About.com has surprisingly good (albeit generic) tips to create a target list of companies or asking for a recommendation. And of course, Stack Exchange has answers for everything else—including whether you should call yourself a programmer or engineer (although I’m pretty sure it’s not settled yet).

Creating a list of companies

This turned out to be both easy (listing companies) and of mind-boggling complexity (in which order should I approach them?)

I know I’d rather like to work in the “web industry”, so I started by listing companies I’ve interacted regularly during my last gig, or wish I would have, and are centered around an online product. To give examples: Github, Heroku, and New Relic are on my list, along with a host of less obvious ones like Datadog, The Guardian, or Twilio.

But then—how to order them? I won’t realistically be able to research, and write a cover letter for, the 50+ companies on my list.

My engineer hat firmly on, I came up with a list of criteria, hoping to use those to rank my list:

  • are they known to be remote-friendly?
  • are the technologies they use currently a close enough match to my skill set?
  • do they have engineering positions open?
  • do I know someone there, or can I get introduced to employees those companies?

…and the ranking failed, as I can’t figure a way to weigh these criteria. But a few companies did bubble up, forming a shortlist.

Curating my profile

This is really about having a neat “hire me!” placard that inspires confidence.

It’s not about hiding anything, or presenting my “achievements” under a flattering light; rather, it’s about making sure they’re legible for potential employers.

In practice, this meant brushing up my resume, having .doc and .pdf versions handy (and in sync!), removing the useless extra formatting fluff, and highlighting the key items at the top of the document. I’m terrible at it, but that did mean writing my own pitch.
As you’ve understood above, I know by experience that the first 10 seconds someone will spend looking at my resume will be crucial.

I’ve also tried my best to make sure my main online profiles (Linkedin, Monster, Angel.co, Twitter) are consistent and have the right information.

Finally, it’s becoming quite important to have an online portfolio of some form. Something that showcases your work. In our line of work, that’s having a Github account: I did my best to update the open source projects I maintain on Github, even more than usual.

I also rushed to complete a couple of blog articles—this one probably doesn’t count, but if you’re so inclined, to have a read of my recent software architecture article.


A reflection on what I appreciate when I hire: cover letters are key. I used to read them before the resume (when there was one), because they’d give a tint (or a taint) to the otherwise-dry resume. I particularly appreciated cover letters that were passionate or down-to-earth and factual, but to me, a good one mainly had to be 1) honest, and 2) specific (as opposed boilerplate).

When there was a cover letter, I could predict whether we’d eventually hire the person quite accurately (no data on this, sorry).

So I’ll be posting posting resumes to my short list of target companies, along with carefully written cover letters. They won’t be “crafted” in the sense I’ll do my best to impress, but in an attempt to give a positive gut feeling about the kind of colleague I’d be, and what I could bring the company.

Hint: I’m pretty sure avoiding buzzwords is important here, in any profession. Unless you want your key skill in your new job to be the ability to play bullsh*t bingo.

My plan is to target half a dozen companies in the next couple of weeks. I probably won’t be able to do more, as each cover letter takes me several hours.

Incidentally, this is the reciprocal of what I’ve mentioned about recruiters above: writing a good cover is higher cost, but hopefully higher reward.

Managing recruiters

Unless my situation as a remote worker is more of a turn-off than I anticipate, or a bank collapses again tomorrow, I’m pretty sure I’ll be on the receiving end of a lot of emails.

I’ve written a recruiter brief in the hope of avoiding at least some of 30 minute phone call where head hunters profile candidates, thus saving my time and theirs.

This time around, my aim is to answer every email. Probably with a little more organisation to optimize my time spent:

  • “shotgun” emails will receive a boilerplate answer, and a link to a fresh resume and the brief, to give them a chance to populate their databases with correct information;
  • “targeted” emails will received a specific answer, the same info, and a request for details (if the position is relevant) or a polite decline (if it isn’t);
  • “tailored” emails will get a detailed answer, and if the role is relevant, further questions and an offer to have a phone conversation.

Yes, I will answer every single head hunter. Colour me naive, but I think being polite eventually pays off.

Last time for me was 2011. I just put my resume out there, had a chat with the first 3 recruiters who pinged me, and was very lucky to land at HouseTrip in two weeks… This time around, I’d rather not rely just on luck.

I still have a job I intend to do as well as possible. I’m not planning on using my notice to find a new job; it clashes with my work ethic.

This means all my free time will be consumed by the hunt for the foreseeable future; I’ll still answer your comments if any!

Oh, and I plan to brush up on machine learning and prototype a neural-network based learn-to-rank engine for HouseTrip in my last month here. I’ll definitely write about it :)