William and I were 22 and 24 respectively when we started Plaid, and thus had a limited network of friends and colleagues from which we could hire. Our early recruiting efforts were therefore almost entirely outbound for the first few years. Our candidate pool is now more balanced across referrals, new grad, and inbound - but we still place a major emphasis on outbound sourcing.
Over the past five years, I’ve personally sent nearly 2,000 outbound sourcing emails, and our combined team has sent more than 10,000. We’ve iterated across a number of different tools, channels, and processes - a few of which I’ll share here. What we found was that outbound sourcing - if done correctly - can generate an consistent, high-quality candidate pool to serve as the baseline for your recruiting pipeline.
Identifying Candidates
We’ve varied the channels we use to find candidates over the years, but have consistently found LinkedIn to be the best.
- Angellist. Historically, Angellist was an incredible — and often-overlooked (which means less competition) — source of candidates. Recently though, they launched a paid version of their jobs board called Source. It’s still good, but has much less engagement than the older free version. Be sure to filter by candidates that have been active in the last few weeks.
- GitHub. Incredible source of candidates, but difficult to geographically filter. Hard to build a local pipeline, but works well for distributed teams.
- Hired / AList / Triplebyte. Good if you’re desperate and are willing to pay, but it’s more valuable long-term to build your own funnel. These candidates are highly competitive and often more mercenary than mission-driven. They also tend to attract junior-to-mid-level candidates, and few senior engineers or managers.
- LinkedIn. This is the best place to identify candidates. Pay for an upgrade that gives you access to search filters (I recommend Sales Navigator), and spend some time learning to use their boolean search.
Making Contact
In general, email is the best communication channel — and for engineers, it’s the only one that works. Candidates for certain roles — especially Sales, BD, and Recruiting — will sometimes respond to InMail; however, I’ve found that on-platform communication channels at best generate the same response rate as email.
Now that you’ve identified a great candidate, how do you find their email? There are a set of plugins that match social profiles with email addresses. LinkedIn has a habit of buying these products and shutting them down (Rapportive, Connectifier), but ContactOut still works well. My favorite end-to-end product is TopFunnel. When searching for emails, try to avoid work addresses - it’s awkward to receive recruiting email on your company’s domain.
Reaching Out
- Be brief. Say the bare minimum required to generate an in-person or phone chat. I’ve A/B tested a lot of emails, and find that lengthy descriptions of the company or the role reduce conversions. Don’t sell - it feels disingenuous, and is better done in-person.
- Personalize your message. Many cold emails sent by recruiters are poorly written copy-pastes, with no personalization. If you’re going to reach out, include a personal note to the candidate that shows you understand and appreciate them specifically.
- Follow up. I used to avoid sending follow-ups thinking that it might feel spammy, but after testing found that it nearly doubles the response rate. Many candidates simply forget to respond to the first email. If you do send follow-ups, be respectful and send only one.
- Send emails from non-recruiters. It’s much nicer to receive an email from an engineering manager than from a recruiter. William and I personally spend time sending cold emails, and expect our managers to do the same. As a candidate, it’s meaningful to see a personal email from a founder — and conversion rates will be much higher.
- Make sure you have time for follow-up. If you invite a candidate for coffee or lunch, make sure you actually have time to do it. A great candidate experience can turn into a horrible one if you have to reschedule multiple times. I often prefer to do a phone chat before suggesting an in-person meeting.
- Track and iterate. Keep track of your response rates, and test multiple strategies. There tend to be certain times of the day, week, and year that generate higher response rates for some roles.
Example Email
Hey [Name] - Zach here, co-founder of Plaid. Wanted to see if you'd be open to discussing a role with us. The work you’ve been doing on [Project] at [Company] is fascinating, similar to [project at Plaid].
Would love to chat - do you have a few minutes to jump on the phone at some stage later this week or next?
Looking forward,
Zach