For a more detailed, process-oriented on hiring engineers, also see YC's How to Hire Handbook.
This post is advice for early stage startup founders who are hiring their first engineer. At this stage traditional recruiting methods e.g. hiring a recruiter won't work as well for you as they do for larger companies.
Hiring your first engineer at a startup is incredibly hard. As a founder you're already stretched dangerously thin on time. There are bugs to fix, customers to close and any number of urgent existential fires that demand your full attention. You know you should be spending more time on hiring but it's a battle to find it.
The bad news is even once you find the time, much of it will feel like wasted effort. Hiring isn't the kind of work that provides you constant dopamine hits. It involves a lot of dead ends and frustration.
Start by being clear on what exactly you're looking for. I'd recommend listing all the specific criteria your dream hire would have. This will be a combination of technical (are they a good engineer?) and non technical (would I work productively with them?). Then mark each candidate you interview against all these criteria and rigorously debate if you think they have enough strengths in some areas to make up for weaknesses in others.
In practice hiring decisions invariably involve tradeoffs. You could trade quality for speed by rejecting solid candidates to wait for the dream one. Or you could trade money for time by paying a candidate above market rate to join now. Founders should be aware of all these tradeoffs and make the one that's best for your circumstances.
Once you know what you're looking for, you're ready to start finding candidates. I'll go through the strategies available, starting with what I believe is most effective and working through to the least.
Note: As the founder of a hiring platform I'm not neutral in discussing their effectiveness. I have articulated both their advantages and disadvantages and we did make our own first engineering hire through Triplebyte.
This is the most important source by far. Once your startup scales it'll become less important as you'll have more budget to spend on recruiting tools and building a recruiting team. At the start though it's where you should exclusively focus your energy and only consider other sources when you've exhausted all possibilities here.
Hiring someone you've already worked with is your best option because you already know if you'll like working with them. How much you enjoy working with any single person matters less as you grow larger but for your first hire it could be the difference between persevering to success and shutting down the company. (Caveat: startups are also uniquely stressful environments and there's still some probability you might not enjoy working with your friend under this kind of stress as much as when you were both at a bigger company).
You'll also have a better chance to convince someone you know to take a risk and join you. Asking anyone to join as your first hire is asking for an order of magnitude greater commitment than pitching an investor to invest. With personal connections you'll know what would most motivate them to join and you can lean on friends to help convince them to make the leap.
Yet I'm surprised by how often founders don't fully explore their personal networks for hiring. It's easy to be quick in assuming that none of your friends are available before even asking them. It's understandable. Asking your friends to leave their jobs and take a risk with you is scary. It's also more awkward to be rejected by your friends than strangers. Still, if you're optimizing for the success of your startup you'll have to put this aside. Here's a plan you could follow:
For your first three engineering hires I'd recommend focusing exclusively on personal network hiring. As your team grows though you'll start thinking more about the composition and diversity of your team. Hiring through your personal network usually isn't the best option for this and the larger a team grows the harder it becomes to change the balance. After your first three hires, I'd suggest continue to work your personal network and supplementing with the strategies below to meet candidates your own network wouldn't reach.
Newer recruiting startups like us (Triplebyte) and Hired operate as marketplaces. There's candidates on one side and companies on the other. The value to candidates is increasing their number of options and to companies it's reducing their time to make hires.
These marketplaces are strictly inferior to using personal networks for your first hire. The good ones can attract high quality candidates but most will want to work somewhere that already has an engineering team. They also charge a fee per hire that will usually be around $25,000 for an experienced engineer. Whether that's good value for you depends on how much funding you've raised and how much founder time you'd have to spend on making that hire.
Candidates on these marketplaces are also speaking with multiple companies so you'll face competition. You can get success though (we've had startups make their first hire on Triplebyte). Your results will depend heavily on how effective your pitch and closing process is. I've seen a lot of variance in how effective companies are at this. An engineer hired at Gusto (YC W12) through Triplebyte blogged about how much difference there is between companies in just being responsive to him. To get the most from a hiring marketplace you need a polished pitch for why your company is an exciting place to work and a speedy process for moving them from first call to interview and offer.
Despite the disadvantages I still rank (good) hiring marketplaces as your second best option because they provide quick access to a pool of vetted, skilled engineers. The candidates on these marketplaces are mostly motivated to move jobs right now. You can quickly get on the phone to make your pitch and start interviewing the interested ones. This also helps you practice and improve both your pitch and calibration on what exactly you're looking for. Getting better at pitching will increase your success at hiring in general.
Some of the marketplaces will also do a rigorous technical evaluation of the candidates before accepting them onto the marketplace. If that evaluation is done well, you can skip your own pre-onsite technical screening and expect a higher conversion rate of onsite interviews to offer which saves you time. (The average direct to onsite to offer rate for Triplebyte candidates is 40% vs the industry standard of 20%).
As an early stage startup you likely won't get much organic inbound interest from good engineers. The quickest way to generate this is posting on job sites. However most job sites aren't frequented by high-quality engineers. They'll get you volume, not quality and volume alone isn't what you want. The majority of job applicants for any job posting are below the bar and it creates more work for you to filter them. The job postings I would recommend trying are on sites with a sizable engineering audience e.g. Stack Overflow Jobs, the monthly Hacker News “Who is hiring?" thread (Hacker News job postings themselves are only available to YC companies) and Angel List.
You can also create content that appeals to engineers to generate inbound interest. This is especially easy if you're working on a particularly exciting idea e.g. self-driving cars. As soon as you publicly announce what you're doing you'll get a burst of inbound applications. As this type of startup you'll always have a hiring advantage by having an easier time getting press and building brand recognition.
Developer tool companies also have an advantage. Your product is already interesting to engineers and you should be investing in writing good quality blog posts about it - both to attract customers and for hiring. Set a goal of writing an article that's Hacker News front page worthy at least once a month.
If you're not either of these types of companies you can still blog about the technical choices you've made. Have you made any controversial or unusual choices in your stack? If so, write about them. You may alienate some engineers who disagree but you may also capture the full attention of a few who agree strongly e.g. Cognito have especially strong views on testing and wrote about how they use mutation testing (https://blog.cognitohq.com/how-to-write-better-code-using-mutation-testing/). Not only does this get the attention of potential candidates, it creates content that you can also use include in cold outreach (more on that later).
A more time-intensive option is creating interactive content like coding challenges or puzzles, the Netflix algorithm contest being the most famous example. This can definitely work, Robby Walker, founder of Cue (acquired by Apple), wrote about how this worked well for them here (https://techcrunch.com/2013/03/08/programming-challenges-benefit-job-seekers-and-employers/). It's a high-risk strategy though. If you can't design something genuinely interesting then spending time on this will be a boondoggle. If you're confident in your ability to make something interesting then go for it but run your idea by some engineering friends first to see if it sparks interest.
Finally your inbound conversion will increase the higher quality your job posting is. Invest time in making it stand out. Larger companies default to generic job postings that all look and sound the same (often because they're literally using the same software to create them). As a startup you can do better. You could make your job posting personal by writing in the first person as founder about why you started this company. You could use an informal tone that doesn't read like corporate boilerplate. Experiment with what feels right but move away from blandness.
Cold outreach is messaging engineers online. This could be on career/recruiting specific platforms like LinkedIn or places where engineers spend time like Hacker News and GitHub. (One advantage a technical founding team has here is they'll already know where the best places are to look).
The challenge with cold outreach, especially on recruiting-specific platforms like LinkedIn, is the overwhelming number of messages good engineers receive on them. For your message to stand out from the crowd you need to put in work to make it personalized. Greg Brockman has some great advice (https://stripe.com/blog/startup-advice-cold-recruiting) on this.
You'll also see a greater return if you can hunt down email addresses rather than sending messages. If you're looking at profiles on LinkedIn, use the Connectifer (https://www.connectifier.com/) Chrome extension to get them. Otherwise do what you can to find an email address (sometimes people include them in their forum profiles or try finding a personal website that might have contact information). If you have any press articles or noteworthy mentions, I'd link to these in the message too. You also need to follow up and expect it'll take two or three emails before you get a reply.
This approach is how the majority of technical hiring at larger companies is done. Teams of recruiters reach out to candidates and optimize their messaging over time to get more responses. There are tools to help you with this optimization e.g. Sourceress and ZenSourcer. If you send enough messages this approach will work and can result in great hires. If you reach people just before they've started interviewing and move quickly, you'll have a much higher chance of closing them.
The disadvantage is it's very time consuming and will feel draining. The majority of your messages won't get replied and you'll be tempted to give up. You'll have to commit to spending a certain amount of time per day sending emails and messages. One time saving trick you can consider is giving someone else access to your email and paying them to send the messages on your behalf then you handle the replies. How comfortable you feel doing that is of course your call.
It's hard to estimate how quickly you might be able to hire through cold outreach. If you're lucky you could get the right person in for an interview next week. More realistically, I'd expect this approach to take up to 6 months before it results in a hire.
Hiring a technical recruiter to make your first engineering hire is hard to make work. The strategy they'll probably use is cold outreach and it's unlikely they'll achieve higher response rates than messages coming from a founder.
What a recruiter does have more of than you is time and focus. They can send more messages per day and this could get more candidates replying if the gap between their effectiveness and yours is narrow enough. My recommendation if you go down this route would be to find recruiters who work on a contract basis. You can agree on a rate per hour, how many hours they'll work per week and for what period of time. Then if they're producing candidates, great. If not, you cancel the contract. Anecdotally, I'm noticing a trend where more of the best recruiters at companies are starting to work as independent contractors for multiple startups.
Before working with a recruiter make sure you've invested time in really training them on how to pitch your company well. I'd give them all the information they need, give them a day to prepare and then ask them to pitch it back to you. Only work with them if they do this well.
Meetups are difficult to rank on this list because their effectiveness has high variance depending on both the type of event and the type of person you are. Meetups that are primarily business conferences with corporate sponsors who send along some members of their IT department are almost certainly a complete waste of time. Smaller, informal meetups with a deeply technical agenda where people bring laptops and code can be great. Even these will still only be an effective strategy if you're either:
(1) An engineer who can gain the respect of other engineers through technical conversation. (2) A highly charismatic personality
You need to honestly decide if you're either of these. If you're unsure whether you are (2), you probably aren't. If you're (1) and tend to avoid group meetups, you'll have to get over this if you're the only technical founder. Convincing engineers to join is one sales job you can't delegate entirely to your cofounder.
Even if you attend great technical meetups and you're the right type of personality, it's still unlikely you'll make a good hire quickly through this channel. The better meetups have fewer people and they're primarily not there to find a job. It's a good way to build a network of smart people, which will become valuable as you scale, but not a good bet to solve your problem right now.
Traditional recruiting agencies tend to have bad adverse selection bias on the candidates they can engage. Most good engineers won't work with them and the engineers that do are being sent out to as many companies as possible. I can't think of a startup I know that made their first engineering hire through a recruiting agency. While I'm sure there are counter examples, it's more likely using an agency will suck up a lot of your time with little ROI. The best agencies tend to focus more on executive level hiring which won't be helpful for you.
As I said at the start, hiring your first engineer is incredibly hard unless you're lucky enough to have a friend you can convince to join. To make any other strategy work you need to treat hiring like you did fundraising and start by refining your message and pitch. Candidates think differently to investors and you'll need to tweak the message that worked for your fundraise e.g. candidates will think less about your market size and more about your most interesting product challenges.
Once you understand what resonates most about your company with engineers you can switch gears to working through channels to get that message out to potential candidates. Then be prepared for a lot of struggle and rejection until you find the right person. Good luck!
If there are any other strategies you've tried with success that should be added here, please do email me ((redacted)), I'd love to hear them.
If you're hiring engineers and would like to try Triplebyte, use this link to sign up and you'll get a special $15,000 hiring fee for your first hire