Creating a Good Hiring Process (Part 1) 💼
How to plan for your team's growth and source candidates effectively.
Steve Jobs was obsessed with hiring.
He believed it was his most important job, and repeated this countless times in interviews and speeches.
My #1 job here at Apple is to make sure that the top 100 people are A+ players. And everything else will take care of itself. [...] If the top 50 people are right, it just cascades down throughout the whole organization. [...] A+ players hire A+ players, B players hire C players. Do you get it?
I have worked all my career in startups of various sizes. Startups are high-growth and have limited headcount, so each single person has an outsized impact on the business.
In such conditions, hiring well is a matter of life and death.
In fact, if hiring well fixes most problems, the converse is also true. The damage caused by one or two bad hires is immense, and can literally kill your company.
Joel Spolsky, legendary programmer and founder of Trello and Stack Overflow, explained this well:
It is much, much better to reject a good candidate than to accept a bad candidate. Bad employees demoralize the good employees. And they might be bad programmers but really nice people or maybe they really need this job, so you can’t bear to fire them, or you can’t fire them without pissing everybody off.
So how do you hire well?
🔄 Hiring Process
In the past couple of weeks I have talked with tens of managers and business owners about their hiring practices. In the Refactoring community this became the most discussed topic of all times 👇
Why are people so eager to talk about hiring?
Because, as you know, the market is incredibly hot today. I don’t know any manager who isn’t struggling to adapt to the new conditions brought on by the remote shift and The Great Resignation.
From these conversations, it is clear that good hiring is first and foremost a matter of process. You do it continuously, train people for it, and improve it over time.
Hiring well requires managing four main steps:
📈 Planning for growth
📑 Sourcing candidates
🔍 Selecting candidates
🤝 Converting candidates
This article covers the planning and sourcing stages, while the next will focus on selecting and converting. Together, this two-part series will cover everything you need to know about creating and managing a good hiring process.
These articles are also the result of the most extensive research I have ever done on a topic — which is well-deserved given its importance.
Let’s dive in 👇
📈 Planning for growth
Good hiring starts with good planning.
Julien Evano, Head of Engineering at IXUP, oversaw the hiring process of multiple startups at various stages, and told me his personal framework:
🗺️ Create a clear plan — for the teams’ structure, for now and future growth iterations.
🪜 Define a career progression framework — to bring consistency to the various roles.
👤 Identify the perfect profiles — that can complement the team.
🎖️ Prepare your team — for hiring, by appointing recruiters and allocating engineers time.
Such planning is key to making recruiting happen at the right time.
In high-growth environments, the business grows fast and so do the problems. It takes 6+ months to hire and onboard an engineer — in that time, a small issue may have turned into a gigantic bottleneck. You better act when problems are small.
Let’s look at each step in more detail 👇
🗺️ Plan your teams’ structure for growth
If your company has ambitious growth targets, like growing 2x or 3x in a given time, it is impossible to do so without significantly changing how the team is organized.
Anticipating such changes allows you to get clarity about the roles and profiles you need.
Here are two previous Refactoring articles that reflect on this:
To learn more, you can also check out the Structuring Teams section of the Library.
🪜 Define a career progression framework
As your company grows larger, you need consistency in the way you assess people’s skills and responsibilities. This looks trivial, but it is easy for different teams to end up with a different idea of what a Senior Engineer looks like.
Progression frameworks clarify what is expected by people in the various roles. Here is an example by CircleCI.
It can be simpler than that, of course, based on the stage of your company. Create something good enough to align stakeholders and avoid confusion.
For inspiration, check progression.fyi — a collection of frameworks from great tech companies around the world.
👤 Identify roles and profiles
After you have created your growth plan and a consistent definition of the various roles, you can ask yourself who you need to get on board.
Here are two crucial aspects you should plan for: