LS LOGICIEL SOLUTIONS
Toggle navigation
WHITEPAPER

Micro-Frontends and Modular Monoliths

Splitting everything into microservices became the default for "serious" teams, and left many with distributed systems far more complex than the problems they solve. This guide lays out the trade-offs, the evidence, and a way to size architecture to your org instead of to fashion.

From Pilot to Production: Scaling Enterprise AI

You Don't Have a Technology Problem. You Have an Architecture That Doesn't Fit Your Org.

  • The default that quietly costs you: split into services because that's what serious teams do, and buy the full operational overhead of distribution (deploy, monitor, on-call, distributed debugging) to solve a coordination problem you don't have at your team size.

  • The disciplined alternative: get modularity almost always, take on distribution only when your org size and real scaling needs justify it, and let Conway's Law, not fashion, decide the architecture.

Download White Paper

The Numbers That Make This a Board-Level Conversation

~90%
operational cost cut when one Amazon Prime Video team moved a service from distributed serverless back to a monolith (it had scaled to only 5% of target load)
2.8M+
lines Shopify runs its core as a deliberate modular monolith: modularity without the overhead of distribution
Since 1968
Conway's Law says systems mirror the org that builds them, so architecture should match your team structure, not your ambition

The Three Things to Separate

Modularity, Almost Always Yes

Clear boundaries, defined interfaces, components that evolve independently. This is nearly always good, and you want it in every architecture.

Distribution, Only Sometimes

Deploying those components as separate networked services. It's a real cost (operational overhead, network failure, distributed data) that you should only pay when the benefit is real.

Fit to Org, the Deciding Variable

Conway's Law says the architecture that works matches how your teams are organized to communicate. A few teams point to a modular monolith. Many independent teams at scale point to splitting.

The Decision Framework, 4 Questions

Step 1: How many independent teams do you actually have?

A few teams, default to a modular monolith. Many teams that must deploy and scale independently, microservices start to earn their cost. Size to the org, not the ambition.

Step 2: Independent deployment, or just independent development?

If teams need to avoid stepping on each other, module boundaries in a monolith deliver that. Only genuine independent-deploy-at-scale needs justify splitting.

Step 3: Does this component have a truly different scaling or runtime need?

That's a legitimate reason to extract one service. "It would be cleaner" is not.

Step 4: Can you afford the operational cost of distribution?

Every service adds deploy, monitor, on-call, and debugging load. If you can't staff it, splitting costs more than it returns. That's the Prime Video lesson.

Modular-First, Extract-Later Beats Distributed-First, Consolidate-Under-Duress.

The industry oversold splitting. Microservices are powerful where independent teams genuinely need to deploy and scale independently, and expensive mistakes below it. Get the modularity, take on distribution only when justified, and keep boundaries clean so you can extract a service later, on evidence.

Frequently Asked Questions

No. One Amazon team right-sized one internal tool from a distributed serverless design back to a monolith, cutting cost about 90% because the distributed version scaled to only 5% of target load. It's evidence microservices can be the wrong fit for a problem, not that they never work.

When you have many independent teams that genuinely need to deploy and scale independently, and can staff the operational overhead. That's roughly the scale where the coordination benefit outweighs the distribution cost.

VPs of Engineering, heads of architecture, and engineering directors deciding how to structure systems as their teams grow.

A single deployable application organized into well-bounded components with clear interfaces. Modularity without distribution. Shopify runs its core this way at scale to keep boundaries clean and operational cost low.

Start from your org. How many independent teams do you have, and how do they need to coordinate? Conway's Law says the architecture should match that.