Engineering Recruiting Lessons Learned
Attracting and retaining top talent is one of the most valuable ways to spend your time. Your company’s success output depends on the quality of your team, so it’s certainly worth thinking about how to improve your sourcing and recruiting processes.
I’ve always known that recruiting was important and did a little bit of it at Priceonomics & LendingHome, but actually running a recruiting process and being a hiring manager was a new challenge for me. In late 2018, I was asked to hire five engineers in a short period of time, and it was a really rewarding experience.
I attribute a large part of our success to the incredible support and effort from other teams, which allowed us not only to hit our recruiting goals, but exceed them. We hired experienced engineers who had competing offers from Google, Facebook, Instagram, and a slew of competing companies. In fact, two new hires remarked that our company’s recruiting process was the best recruiting experience they’d been through.
This post is a distillation of what I learned, with one section dedicated to each step of the recruiting process.
The process used to recruit at a 300+ person company will (and probably should) differ from one at a five person startup, and that’ll be different from the process at a multinational corporation. There’s no one-size fits all when it comes to process. That said, regardless of your company stage and size, there are some rough principles that hold true regardless of company stage. In this post, I’ll focus on those things that I believe should always hold true.
Roughly, the recruiting process can be distilled into five key parts: 1) the process of defining a need; 2) sourcing candidates; 3) recruiting and/or qualifying, 4) closing, and; 5) on-boarding the new hires ensuring they are productive and happy members of the team.
Defining the Need
Define Requisitions Clearly
It is important that the the recruiting process be both efficient and effective. Thus, the first step in the recruiting process is defining clear requirements for the job description: what kind of candidate are you looking for. There is no such thing as a universally good candidate, so how people do in your interview loop depends on the role for which you’re hiring. Said differently, interviewing a great candidate for a job that is not compatible with their skill set is a poor use of time on both ends, yours and theirs. As such, you must clearly define the role and make sure that everybody involved in the hiring loop is aligned and understands the role. To the extent that it’s possible, make any necessary changes to the job description before you start talking to candidates. Making a change to a new job requisition is a 10-minute conversation early on; later on it’s a four-hour discussion because your sourcing team is actively looking for candidates. Soon after, it can turn into a month-long ordeal when you have to re-allocate headcount because you didn’t clearly define your team’s needs from the outset. It’s a lot of work to do in the beginning, but clearly defining the role you’re hiring for is the best use of your time at this stage. Taken to the extreme there is paralysis analysis. We want to bias towards action, so do whatever you can to make sure the job description is accurate, then move forward knowing that you might need to make adjustments along the way. Invest in Job Posts I’d recommend spending no less than 2 hours per job post. Treat this like you’d treat an advertising campaign, or a pitch to investors. The same way you’d invest a lot of time in making sure your fundraising deck is perfect, you should invest just as much effort into writing a good job post. Fundraising decks are normally private; job postings are public-facing. While it’s free to say that you care about attracting good candidates, the quality of your company’s job postings shows how much you actually do. Polish, spell-check, proofread, and consider using services like Textio to make sure you’re making a good first impression. In the early stages, especially as a young company, a job posting might be one of the only pieces of information candidates have about you. Good candidates are perceptive and notice the small details. If you’re looking to hire an engineer who is detail-oriented and understands how things work, typos and mistakes in job posts are an anathema. A good job posting is like a well-phrased question: the purpose is to show what the job/company/culture is actually like, so that at the end they can decide if they’re interested in what you have to offer. Writing a job post that makes your company look like something it’s not is a bad use of your time, and also candidates’ time. Every company can have a values page where they talk about what they want to stand for, but if you really want to learn what a company is about, go through its hiring loop. Sourcing Candidates Sourcing is the process of finding qualified candidates and getting them into your company’s hiring pipeline. Different companies do this in different ways: some practice full-stack recruiting where recruiters also source candidates; others have dedicating sourcing teams who might reach out to candidates, or pass their contact information over to a recruiter who manages initial outreach. Regardless of how you might do it, here are a few key things I’ve learned about sourcing effectively: Focus on Referrals Employee Referrals are one of the best ways to identify good candidates. It’s really easy, too, because referrals often convert at a higher rate and are more responsive to your messages since they have a shared connection. Referrals can be orders of magnitude more effective than traditional sourcing channels, so you should be willing to do pretty much anything to get referrals from your team. I’ve seen companies hold sourcing meetings where everybody gets into a conference room and each person goes through their LinkedIn network, but I think that you should be willing to invest even more time into finding referrals. You need to sit with each team member individually and really ask them who they’d want to work with again. One common objection: “I don’t know [person] well enough to ask them for referrals.” If this were an engineering project, could you make the same excuse? Most people don’t know each other at a company. Talent is the stuff that builds great companies, so you should be willing to invest the time to build relationships. Another added effect: by investing both of your time and meeting in-person, you’re more likely to build a better relationship with them and also get more context about the people to whom you’ll be reaching out. Candidates who might not be looking right now could be really good prospects in the future. Someone who looks good on LinkedIn might not be a great fit for your company. Measure Top of Funnel When sourcing, focus on changing what you can control and track the things that are important but aren’t directly within your control. For instance, while you can’t directly impact the accept rate and whether your team hits its hiring goals, you can control the number of applications you review and the number of candidates you reach out to by generating more lead lists or finding more sources of candidates. Let’s say your hiring funnel top-to-bottom has a 1% conversion rate - meaning that on average, for every 100 applications you review, you might make one hire. If you need to hire 10 people in a quarter, you need to find about 1,000 resumes. If you want to be conservative, aim for 2,000. Weigh Outreach Effort by Expected Value Prioritize outreach efforts by the volume of leads you’ll generate per hour of effort. For example, writing an interesting technical blog post could be a good way for people to find out about you, but if you can generate 10x the same quality of lead volume by looking through LinkedIn, do that first. When is the Best Time to Reach Out to Candidates? Right now. Recruiting & Qualifying Once you have a candidate in your pipeline, you need to learn build a relationship, learn about them, evaluate their skills, and have them go through your company’s interview process. Make the Process Seamless Think about the last time you had a delightful sales experience. How did it make you feel? Candidates should enjoy talking to you: you should do everything in your power to understand them and make them feel comfortable. Everybody has their own motivations and needs; one of the most powerful things you can do is to just listen and remember these things. Be Their Advocate & Minimize Hand-Offs Information and context is key in recruiting, and information usually gets lost during handoffs. Even with the best documentation, when it comes to recruiting, it’s a competitive advantage to minimize the number of times a candidate gets “handed off” from one person to another. For example, if a candidate has their first conversation, then gets passed to the recruiter for team A, speaks to the recruiter for team B, speaks to the hiring manager from team B, and then has a negotiation call with the recruiter for team B, how do you think they would feel about somebody at your company really understanding their needs and what they’re looking to spend the next 2-4 years of their life on? Who should the candidate speak to in your company when your competitor gives them an exploding offer? What about if they have a question related to stock options? Now imagine if instead of being passed off four times, one person was the go-to person who the candidate could always talk to. This worked quite well for us - we did not lose a single candidate due to emails getting lost or because of the time it takes to schedule a meeting on a busy calendar. On an even more basic level, having one advocate per candidate allows you to best understand and serve their needs. For instance, if a candidate mentions they have a dietary restriction, make an effort to provide them something they can eat when they come by the office. Showing that you care about your people elevates your company and its culture; done over the long term, this turns into a halo effect. The best people want to work at your company now. Lastly, do more than just recruit - be their advocate as they go through the recruiting process. One way of doing that is by giving candidates your personal phone number and encouraging them to text you if/when they had any questions. Be Mindful of their Time; Move Quickly by Default Move quickly during the hiring process. You can out-recruit your competitors by moving faster:never delay things that can be done right now. Basically, the candidate should never have to wait more than a day for your company to do something. In an ideal world, all latency comes from the candidate’s side. Need to schedule a candidate round-up? Well, we can do it on Tuesday when everyone is back in town, or we could also do it in an hour but Bill might have to move his 1:1 to an hour later. The round-up should take preference over almost everything else. Schedule the round up proportionally to how much you value recruiting. Listen Hiring is a form of sales, in which you’re selling a candidate on joining your company, in turn, leaving what they’re currently doing. As such, it helps to read up traditional sales as much as possible. I emailed the 10 best salespeople I could think of in my network, and the most common piece of advice was to listen to candidates. This sounds obvious, (aka what kind of salesperson wouldn’t listen), but I can say there’s a huge difference for what you can learn about someone if you just listen. Moreover, it pays to be detail-oriented. Hiring is naturally a hard process, so going above and beyond in the recruiting process means that you have a competitive advantage over other companies. At the end of the day, you’re selling your company to a candidate/their spouse/family, so do whatever you need to do to guide them to making the right choice. Closing Candidates Complete Round-ups ASAP Schedule your candidate round-ups the same day - the best time is after the candidate leaves and everybody has had 15-20 minutes to collect their thoughts and make a decision. Have a Tactical Closing Plan Create tactical closing plans. I don’t worry about being the first to offer, or the last to offer. The more precise, the better. The same way you’d scope out work and delegate responsibilities in an engineering project, do the exact same thing with the goal of closing the candidate. Think about everything you know about the candidate, and figure out how you might add value to their job search. Candidate worked at Google? Great, we they should talk to [Google alum] who works here and also went to their same undergrad program. Schedule Calls with Executives I did the math for this a long time ago and found out that sell calls can be worth as much as $15,000/hour. Meet with these executives ahead of time, share information about the candidate, and make sure you’re all in sync on the details. Execs can have busy schedules, so schedule blocks of time on their calendars before you need it. If they care about attracting and retaining talented people, they shouldn’t have a problem blocking off 1-2 hours each week. Be Willing to Compromise Getting to this phase with any candidate takes a lot of time/effort - both for your company but also for the candidate. Willingness to compromise shows that you’re serious and will entertain reasonable asks. See the section below on hiring funnel economics - this is a case where being flexible is also the best use of time and money. See the section on hiring funnel economics on why flexibility is the rational choice, especially at this stage. Go Above and Beyond Go above and beyond and do things that won’t scale. Invite candidates out for dinner. Put them in touch with someone who can explain how stock options work. If you want to get the best candidates, you must be willing to do things that don’t scale. Recruiting is scaling the company, so doing something bespoke for a candidate is worthwhile. In this current hiring market, good candidates have the choice between many different competing offers. Your goal here is to make a hiring loop so compelling that the decision criteria ceases to be your company having a 1/N chance, rather, you want the conversation to be about joining your company or not joining your company. Onboarding Remember how you felt on day 1 at your company. Maybe it was a little bit overwhelming. Now take that feeling and double it since the company has grown, and there are 100 new faces and names to remember. This sort of experience will always be a little bit stressful, but you should do everything within your power to make it as seamless as possible. Your work isn’t done until they’ve shipped their first feature, and are comfortable enough that they can lead other engineers through the process. Some things to help with onboarding: • Provision their computer / all hardware before their first day. There’s nothing worse than having to spend your first few days waiting for your laptop or 2FA device to be provisioned. • Show up early on their first day. Greet them at the door. Remember: your job isn’t done until they’re happy and productive team members. • Have their first week planned. • Ask for feedback and improve: what did they think of the process? What could you have done better? You need to get this information from new hires because veterans might be set in their ways of how and why things get done. I think the right time to ask is the 2- or 4- week mark. Things to Remember Add Value at Every Step Candidates are investing their time in your company. Whenever you can, find some way to give value back. Examples: • You said you wanted to learn Go? What’s your mailing address? We’d love to send you a great Go book that a few people on our team read and really enjoyed. • You mentioned that you’re doing a side project where you’re building out a data pipeline using Redshift? Want me to set up a quick call with someone from our data team and you can exchange notes? • It looks like you’ve worked exclusively at public companies before - I’m guessing compensation was done with RSUs. Stock options can be a little bit overwhelming at first - want to hop on a quick call and I can walk you through calculating the value of your option package? Feel free to use this calculator for offers you get from other companies as well - we want you to make the best choice for you. Hiring Funnel Economics This one was a bit non-obvious but really changed my perspective: hiring funnels are very unforgiving in surprising ways. Here’s why: Let’s say your hiring funnel looks like this: Pass Rates: * Application Review -> Recruiter Call: 33% * Recruiter Call -> Tech Screen: 50% * Tech Screen -> Hiring Manager Call: 50% * HM Call -> On-site: 50% * On-site -> Offer: 50% * Offer -> Accept Offer: 50% Average Time for: * Recruiter Call: 30 min * Tech Screen: 1hr * HM Call: 30 min * On-Site: 8hr Your top-to-close rate is about 1%. Statistically, for every 100 resumes you review, you might hire one candidate. You have a candidate at the offer stage and they ask you to match their competitor’s offer by increasing cash comp by $10,000/year, and you obstinately refuse because they didn’t give you a good reason. This unwillingness to compromise means you’ll have to source another 65 candidates to get another person back to this phase; numbers only tell a small part of the story. To get another candidate to this point, it’ll cost 11 hours of recruiter time and 60 hours of engineering time. Assuming calls are scheduled instantly (this is never the case) and that engineers can context switch perfectly (I wish), conservatively estimated, that’s $20,000 of people’s time alone. All of a sudden, an extra $10,000 actually looks like the rational investment for the right candidate. Closing Thoughts If you don’t make recruiting your top priority, you’ll be beaten by your competitors that do. Making time for recruiting is like skipping a social commitment so that you go to the gym: it’s sometimes inconvenient but long term a very valuable use of time.