architecture service-oriented-architectures microservices monoliths
Architectural patterns such as Micro-frontends, Backend for Frontend, Experience Services, and Domain Services are evolutions of service separation and specialization a.k.a. service-oriented architectural style (Read more in my previous blog post: Service Oriented Architecture - Slice and Dice about what these patterns are with examples). These patterns are designed to address specific challenges. Just like with any decision we make in software engineering, when we choose to use these patterns over other ways of solving the challenge, we need to understand the benefits, costs, and key enablers of these patterns. This understanding allows us to create a lay of the land and understand the trade-offs we are making.