Startups Should Hire More Engineers Than They Think They Need
In a startup, if you think you need five engineers, aim to hire ten. Why?
First, you don’t know the complexity of what you’re building, ahead of time. You discover it only as you go along. You might set out to build a bicycle, but when you look back after you’ve built it, you realise you ended up building a car. Things invariably take more effort to build than foreseen. You need to be ready for that, by staffing up more than you think you need.
Second, users ask for what they want without caring about how complex it is to build. You can’t be in a situation where you can’t deliver what is needed because you have a barebones team.
Third, a good fraction of your people won’t work out. One may slack off. One may turn out to not be skilled. One may turn out to have joined your company only to have startup experience on his CV. One may create a lot of drama or otherwise be toxic to the team. Others won’t take initiative. And still others need daily babysitting from their manager. When you add up all these, a good fraction of the people won’t work out. It’s like transporting 100 kg of oranges — some will rot, some will be crushed, some will turn out to be sweet limes, some will have worms, and some will go unsold. Maybe only 50 kg of oranges will actually be sold to customers. Similarly, you should take a statistical approach to people. Some fraction won’t work out, no matter what you think. Once you accept that, there’s only one possible conclusion: hire more than you think you need, for a margin of safety.
Fourth, hiring has a lead time — if you decide today to hire someone, it may take you some time to figure out what you expect from the person. Then it may take you a month or two to find the right person to make an offer to. They may not accept, or they may accept and after you wait for them to serve their notice period, they may ditch you, making you restart the whole process. Once they join, they take two quarters to be fully productive. Ignore the hyperbole about hitting the ground running. Few can actually do that. When you add up all the above delays, it takes a year. Which means you need to plan a year ahead. Which we can’t do in such a fast-moving environment as a startup where things change day to day. This means you need to over-hire for today’s needs to be able to handle the needs that will be present by the time the new person is productive.
Fifth, the job market goes through periods when people are not available. We’re in such a period now in India. In my startup, a few years back, I went through a period when I couldn’t hire even one person in six months. I don’t know why this happens, but it does, and we need to be able to deal with it. People are not fungible like AWS servers that you can get on demand.
Sixth, if you don’t have enough people, your time to market will increase. Since your competitors are moving fast, you need to keep up, whether or not you agree with this approach.
Seventh, having more people will let you build a product that’s comfortable to use, rather than a barebones product with too many rough edges, too many bugs, critical missing features, bad UX, and so on. Which is like selling a sofa without cushioning — why will anyone buy that, when other vendors are selling a cushioned sofa?
Eighth, having a margin of safety frees you to experiment with different hiring approaches. For example, I believe that how fast a person grows is more important than what his skill level is as of today. An entrepreneur I respect says that a person’s commitment to the startup, such as in taking a pay cut to join his startup, matters more than skill. You can try out these approaches if you know that you have a margin of safety. And you do need to experiment. People sometimes have a misconception that don’t have time to try out different things. You do need to try them if you want to succeed. And when you try different approaches to hiring, some will fail, and you need a margin of safety to take these in your stride rather than your plan being thrown for a toss.
Ninth, you don’t want to be at the mercy of your employees. One CEO told me his engineers have him by the balls. I have seen employees demand a pay hike disproportionate to their skills as compared with others, and founders acquiesce because they have no other option. But this causes an unfair pay disparity among the team, encouraging others to interview to get an equitable pay 1, eventually making the loyal people feel like fools, which is a dynamic you never want to create. I made the mistake of not firing a bad employee because I was worried about how the work will continue given the barebones team I was running. He eventually had to be fired, after great cost to the team. Not having a margin of safety forces you into all these bad situations. A margin of safety is not a luxury. It’s a necessity, as other engineering fields have learnt.
Tenth, you want to eliminate key person risk, where only one engineer knows certain parts of your code. There should be at least two engineers who know any given part of your tech. You should also have tech talks to create a healthy engineering culture in your company, rather than a sweatshop. You’ll never hire engineers who magically have the exact set of skills you need. Which means learning is a significant part of work. But learning takes time, so if you need 10 engineers’ output, you need at least 11 engineers.
These are all reasons why you should hire more than you think you need.
Either in another company or the same one.