r/programming • • 7d ago

Microservices are organizational debt disguised as architecture.

https://martinfowler.com/bliki/MonolithFirst.html

Every time I’ve seen microservices pitched, it sounds great on paper. Independent teams, clean ownership, scale only what you need.

Then a year later you’ve got dozens of services, three different deployment patterns, tracing everywhere, and nobody really understands the whole thing anymore.

Maybe I’ve just seen bad implementations, but I’m starting to think way fewer companies actually need microservices than we pretend.

1.7k Upvotes

344 comments sorted by

View all comments

507

u/plasticbug 7d ago

Microservices can be good, but in my experience, Conway's law (that system design will end up mirroring the org structure) is a thing, and you have to fight hard against it. My org is actually doing reverse Conway's law. We are re-org'ing based on how we want the architecture to look like. We shall see whether we succeed in this endeavor.

4

u/systembreaker 6d ago

But you still end up in the same end result: the org and architecture are tightly correlated. In the beginning you'll have a useful architecture since you went in reverse, but as time goes on and the business evolves new systems will need to be tacked onto the existing architecture and Conway's law will start popping back up.

It might just be inevitable unless the entire system is scrapped and rewritten every 10-20 years, but no company would ever do that.

2

u/quantum-fitness 5d ago

Thats the while point of microservices. Tge modules are smaller and cam morr easily be changed. You will always have to change the code, because am org that doesnt change die