Anyone who has ever worked with me knows I am passionate about hiring only the best. I don’t understand how you can expect to double revenue every 12-18 months, year-after-year, with anyone less than superstars. Besides, one of the main points of starting your own business is that you get to work with great people!
Joel Spolsky from JoelonSoftware recently had some good posts on recruiting that I wanted to share with my current and future co-workers. Joel published a trilogy:
I usually agree with Joel, because we share the same strategy: hire the best programmers possible and make sure they have all the tools they need to succeed. Overall the posts were good, but I was surprised by how much I disagree with two aspects of his in person interviewing tactics.
I have heard of companies that allow any interviewer to reject a candidate. This strikes me as a little bit too aggressive; I would probably allow any senior person to reject a candidate but would not reject someone just because one junior person didn’t like them.
I completely disagree... be aggressive... if one person does not think the candidate is a fit, don’t hire them. Your staff is smart, trust their judgment. I have seen great developer candidates treat junior staff poorly -- this is a problem. If anyone on your team believes that a candidate won’t excel in your company, immediately show them the door. In fairness to them, their time is valuable (and so is yours).
At the companies I start, I always make sure a very junior person is part of the recruiting process. As a Founder or Board Member, I get the candidate’s “best behavior.” To build a great team, you need to see how people will interact with others who are more junior and at the same level as well as with those who are more senior.
Joel also says:
Don’t try to interview a bunch of people at the same time. It’s just not fair. Each interview should consist of one interviewer and one interviewee, in a room with a door that closes and a whiteboard.
I disagree: make sure that at least one interview is in a group. I have seen candidates that are great charmers one-on-one, but get them in a group and their communication and social skills -- and sometimes even their analytical abilities -- blow up. Good one-on-one interviewees are able to read the interviewer and adjust their answers and how they present themselves accordingly. In a group, candidates act more as they naturally would as part of a team.
Also, I strongly believe in bringing a candidate in to interview multiple times. Interviewing a bunch of people on the same day can show you how someone will act under pressure. Life at a start-up is fast-paced and if someone is thrown by that, they probably aren’t a good fit – at least for my companies.
Why am I so committed to process? Because as Joel so eloquently points out:
It’s because it is much, much better to reject a good candidate than to accept a bad candidate. A bad candidate will cost a lot of money and effort and waste other people’s time fixing all their bugs….. Bad employees demoralize the good employees.
I look forward to more posts from Joel about recruiting, although he may not always be right, we can count on Joel to keep us thinking about the all important process of recruiting.