OnStartups

How To Hire Hackers: A Realistic Guide For Startups

Posted by Dharmesh Shah on November 15, 2012 in guest recruiting 15 Comments

The following is a guest post by Iris Shoor. She's a co-founder at Takipi, a new startup looking to change the way developers work in the cloud. Previously, she was co-founder at VisualTao, a B2B startup acquired by Autodesk.

describe the image

Call them hackers, ‘ninjas’, or ‘rock stars’ if you’d like. Other than being very talented developers, they all share one thing in common -- it’s unbelievably hard to bring them on-board your company. And as if competing with other companies for the same talent was not enough, being a startup just adds more challenges to the equation. Your startup may be the next Google/Facebook/Instagram, but until then - how can you convince the best developers out there to join a company where the CEO’s office is an IKEA desk? Here’s one answer -- recruit like a startup, in a creative and agile way, doing things the way big companies can’t. During the last 5 years I’ve interviewed over 250 candidates and recruited dozens of great engineers. The first interviews took place in our tiny office’s kitchen, and we still managed to convince some of the best candidates to join. There aren’t any magic tricks involved, but here are some tips and methods which helped us get ninjas, rock stars and other highly talented people on-board.

You’re a startup -- have the founders make the first contact.

We lose many potential candidates even before the starting line - we fail to bring them over for a first interview. Some are already talking with too many companies, or decide after a brief visit to your web-site that your startup just isn’t their thing. That’s the point where you can make a difference. Our co-founders (including myself) are in charge of sending the first e-mail to potential candidates. We’ve kept this habit even as we’ve grown. At first, I was worried some candidates may think we have too much free time on our hands (sadly, we don’t). I soon found out that when candidates receive a personal and flattering e-mail (important when it comes to star developers) from a co-founder, it sends a message that this startup is all about its employees. Here are some helpful points for writing the first email:
  • Link to your online profile (personal blog, an interview with you, a YouTube video) when introducing yourself. Once there’s a face behind the email you’re more likely to get a positive response.
  • Add a personal touch. Have other employees who went to the same college? Mention it. Grew up in the same town? Write it down. It might sound irrelevant, but it creates the first hook, enough to have them come over for a meeting.

Interviewing: It’s not just about the role, it’s also about who they will have lunch with.

While we tend to tell candidates everything about the role, the managers and the company, there’s one part that’s usually missing - who will they work with? One of the most common answers I get when asking people why they've chosen one job over the other is knowing other employees there. Let candidates know who'll be sitting next to their (IKEA) desk and sharing their 9GAG jokes.
  • When candidates come for an interview we try to have them meet at least one future co-worker. A candidate asks a good tech question during the interview? Refer him to the engineer working on it instead of answering yourself. Found out the candidate has something in common with one of the employees (skydiving, growing up in Ohio, have a thing for ASCII art)? Introduce them. It’s not something we plan ahead, but given the opportunity, having the candidate stay at the office after the interview chatting with other employees, is considered a success.
  • Don’t interview too early or too late during the day, when the office is empty. If the only time your future star can come in for an interview is 8:00am, make sure some people come early. You want to paint a full picture of what it will be like working at your startup.
[You don’t need a fancy office to make good impression - the small details do the job. Our entrance door has code on it and these are our meeting room custom coasters ]

 

Interviewing: Choose carefully which opportunity to pitch.

There truly are great things about joining a startup - new technological challenges, opportunities for moving up the ladder more quickly, learning about the business side of things, stock options and more. Don’t sell them all at once. Pitching becoming a manager to an engineer who just wants to experiment with new technologies? Bzzzz -- wrong move -- which might send her elsewhere.
  • Look back - When we first started interviewing we used to ask candidates what they’re looking for. Instead of sharing their true motivations, they answered with what they thought was the ‘right’ answer -- “I just want to work on interesting stuff”. After a while we discovered the magic trick; instead of asking what they’re looking for now, we began asking how they've made previous job decisions. When asked about past decisions, people tend to share what really matters to them.
  • Don’t pitch, give examples - You can’t really promise someone that he or she will become a manager in the future, or only work on interesting stuff. Instead, I tell candidates what talented people who've joined the company a year ago are doing now. This could be how an engineer with no previous management experience is already heading a small team, or how a developer straight out of college is doing such a great job we’ve put her in charge of some very key algorithms.

Signing: How to make candidates sign an employment agreement more quickly.

You've reached the homestretch. The candidate you really liked said yes, and now all is left is to sign the employment agreement. This can turn into a very risky period. The current employer is likely to come with a counter offer and so can other companies.
  • Important: Avoid having your future star waste time on legal issues. To help with this we've decided to have the exact same employment agreement for everyone in the company. Other than the terms themselves, everything is the same - from the number of vacation days down to the small letters. It’s a super friendly agreement and we never change it. Once I tell candidates that everyone -- the CEO, the engineers and myself have all signed the exact same contract, and therefore we can’t change it, it usually takes them only a day or two to sign it. There’s much less need to re-read every part.
  • Scott Weiss from A16Z shares a great tip about the pre-signing period with the ‘Welcome basket’.

 

How to hear ‘No” and how to say ‘No’

  • Hearing No - Stay in touch with good candidates who chose a different company over yours. When a candidate I really like accepts a different offer over ours I always get the feeling I was dumped. True, I can’t honestly say I don’t understand how can someone pick a great job at Google over a small and unknown startup, but it still hurts. While the easiest thing to do after hearing a ‘No’ is, well, nothing, I try to make one last effort to stay in the picture. There are two main reasons for it : 1). Startups grow quickly. You might have a good candidate who decided a 10 employee company is not for him/her but a year or two later as your company grows it will become much more attractive. 2). Receiving a negative answer usually means you've reached second place. Sometimes, the first choice doesn't turn out to be the dream job they were hoping for. Some candidates don’t feel comfortable getting back in touch after they gave you a negative answer. By making the first move you’re saying that everything is fine and we’re still interested in you. Yes, it’s very much like dating. How to keep yourself in the picture? I like to send FB friend requests to candidates, and that’s something that you can do only as a startup (it can get pretty awkward when done by someone from a large company). Facebook is a great platform to share how well your startup is doing over the years. I also like sending an email once every 4-6 months, sharing how we’re doing and asking how’s everything going. I found out that most people find it friendly (and somehow flattering) rather than annoying.
  • Saying No - giving a smart negative answer will help you reach other great engineers in the future. I often ask myself how I would have liked to receive a “No”. My answer is that I would like to hear the truth. Instead of using the default answer of “we've decided to continue the process with someone else”, I write the (sometime hard) truth- “You didn't pass the technical test’, ‘you don’t seem like a startup kind of guy’, ‘it seems like you’re more interested in managing and that’s something we can’t offer right now’. I also make sure to write some of the things I liked about the candidate. True, there are some cases you can’t write the real reason, but in most cases you can. I was terrified when I sent the first 100% sincere email, but I soon found out that candidates embrace this, and usually agree with the reason. Now comes the interesting part - instead of feeling rejected, most people rightly feel they interviewed for the wrong role. Once you don’t ‘break-up’ with them, you can ask them to recommend friends or co-workers they think could fit the position. Yep, it sounds crazy, but it’s true. Even if you don’t get a new lead, rest assured you’ll have a past candidate saying good things about your company, and that’s something great in itself.

How about you? Any lessons you've learned while trying to hire great developers for your team? Would love to hear your thoughts in the comments.