Opinions on Microservices Nobody Asked For
Microservices didn't fix your org chart. They just gave the org chart a network boundary.
opinionarchitectureorg-design2026.07.05

DECISIONSEEMED REASONABLE
REFERENCE CARD
Before you split the service
shared boundary
- — same deployment cadence
- — shared data ownership
- — low operational isolation
service boundary
- — independent scaling
- — clear ownership
- — operational isolation justifies the cost
BOUNDARY MAP
What a service split actually introduces
request
Client
API gateway
ownership
Orders service
Users service
state
Orders data
Users data
The useful boundary is not the box around the code. It is the ownership and failure boundary that comes with it.
THE NEW COST
typescriptA boundary is also a timeout
const response = await usersService.getUser(userId, {
timeoutMs: 250,
});
if (!response.ok) {
return fallbackProfile();
}The network hop is not free. Now the caller needs a timeout, a fallback, and an opinion about stale data.
If two teams can't agree on a shared library, splitting the service in half doesn't resolve the disagreement — it just gives it a network hop and a new set of timeouts to argue about.
Microservices are a legitimate answer to a scaling problem. They are not a substitute for a hard conversation.
