Replace All Staff Engineers with Multiple New Grads!
A team needs a healthy mix of engineers at different levels to succeed.
Staff Engineers are overpaid & expensive, so replacing them with four fresh grads seems smart.
Don’t hire new grads! They need a lot of coaching.
Relax! I don’t believe either of those. Today’s article is a fun post to explore what different leveled engineers bring to the table.
To dive into this, let’s say we have two hypothetical teams:
Team A, with 2 Staff Engineers
Team B, with 8 college grads
Then, examine how they would perform across the following dimensions.
Also, let’s assume they are average Staff Engineers & average college grads to eliminate any rockstar biases.
💰 Business decisions
While both Team A & B would figure out what the core business requirements are, Team A will take it a few steps deeper to
Validate the requirements and understand why they are needed.
Figure hidden requirements instead of discovering them later
Prioritize the requirements based on their value.
Sometimes, Staff Engineers are notorious for analyzing a little too much, which results in a slower start. That won’t happen with Team B.
👥 Team Structure
For a team to function smoothly, engineers must take on various auxiliary roles(in addition to coding), such as lightweight program management, sharing updates with management, and running discussions with customers.
Staff Engineers on Team A will know how to handle tricky situations and play the required roles as the situation demands. For examples,
When reliability is bad, Team A may introduce a lockdown to improve it.
When the customer is upset, Team A will know how to mitigate their concerns.
When the leadership is unhappy with progress, Team A will provide a good justification.
Also, Staff Engineers on Team A can complement each other without stepping on the other’s toes.
Team B won’t introduce unnecessary processes, which can be great for faster iterations (sometimes).
⚡Speed
Team B has more manpower, and sometimes, that is necessary.
When building something new, Team B may be able to add features faster. (assuming they are already ramped up on the tech)
When I was a new grad, I was hungry to learn new things. That attitude can bring a lot of positive energy to the team.
The Staff Engineers on Team A may also have other responsibilities in their org, which means less time for their core projects.
Team A will be able to use their experience to avoid common pitfalls, which will make them faster in the long run.
🌟 Quality of work
Senior+ Engineers have seen the downsides of taking shortcuts, so they uphold best practices within the team. So, Team B will discover many rough edges in their work over time. Some examples,
Parts of the codebase may need to be rewritten as new features get added.
Performance issues will surface in production instead of development.
They may struggle to choose the right frameworks/APIs/tech-stack, which will result in churn later.
While Team A may have better code quality, it will accumulate tech debt due to shortage of engineers.
🔦 Mentorship
Team B should be able to help each other with tactical questions, but they will struggle to find support with strategic questions.
Team B engineers may get competitive with each other for similar opportunities.
They will have little opportunity to learn from others’ mistakes, so they will make many new ones.
Over time, as Team A won’t have new grads, they will grow impatient with ramping up and mentoring junior engineers.
Parting Note
Teams need to be balanced. We need a healthy mix of Staff, Senior, and junior engineers for high-quality work and solid team health. Each of them has specific strengths and weaknesses. Depending on the kind of problem being solved and the project stage, the exact number of junior & senior engineers will change.
In a future article, I will share how I structured teams for different projects throughout the project life cycles.
Announcement
I am traveling outside the US with my 18 month old, so my schedule has been off and will likely remain that way for the month. Thanks for reading today! You can read my older articles here,
Also, check out other awesome newsletters
- by
- by
- by
- by
- by
If you enjoyed this article, then hit the ❤️ button. It helps!
If you think someone else will benefit from this, then make sure to 🔁 share this post.
Great article, Raviraj and hope you enjoy your travel time! Low-key jealous :D
Great comparison. I can't imagine being part of either of the 2 teams :D