Monolith vs microservices: what actually matters

New Icon
A Post From New Icon
Published:
Most businesses don’t start by choosing between a monolith and microservices.
They start with something that works. Then over time, that system becomes harder to change, slower to deploy, and increasingly fragile.
At some point, the question comes up: Do we need to move to microservices? A fair question. But it’s also the wrong place to start.
What is a monolith?
A monolithic architecture combines all components into a single, unified application and deploys them together with tight connections.
That means:
One codebase
One deployment process
Often one shared database
For many businesses, this works well, especially early on.
Monoliths are:
Simpler to build
Easier to test
Faster to get to market
The problem isn’t the monolith itself, it’s what happens as it grows.
What are microservices?
Microservices divide an application into small, self-contained services, each responsible for one specific function.
For example:
User management
Payments
Orders
Reporting
Each service:
Can be deployed independently
Can scale independently
Communicates with others via APIs
In theory, this creates more flexibility and scalability. In practice, it introduces a new kind of complexity.
The real difference
This isn’t about architecture patterns. This is about how your business operates.
Monoliths optimise for simplicity
Microservices optimise for flexibility
The right choice depends on:
How fast you need to change
How many teams are involved
How complex your system has become
When a monolith is actually the better choice
Microservices are often seen as the “modern” option but that doesn’t mean they’re always the right one. A monolith is often better when:
Your product is still evolving
You have a small team
Your system isn’t hitting scaling limits
Speed of development matters more than flexibility
In many cases, moving too early to microservices creates more problems than it solves.
When microservices start making sense
Microservices become valuable when your system reaches a certain level of complexity.
For example:
Multiple teams need to work independently
Deployments are slow or risky
Different parts of the system need to scale differently
Changes in one area regularly break others
At this point, the architecture starts to reflect organisational needs.
Why most monolith-to-microservices projects fail
This is where things usually go wrong. Many businesses assume: “If we move to microservices, everything will improve”
But in reality:
Poor architecture doesn’t disappear - it gets distributed
Complexity increases significantly
Communication between services becomes a challenge
Data consistency becomes harder to manage
The biggest issue: Teams focus on technology decisions instead of business outcomes
A better approach to modernisation
Rather than asking: “Should we move to microservices?”
A better question is: “Where are the bottlenecks in our system and how do we remove them?”
In practice, modernisation usually looks like:
Understanding where systems are slowing the business down
Gradually separating high-impact areas
Introducing new architecture patterns where they add value
Avoiding large, high-risk rewrites
This is often called an incremental approach. It sometimes uses patterns like the “strangler” approach. This replaces parts of a system over time.
Microservices won’t fix your business problems
This is worth being clear about. Microservices don’t:
Improve poor processes
Fix unclear requirements
Replace the need for good data
Automatically make systems scalable
What they can do is support a business that:
Needs to move faster
Operates at scale
Requires real-time decision-making
What actually matters
Instead of focusing on architecture trends, focus on outcomes:
How quickly can you make changes?
How reliable are your systems?
How easy is it to scale?
How confident are your teams in deploying updates?
Architecture should support these, not drive them.
If you’re thinking about modernising your systems, it’s worth stepping back before making major architectural decisions.
In many cases, the answer isn’t a full rebuild. It’s a more practical, step-by-step approach. It lowers risk while still moving things forward.
If you’re working through this, we’re happy to share an honest view. Even if the best choice is to keep things as they are.

New Icon
A Post From New Icon