We moved to microservices expecting our issues to go away but we have more issues now?!
Why did you move to microservices?
We wanted faster time to market and higher quality of product...
Moving to microservices is a process change as well as technology change, you need to keep these things in mind...
Process changes that influence time to market and quality when moving to microservices:- Organised around business capabilities (cross functional teams)- Product vs projects- Decentralised vs centralised governance- Infrastructure automation
Some issues present in your existing monolith architecture also will be present in your microservices architecture unless you tackle them explicitly
Examples of issues microservices will not solve unless you specifically target them during the move: - communication issues between departments (Conway's law)- incomplete testing strategy (testing pyramid)- architecture and design issues (no DDD)- etc.
Many companies move to microservices but end up with distributed monoliths which is why they experience more issues.
Great! So instead of following the trends like "microservices envy" we will now focus on problems we want to solve, generate options and choose the best option. Microservices will solve only specific problems they were designed to solve!