How many engineers do I need for my tech team?
Large software teams are very common, but something to take a caution about. Most managers or leaders feel that a bigger team will mean a greater or faster output, but that's not necessary.
With all the companies around me downsizing and / or freezing hiring now a days - one does start wondering about team sizing and the optimal team size. A sample from the posts:
https://www.theverge.com/2022/7/12/23206113/google-ceo-sundar-pichai-memo-hiring-slowdown-2022
Now Google and Facebook are large organisations and one can forgive them if they hired a dozen more engineers (to better manage turnover may be) - but there looks to be a concern where it is felt that the teams are generally not fully optimised, and are being pushed to more efficient and “do more with less”. Zuckerberg is heard saying out right that some folks are not working at all. Now this is a pretty expected response to a global economic slow down - but it does make one think if their teams are at an optimal limit or not.
Hiring fast and building big teams is a pretty standard culture thing in the startup world. It’s actually very hard to know how “big” a team is needed initially, since there is so much to do and everything is high priority. But its not just about hiring software engineers, in order to solve _a_ problem you also need to need to hire product managers, designers and other roles to get the ball rolling - even the best engineering team is pretty useless without equally good product/design folks.
Another problem with building teams quickly is productivity. It is virtually impossible to hire fast and also keep the whole team productive the same time. Since hiring itself is a pretty intense activity you would expect several folks to be engaged in reviewing profiles, interviewing, onboarding etc. And with the introduction of each team member, the “gelling” process starts. You need to bring them up to speed, show them the ropes and adjust to their communication and personality quirks. Team compatibility is a related problem, some people don’t work well together and need to be moved around. Some are not the best fit and need to let go.
So most startups (and companies) will size their teams according to their planned budget. This is mostly an estimated budget based on a percentage of current / future revenue for startups, or money raised from VCs. Once the budget is established we can break it down into the requirements for the headcount depending on the number of teams we have, seniority we require (and can realistically hire for) and specialisations.
The advantage of the above is that you can get all the folks you need in one swoop, and then reduce the overhead of the continuous hiring in the coming months. But in the real world, it never happens this way - hiring is a continuous process - simply because its usually impossible to hire all the folks in one go unless you are acqui-hiring a team.
So the best way to manage this is to focus on team productivity using different tools, focus on completing a specific team first and then let them gel, while focus moves onto other teams. It’s important not to create one person teams - only split larger teams into 2 smaller ones when there are enough people. And the hiring usually slows down when the budget limit reaches.
There is a solid chapter on this in Will Larson’s book - An Elegant Puzzle.
https://www.amazon.com/Elegant-Puzzle-Systems-Engineering-Management/dp/1732265186