I've been thinking about whether it's the best time to transition my application to microservices. Is it based on the number of developers we have? For instance, if we're currently managing a monolithic application with 10 developers, would we only consider moving to microservices when we expand to 50 developers? I'm curious to hear your thoughts on what factors really dictate this decision.
2 Answers
The number of developers shouldn't dictate your architecture choice. You usually move to microservices for reasons like load balancing, where you might need to run multiple instances of specific services. It's more about designing the system with independent software components, rather than just the headcount of your dev team.
You should consider Conway's Law. If you have 50 developers structured into say, 10 teams, it might be smart to think about splitting things into several services. But ultimately, there’s no hard rule; if a monolithic system works well, don't force microservices. It's all about making the team and product structures align, regardless of your approach.
I totally agree! Also, having proper version control can solve problems that come up when multiple devs are in the same codebase. Microservices really help with scaling and dealing with latency issues.