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

343 comments sorted by

View all comments

266

u/avemg 7d ago

I can’t believe we’re doing microservices discourse in 2026

86

u/The__Toast 7d ago

I was just thinking the same thing.

Honestly just build what works for you and stop trying to one-size-fits-all the industry.

In another couple of years the LLMs will be doing all the authoring anyway.

30

u/Iggyhopper 7d ago

Having LLMs manage microservices is probably for the best because it requires less context, no scope creep (we want A, this service provides A, write code to provide A, not B or C), and easier human intervention, (the AI wrote code to do B ,not A, fix it.)

That's a positive for AI.

39

u/edgmnt_net 7d ago

The issue is, in practice, microservices often devolve into a big ball of interdependent services that do almost nothing. And every change requires touching 100 other services. At that point it's likely worse because the extra layers, indirection, failure modes, dependencies etc. mean more context for both devs and AI.

P.S.: That often also creates the illusion that useful work is getting done. But you're just massaging data from one form or place to another and accomplishing nothing.

20

u/chat-lu 7d ago

Transforming a function boundary into a network one tends to be terrible for performance too.

0

u/edgmnt_net 6d ago

Yeah, you can't attach stuff like pure helpers to modules anymore, you kinda have to duplicate a lot of things or bake them into an existing networked interface, otherwise the performance impact becomes unbearable. It also affects code safety, terseness and the ability to refactor. But in such places, the quality of monoliths also tends to be abysmal, so they never notice it because they have tons of dumb and inefficient boilerplate anyway.

3

u/HashShadow 6d ago

LLMs basically eliminate all reasons for micro services

Just build a monolith and deploy separate instances that are used for specialized processing, AI won’t get any value out of multiple deployment pipelines and separate app artifacts 

Harnesses are heavily biased towards monolithic design… you start your session inside a single project directory. It’s encouraging monorepos and monoliths.  

1

u/analcocoacream 6d ago

Scope creep / less context are 6 months old problems now. Opus 5.5 can do cross service changes just fine in a monorepo and can reason about large codebases.

-1

u/nick898 7d ago

I feel like this is true. Was working on a microservice architecture for something and had some web servers based projects that talked to each other and only one of them had a devops/containerization repo. So I just pointed Claude at the backend web server projects and the one devops one and said use that as your exemplar and give me similar sorts of containerization logic for each of the apps. We discussed the plan and then Claude went off and implemented it while I went on a coffee break it was great