Hacker News new | ask | show | jobs
by cheriot 3133 days ago
The debate is where that threshold is. 5 engineers, no. 1000 engineers, yes. But most engineering orgs are in between. I suspect microservices start to make a lot of sense at around 50 individual contributors. At that point you've got 10 pizza sized teams and making decisions that affect all of those teams is taking more time than building out the infrastructure needed for them to work independently.
1 comments

You may have 5 engineers today, but what if you have 1000 engineers tomorrow? Do you start from scratch, or do you use microservices now in case you do grow in size?
some of the worse evils I've seen in software development is a team of 5 trying to act as if they were a team of 1000. There are inherent costs in microservices, they don't come without tradeoffs. Those tradeoffs seem uncessary for a 5 engineer team (sometimes it makes sense). Not only that, it's very unlikely you are going to predict correctly how your product will evolve by the time you get to 1000 so even if you did microservices, they probablly won't be right for the future evolved product which will likely include new innovations you can't yet design for.

All you do, as a team of 5, is write nice modular composable well tested code. That way your code base will adapt as you grow. It's quite likely going from 5 to 1000 people is going to involve a number of large architectural shifts during the life of the product.