Assuming you really are in the market for another pair of hands to screw stuff up worse than you already are, the question is how to acquire resumes, how to pare them down, and how to identify someone who is going to work well in your company.
There’s already a lot of great advice about hiring at little startups. Before I give you mine, here are some of my favorite articles, in no particular order:
- Smart, and gets things done by Joel Spolsky — The classic guide to what to do during the interview and how to know whether to “hire” or “not hire.”
- Why startups should ALWAYS compromise when hiring by Dharmesh Shah — There are many attributes you’d like to see in a hire, but compromise is necessary; here’s how to do it.
- Five quick pointers on startup hiring and Disagreeing with Entrepreneur Magazine by Dharmesh Shah — Assorted tips, all important.
- Hazards of hiring by Eric Sink — Great tips, including some specific to hiring developers (for more on the latter, here’s another).
- Date before getting married Part 1 and Part 2 by Dharmesh Shah — A strong argument in favor of working with a person rather than relying on interviews.
I’m not going rehash those or attempt a “complete guide to hiring.”
But I do have some fresh advice you might not have seen before:
Hire “startup-minded” people
If a person just left IBM, is she a good fit for your startup?
If she left because she couldn’t stand the crushing bureaucracy, the tolerance of incompetence, and the lack of any visibility into what customers actually wanted, then she sounds like a person ready for a startup.
On the other hand, if during the interview she asks how often you do performance reviews, that means she doesn’t understand the startup culture. If she says “I thrive in environments with clear requirements, written expectations, and defined processes,” run away as fast as your little legs can carry you. (Sorry, too many recent readings of Tikki Tikki Tembo.)
Startups are chaotic, rules change, and there is no “job description.” It’s better to make a strong decision that turns out wrong, and admit it, than to plan ahead or wait for instructions. Potential earnings (e.g. stock, performance bonuses) are preferred to guaranteed earnings (e.g. salary, benefits).
You already live by this Code of Turmoil because you’re the entrepreneur; you have no choice. But normal people do have a choice and most people abhor chaos. Big companies don’t behave this way, and most people are accustomed to working for big companies.
You have to hire someone comfy with the bedlam of startup life.
Write a crazy job description
You’re not just hiring any old programmer or salesman, you’re hiring employee #1. This person helps set the culture of the company. This person has to mesh with your personality 100%. You’re going to be putting in long hours together — if they don’t get your jokes, it’s not going to work.
So why wait until the interview to see whether your personalities mesh? Put it right in the job description.
Be funny, reflect your personality, reflect the uniqueness of your company. See the jobs page at WP Engine for a bunch of examples — everything from detailing our culture (“Being transparent about our strengths and weaknesses wins us sales”) to attitude on writing awesome code (“You think using a profiler is fun, like a treasure hunt”) to treating customers (“Whether or not you sleep at night is directly proportional to whether you’ve made something thrilled or pissed off that day”).
You should see the results in the cover letters. If after a job posting like that the person is still sending the generic bullshit cover letter, you know they’re not for you. If they respond in kind, good sign.
And anyway, one day you actually might need them to change those pellets, and then you’ve got it in writing!
Do not use a recruiter
On young startups using recruiters, Bryan Menell sums it up nicely:
“If you find yourself wanting to hire a recruiter, hit yourself in the head with a frying pan until the feeling goes away.”
You need to hire an absolute superstar, and recruiters are not in the business of helping you find superstars.
In fact, their incentives are exactly opposite yours. Here’s why.
Recruiters are like real estate salesmen: They make money when you hire someone. They make the same amount of money whether it takes you four days or four months to find that someone. So every day that passes, every additional resume you request, every additional interview you set up, the recruiter is making less and less money per hour.
In fact, there’s a floor that the recruiter can’t go below, so the more you take your time to find the right person the more they’ll push you to settle for someone you’ve already rejected.
The exception is a recruiter who works by the hour rather than for a hiring bounty. These are hard to find but they do exist. I’ve had luck only in this case.
Resumes are (mostly) useless
Think about your own resume. Is there anything on there that qualifies you to run your own company? Not just “experience” generically but really relevant knowledge? I’ll bet there’s very little. But it doesn’t matter, right?
Right, so it doesn’t matter with your first few employees either.
Resumes are useful only as talking points. That is, when you have a candidate on the phone, you can use the resume to ask about previous experience, test their knowledge of technologies they claim to have, etc. Resumes are conversation-starters, but they imply nothing about whether the person is right for you.
One particularly useful trick with resumes is to dig deep on a detail. Pick the weirdest technology in the list, or pick on one bullet point they listed two jobs ago that seems a little odd to you. Then go deep. Don’t let them say “It’s been a while” — if they can’t talk about it, how can they claim it’s experience they’re bringing along?
Writing skills are required
I don’t care if this person is going to spend 60 hours a week writing inscrutable code that only a Ruby interpreter could love. I don’t care if the job description is “sit in that corner and work multi-variate differential equations.” Everyone has to be able to communicate clearly.
In a modern startup everyone will be writing blog entries, twittering, facebooking, and God only knows what the hell other new Goddamn technology is coming next. But whatever it is you can bet it will require good communication skills.
In a small startup there’s no layer separating employees from customers. Everyone talks to everyone. You can’t have your company represented by someone who can’t be trusted with a customer. In fact, everyone needs to be able to not just talk to customers, but even sell them. Remember, tech support is sales!
In a small startup everyone has to understand each other’s nuances. There’s enough crap you’re having to figure out without also having to decipher an email. There’s enough about your business you don’t understand without having to understand garbage sentence fragments in a README file.
Therefore, some part of the interview process has to include free-form writing. In fact, there’s a particularly useful time for that….
Screen candidates with mini-essay questions
When you post a job listing — especially on large-scale sites like Monster or Craig’s List — expect a torrent of resumes. It’s not unusual to get 100 in a day. You need a time-efficient system for winnowing them down to a small handful worthy of an interview.
Screening resumes is not an option, because resumes are useless. Besides, you don’t have time to read hundreds of resumes.
Instead, prepare an email template that asks the applicant to write a few paragraphs on a few topics. For example:
Thanks for sending us your resume. The next step in our hiring process is for you to write a few paragraphs on each of the following topics. Please reply to this email address with your response:
- Why do you want to work at [company]?
- Describe a situation in your work-life where you failed.
- Describe a time when you accomplished something you thought was impossible. (Can be work-related or personal)
Thanks for your interest in [company] and I hope to hear from you soon.
Here’s what happens: First, most people never respond. Good riddance! Second, you’ll get lazy-ass responses like “I want to work at your company because I saw you are hiring” and ludicrous answers like “I have never failed at anything.”
Resist the temptation to reply with, “You just did.” That’s what assholes do.
Maybe 10% of the respondents will actually answer the questions, and you’ll know in two minutes whether this person can communicate and, yes, even whether they seem fun, intelligent, or interesting.
One exception to this rule: If the cover-letter is truly wonderful, that’s a rare, great sign and you can probably skip right to the phone interview.
Always be hiring
The rule of thumb is that it takes 3-6 months to hire a really good person. Why so long?
- Good people are rare, so it takes a while to dig them up. Like truffles. Or weeds.
- Good people won’t change jobs more often than once a year — probably more like every 3-4 years, especially if their employer appreciates their abilities and compensates them accordingly. So you have to find this person in their “once every three years” window.
- Good people gets lots of good job offers (yes, even in this economy) so when you do find one and give them the writing test and then the phone interview and then the in-person interview and then discuss compensation and then provide a formal written offer… there’s a good chance they just accepted an awesome offer somewhere else. (This happened to me all the time at Smart Bear. It’s happening now at WP Engine.)
This means if you start hiring when you really need someone, that’s too late. You’ll be “in need” for months.
This means you need to be hiring constantly.
So how do you “hire constantly” without being drowned in resumes and interviews? The answer comes from another attribute of good people:
- Good people choose where they want to work, not vice versa. They hear about a cool company, and when they’re interested in new work, they call you.
Your company has to be a place good people will seek, not where you have to go fishing. How do you manage that, especially when you’re small? Ideas:
- Develop your blog/Twitter so you have a steady stream of eyeballs from people who like you.
- Attend local meet-ups and user groups. Meet the woman who runs the group — she knows everyone worth knowing.
- Sponsor a meet-up at your office. Don’t have an office? Co-sponsor with someone who does, like another company or a co-working place. (OtherInbox is a great example of this; they sponsor the monthly Austin on Rails user group and the annual Lone Star Ruby Conference, and as a result all the best Ruby developers in Austin already want to work for OtherInbox.)
- Ask your friends for resumes of people they didn’t hire but who they liked. That is, people who are good but just weren’t a fit for that company.
- Try to get your “Jobs” page to rank well in local-only search. So e.g. “java programmer job in austin tx,” not something impossible like “java programmer.”
- Take everyone you know to lunch periodically and ask if they know of a candidate. Yes you can ask them by email but often being in-person brings out more information. Or maybe one of them will be interested himself. (That’s happened to me a few times.)
Don’t be trapped by what you think hiring “should” be
You’re hiring a friend, a trusted partner, someone you’ll be spending 10 hours a day with for the foreseeable future.
You’re not hiring a Systems Engineer III for IBM or a Senior Regional Sales Manager for Dell. The “rules” of HR don’t apply to you (except the law).
Think of it more like getting married than hiring an underling.
Going with your gut is not wrong.
Do you have more tips for hiring? Leave a comment and let’s keep this going!