Profile picture
Phil Freo @philfreo
, 29 tweets, 9 min read Read on Twitter
Let's talk ENGINEERING HIRING (especially for startups, and #remote)

I’ve been hiring on small startup eng teams for the past 8 years (most recently grown @Closeio's eng team from 2 to 14, before that at @quizlet).

👇Here's a thread with some mistakes & hard lessons learned...
Hiring is always hard. It does get easier over time, but it's always something you have to work super hard at. If you're not ready to put in really hard work, you won't be successful hiring.

Don't hire too early! Why not?
1. 😩 Hiring is hard & slow. Skip it as long as you can.
2. 💸 People cost $$$
3. ✅ Do the job yourself first. You'll be better at hiring for the role once you have.
4. 🚀 Small team = fast & nimble
5. 📈 Focus on what matters: building a product that people love.

Spending your time on hiring doesn't fix a startup's "default dead" state. What matters first is finding product-market fit with a product that people love. Customers paying you $.

Don't hire too LATE either! Why?

Hiring takes *forever*. Much longer than you’d think. If you wait too long to start, you'll be even further behind.
MISTAKE: At @Closeio, we started hiring way too late. We were heads down on building/supporting our product for the first few years. By the time we finally started, we were already in a bad spot. Then we failed at it since we still didn't make it a top priority at first.
So, when to hire?

1. Wait until you know you really need to. When your current processes are breaking. When you know you can’t accomplish your goals without more people

2. Then don't wait any longer. Make it a #1 priority. You must really commit to hiring.
When we finally did really put in a full effort to grow our engineering team, it started taking 50%+ of my time for many months. You can’t half do it and expect results.
WHO should you hire?

1. Aim high. Early engineers should:
- Be senior. No time for junior people in early days.
- Have leadership potential. You need people you don’t need to “manage”. Who you can hand large areas of responsibilities to.
- “Wow” you. Can you learn from them?
2. Don’t settle.

- The temptation is strong & happens every time… after a dozen mediocre interviews you start thinking you'll take anyone decent. Resist! DON’T SETTLE. The culture hit will slow you down. There are exceptional candidates out there – persevere to find them.
- Maybe = No. You should be excited & sold. If you’re not, there’s probably good reason. Trust your gut. If you think “maybe”, it's a great sign to reject.

- Hiring the wrong people = BAD. It can poison your culture, frustrate top performers, & set you down the wrong path.
First hires are the hardest roles to fill.

Early stage startups barely look like a real job to people. Tiny startups just aren’t for everyone. Most people need more structure and a more narrow job description than is typical for a very early startup employee.
First hires are the most important.

They’ll impact the caliber of your future hires. They'll help hire and attract the next engineers. They will (or should) become leaders. Early in startups, you want people who can learn and grow quickly as your startup grows.
Hire for your development bottlenecks.

Different stages of your company require different types of people.

Our first few engineers were “Full Stack” generalists able to go both deep & wide. As we grew it was time to start specializing in the area that was slowing us down most.
🤦‍♂️MISTAKE: Focusing only on technical qualifications

Must pay close attention to: Communication skills, maturity, attitude, desired work/life balance, experience working remotely, etc. You have to qualify candidates as an entire person, not just based on technical skills.
⁉️ Let's talk through HOW to Hire.

The steps are pretty obvious, but I'll share some learnings for each of them:
1. Prep work
2. Sourcing
3. Screening
4. Interviews
5. Offer
6. Onboarding (& beyond)
💎 But before we get there... let's talk "How to Stand Out" among all the other companies that are doing these exact same steps.

Stand out by making the whole process fun and respectful, and play to your strengths.
🤗 Be respectful

- Get back to candidates quickly. People appreciate this & so many companies don't! Setup email templates to make it easy.

- Even rejected candidates should leave w/a positive impression & want to tell their friends, even if they are a horrible fit themselves.
🤪 Make it fun!

- Interview questions should be connected in some way so the candidate feels like they are making progress, rather than just being asked a series of unrelated technical questions.

- Help them learn about your company throughout the process.
💪 Play to your strengths

There is something unique & attractive about you or the role that can help you stand out among the countless other jobs out there.

Advertise it clearly in your job description, mention it in your interviews, repeat it when you make a job offer, etc.
📝 How to hire: Do the Prep Work upfront

- Make sure your team has alignment on exactly the type of person you want
- Plan the entire hiring process upfront. Once interviews start it will be much harder if you’re winging it.

Image: example of document outline written upfront.
✍️Write the Job Description

MISTAKE: Just listing job requirements

1. Sell your company & the role. Remember great candidates have many options.
2. Be specific about what they'll do. List example projects.
3. Get feedback from other people who are good at that role
How to hire: SOURCING.

☯ 1. Outbound vs Inbound: You need to do both. Treat outbound differently (more casual & more selling) in early stages of the process.

💸 2. Recruiters. If you go this route, just be very careful about how they are representing your company.
👋 3. Your Network.

- Directly reach out to people you think are great – even/especially if you think they are happy in their current situation.
- Get everyone in your company to do the same
- Use social media (not as a replacement for 1-1 outreach though)
Example: When looking for our 1st Product Manager, I posted the Tweet shown.

A 2nd-degree connection (@heliostatic) simply Liked my tweet.

I noticed he was a Product person so I reached out via DM...

Today he's our wonderful PM!! 💪

Use social media + Reach out to network!
📣 Job Boards:

Easiest way to find candidates ($300 = your ad in front of many job seekers)

Avoid generic sites. Post on the *most targeted* job boards for your specific role. Examples:
- For Remote: @weworkremotely
- Frontend Devs: @CodePen
- Designers: @dribbblejobs
💯 Targeted Communities:

There are online & offline communities where your target audience hands out. @SlackHQ groups, tech newsletters, @Meetup, etc. Organizers are often happy to share highly targeted jobs.

Look for: industry-specific, location-specific, technology-specific.
🔥 Matching Sites:

Some sites serve as a nice middle-ground between inbound & outbound recruiting, where you can browse job seekers who match your needs: @AngelList (especially AList), @Hired_HQ, @triple_byte.
✉️ Targeted Outbound:

Good old-fashioned cold emails/DMs to people who look like a perfect fit for your role based on their exact experience. It can work, just don't be spammy.

Tip: Reach out to contributors of open source projects of yours or the libraries that you use.
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Phil Freo
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member and get exclusive features!

Premium member ($3.00/month or $30.00/year)

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!