Minimum Viable Engineering Team
Startups focus on building an MVP, a minimal set of features to bring a certain level of business success, which can be used to generate further success.
But what engineering team do you need to do this? I call that the minimum viable engineering team:
Prototyping features requires 1 engineer. This person writes non-production-quality code to build a whole bunch of fake apps to test multiple products and features with customers quickly before other engineers build one “properly”.
Feature development requires 1 frontend1 engineer and 1 backend engineer.
UX improvement requires 1 frontend engineer2.
Reliability requires 1 engineer.
Security requires 0.5 engineers.
Latency requires 1 engineers.
Scalability requires 0.5 engineers.
Researching different frameworks and tools requires 0.1 engineers.
Maintenance requires 1 engineer 3.
Hiring requires 0.5 engineers.
DevOps requires 1 engineer.
This adds up to 10 4. This is the minimum viable engineering team.
Engineering teams don’t scale below a certain size. You can’t buy half a pillow for half the price. I’ve seen too many founders not understand this and keep bashing their head against the wall saying things are not done.
If you’re running a startup, you need to have a minimum viable engineering team to achieve the outcomes you want.
Want me to help you plan this out for your company? Hire me as an advisor.
I’ll use “frontend” to refer to either web or mobile. But not both, since it’s an MVP.
This is important since people judge a book by its cover. If the UX is not polished, they won’t use it. This is the case for B2C, and is nowadays the case for B2B, too.
It doesn’t mean that one person should do all the maintenance and that everyone else should write unmaintainable code. It just means that however you split the work, 1 engineers’ worth of time is needed. Some people would phrase this as “Maintenance requires 1 resource” rather than “Maintenance requires 1 engineer” to avoid this ambiguity.
Some companies may require other roles like building an API, documenting it, sales engineering and support engineering, in which case they need a bigger engineering team.