On Hiring Developers

Here in Seattle, if you’re a developer with any sort of public profile, you will generally get a lot of emails and requests from recruiters or hiring managers looking for new hires. There simply aren’t enough developers to go around, and everyone wants to find those “unicorn” developers that can do it all, from full-stack development to UX design to artisan cheese making.

Applicants require 3+ years with Brie, 4+ years with Camembert.

Applicants require 3+ years with Brie, 4+ years with Camembert.

I get a lot of these emails,  and they generally take the same form:

Hi Paul,

I’m <person> with <company> and I’m reaching out to you because <company> needs <Android/mobile> developers! They are doing some hot new stuff in <tech field> that you might be interested in! Are you looking for new opportunities, and do you have time for a chat on the phone?

When I get emails like this, I usually thank them and say I’m not looking for new opportunities, but I’d be happy to help if I know someone who is looking.

I realize that in a country of over 7% unemployment, getting spammed with employment offers isn’t something to complain about. In fact, I’m not complaining at all: I’m extraordinarily grateful to be in a position where I am not struggling to find work.

I feel bad for the recruiters and managers in this position, because I just don’t find these emails to be very effective. I know many developers who will just put them in the Trash without even responding. So how can companies stand out when contacting developers?

The WIIFM Test

To me, these emails aren’t very effective because they don’t pass the WIIFM test: What’s In It For Me? It’s a simple thing to do when writing any email that has an ask: put yourself in the shoes of the person you’re writing to and ask, “what’s in it for them?” If you can’t answer that, then find that out first.

OK, I hear what you’re saying. “What’s in it for them? A job with a cool company, that’s what!” But because developers are in such high demand, the person you’re talking to probably already has a job with a cool company. They don’t need what you’re offering — they probably already have some form of it.

Can you compete on salary? That’s not usually possible for a startup against companies like Microsoft, Google and Amazon. How about perks? There are some people who are attracted to fancy lunches, or office slides. If you’re in a startup and can’t afford an executive chef, I know companies who offer perks that highlight the company culture, anything from Sounders tickets to Zebra-printed snuggies.

However you try to appeal to top-notch developers, it’s important to understand that they don’t ever need to work for you. Don’t try to sell them on what they can do for you — think about what you can do for them.

I really don't come to work for the fancy lunches, anyway.

I really don’t come to work for the fancy lunches, anyway.

Getting Personal

What can you do for them? While you might be able to answer this with perks, I believe the real answer starts with getting personal. It takes getting to know the person, and understanding their goals and desires. What do they want, and how can you help them achieve it?

This post is mostly inspired by a conversation I had with Robi Ganguly, CEO of Apptentive. This was in response to a quote of his in Scott Porad’s GeekWire article on the challenges of recruiting developers to startups:

“I’ve been noticing around here that there are a LOT of talented technical people who want to move away from the technical side of things,” he says. “It feels like it’s happening at exactly the wrong time — when the need for more technical talent is exploding.”

I have to admit, I’m one of people, and I wanted to ask why this was happening. What aren’t these developers finding in current offerings that makes them seek different challenges, and how can companies change their hiring practices to try to cater to these individuals? Robi asked me why and I gave him a personal answer:

At the start it was simple: I wasn’t able to get the job that I wanted that allowed me to have a direct connection with the people who use my software, something I learned to love with my personal projects (OneBusAway). So I decided to try to create that job myself.

In creating that job, it not only required me but *forced* me to learn new things every day. Since learning new things I find personally rewarding over anything else, it was perfect for me.

Along the way I learned something else, something I hadn’t expected. I learned to love networking. I learned how to listen and how to help. I learned to be a better leader. I learned a sense a purpose. I’m still learning these, but as I learn I’m learning how to be a better and happier *person*, and not just be a better engineer.

By simply asking me why, Robi made a connection to me that helps him understand how better to convince me (or someone like me) to come work for him.

The Start of a Conversation

What Robi understands is that he is building relationships, not just hiring coders. We want to treat our employees as people, with real motivations and goals — then why do we start the hiring process with something so impersonal and transactional? We’re in an age where the old recruiting tricks don’t work when everyone is seeking out the same unicorn. Perhaps we have to find a better ways that work when the old ways don’t.

Unless your recruiter is Twilight Sparkle, in which case you're fine.

Unless your recruiter is Twilight Sparkle, in which case you’re fine.

I feel like this is just the start of a conversation. It leads to everything from organizational culture, to building a culture of learning, to changing the way developers think about their jobs. I’ll be writing more on this topic soon. Want to be a part of the conversation? How does your company appeal to developers, and how effective has it been? I’d love to know your lessons, and I’d love to know if this has been meaningful to you.







I like wearing different hats. Follow me on Twitter. Connect with me on Google+