Hiring the first five Good Engineers in your team requires a different approach as compared to hiring the next twenty. The approach to designing this process will be even more different when grow your team up to a hundred Good Engineers, or even more.
Should you start from the top hires? Or should you being with a few really Good Engineers, and then help them to scale?
This post will cover some concepts on designing efficient, useful processes to help Tech Leads who are building fast-growing engineering teams from scratch. This post may also be useful for people working in super niche fields who want to build and scale engineering teams for continued growth.
There is never only one way to start building a team of Good Engineers. Many of the mobile apps we use daily today are known for having small teams of Good Engineers who built great products:
WhatsApp finished building their initial product with 32 engineers
Skype's product was built by 5 engineers
Instagram's first team only had 13 employees in total
Small teams that prefer to always remain small face a different set of challenges.
If you want to start with a small team - and remain small on purpose - every single one you hire in your small team will need to have a warrior spirit, because the battles will be harder.
Your small team of Good Engineers should be ready to fight everyday for the right to be a player in the market where you are.
They will need to be more eager, more hungry, and more customer-minded than others. To fight off the big guys, sometimes the Good Engineers needs to be battle-worn, battle-tried.
The battle-tried Good Engineer has faced many of the situations you too will face, such as:
- How do you handle outages that cause the entire product to be down?
- How do you release a lot of features simultaneously without disrupting users?
The Good Engineer you wish to hire has proved his mettle before in dealing with these situations. Any engineer you add into your small team has to have some of that warrior spirit.
Follow the wisdom
Many of the top technology companies today have had great success in hiring Good Engineers, as they put in plenty of effort and research to design processes that work extremely well.
My recommendation to you would be to follow the wisdom of these best practices that have been adopted by the top companies. It may be better to not innovate in existing processes that have been proven to work well.
Many of these processes are well documented and shared about on sites like Quora and Glassdoor. Often, there are weak points in these processes when top companies deal with volume: the human touch is usually missing in the robust procedure for identifying a Good Engineer, due to the large number of inbound applicants these companies tend to receive.
Too many interviews, tests, and coding assignment rounds, and too little human touch = bad design for hiring a team of Good Engineers
Firstly, decide on the first and last point of interaction between the Good Engineer and your team. In the same vein, determine what your first and last hire will look like.
These human interaction points will play a part in shaping your existing team as well. Think about how you and your team can help to share what you're trying to do around what you are trying to build, around your branding, team, and product.
To find your next Good Engineer hire, you can start by identifying the active applicants who have a shorter time frame in finding their next gig, as well as those who are more passive. Good Engineers who are slowly looking around for a better opportunity are likely to stay put for the time being if they aren't able to find any good ones.
Depending on the number of active versus passive candidates who can be potential team mates, design a way for yourself to spend time with both, adding a laser focus on spending your time on those who matter more in the long run.
Some companies re-design their candidate experience based on the complaints of unhappy Good Engineers who were not able to reach an agreeable offer for various reasons. However, your time is better spent on addressing issues and concerns of passive, talented, 10x Good Engineers who may be looking for just a few more reasons that will validate their choice on taking a chance to join your team.
Now, to shatter some illusions
First, the illusion that there are always more Good Engineers out there.
When you have found a truly Good Engineer, he or she is simply irreplaceable. I believe this Good Engineer can potentially help drive successful processes to help you hire the next hundred Good Engineers as I've personally witnessed this happen.
And as they also carry great value in product knowledge, systems design, and design thinking, they will be able to exert an influence over their colleagues which, when lost, has an immeasurable impact on internal culture.
If you are a Tech Lead who thinks otherwise - if you adopt the attitude that there might be someone out there with a more prestigious profile, or a better skill-set - this can be detrimental to your whole team in the end.
Next, don't forget to allocate resources for hiring solid fighters (the 10x Good Engineer).
Money should not be the main deterrent to you when you find that 10x Good Engineer. Every team should have a rockstar budget for these top engineers.
"A 10x programmer is, in the mythology of programming, a programmer that can do ten times the work of another normal programmer, where for normal programmer we can imagine one good at doing its work, but without the magical abilities of the 10x programmer." - Antirez, The mythical 10x programmer
Also, the illusion that small teams can afford to not think about diversity.
Don't forget about diversity, equality, and inclusion. Even in small teams, diversity - this means hiring a Good Engineer coming from a completely different background from you and other team members - brings distinct advantages.
Remember to give everyone an equal chance to join your team by eliminating as many obvious biases as possible. To understand inclusion, simply remember this: when you invite someone "different" to the party, make them feel like they are not only invited, but make them feel like they are really one of you! There's something to be said for teams that champion all three.
Finally, do a fast game, but not too fast!
If you bring in Good Engineers too fast and furious without a proper approach, some parts of the moving equation will prove to be detrimental to their success.
If you are not setting them up for success, the Good Engineer will find it hard to match the fit prerogatives, and fail, fast. Being fast at hiring Good Engineers should not be the only success metric you hold yourself to.
The recipe so far
Start Small + Follow the Wisdom + Shatter Illusions
Now, if you are ready to design your process, consider these 4 steps for designing a robust process.
Step 1: Make a REALLY good List
If you do decide to only hire the top 2 to 5% of Good Engineers with a relevant tech stack and industry expertise, understand that you are making your process 100 times harder. Sometimes this means that you have to process 500 profiles in order to hire 5 to 10 Good Engineers. This will take months at least, unless you have vast resources.
Add to your list those Good Engineers who are open-source committers, top engineers from the leading technology companies who are in your location. Even if they do not join your team now, they will be able to recommend others - Good Engineers attract Good Engineers, and these activities of yours will be discussed in engineering communities.
Once you have already recognized all profiles from LinkedIn, Github is the next battleground to look up.
Step 2: Determine technical fit
I don't recommend the technical phone screen for every single engineering role as cybersecurity and niche data engineering processes can be designed differently, and frontend, full-stack, and product or mobile engineering hiring can benefit from a process to review their portfolio and design thinking.
However, most top companies assign tests as the pre-screening round that can be a timed coding test with relevancy, a technical phone screen, a recruiter screen for the role, scope, and culture fit. Or, a take-home assignment involving designing elements crucial for success in the role.
Many top companies design this first part to take 1 to 2 hours of the candidates' time initially, while the phone screen can range from 20 minutes to 1.5 hours.
Step 3: Determine culture and team fit based off group interviews
The outcome you should look for is that, ideally, every one of your warriors should feel comfortable fighting alongside this battle-ready Good Engineer. Misgivings and possible gaps can always be improved on while working on the product together.
Also check if the Good Engineer can work well with others in design, product, and data functions, as well as communicate reasonably well to someone outside your engineering organization. Any HR or recruitment professional can help check if the engineer possesses a few of these critical soft skills that you need, such as communication to stakeholders, business acumen, or excitement in helping solve customer issues. Don't skip this step!
Step 4: Optimize your process to "Always Be Closing"
Most talent acquisition professionals abide by the "always be closing" mantra - they are selective in the people they talk to, and eventually feel proud to represent to top companies. They also choose the roles they want to focus on - usually these are the easier roles to fulfill - according to their expertise.
It could be a good idea to identify the members in your team who are really "strict" interviewers - we call them "bar-raisers" - and only send the best profiles across to them. Normal profiles can be sent to other Good Engineers for interviewing, so as not to burn out this bar-raiser.
By following this method, we can effectively predict the pipeline of candidates and expedite those who have passed well in the bar-raiser round. Always know your reasons for declining a candidate, and always be involved in the interview rounds no matter how big your team gets.
Your efforts will definitely be discussed by others, so it's also a good idea to frequently check in with peers, board members, and technical advisors, especially if you find a senior candidate who had overlapping tenures with them. Your board and peers could provide useful information about this candidate or other interesting details that enable you to enhance your decision making process and improve your future hiring process as well.
If you did not manage to optimize your approach, a possible outcome is that you will be wasting valuable time of your existing engineers. One hour spent in a bad interview is one hour less that could be spent on coding for your product.
I think it is a good idea to personally spend more time with all Good Engineer candidates on an informal basis, if you feel that the 1 hour or 1.5 hour session did not suffice to determine if he or she is a suitable hire.
Many Good Engineers will seem to possess all the right credentials, but in the mid-term to long-term, there will always be some who are much better for your team.
Aim for a flat structure, even if you get big one day. Companies like Facebook and Grab still try to keep their Engineering structure as flat as possible.
Company after company who rose to greatness often struggle with scale. The first point to the last point of interaction is always important for the candidate experience - your branding is important if you want to build a strong team from the first hire to the last.
Hire the really talented, 10x Good Engineer, and the rest will follow. Ensure your small team still stands for diversity, equality, and inclusion
Always be closing, but don't forget to have fun. Your current challenge will always be to hire the people who really want to see you succeed!
I contributed to this article in my personal capacity and the views expressed are my own and do not represent the views of the organization I work for.
This article was first published on LinkedIn.
Inspired? Go one step further and find your next star engineer on our marketplace now. Sign up for 100offer here: