Why I Ditched Microservices and Built a Boring Monolith

I’ve spent years working on enterprise systems for big companies. When you operate at that scale, Microservices and Kubernetes / similar tools aren't just technical choices. They are necessary to handle the load.
So naturally, when I started building my own AI SaaS product recently (currently in development), my first instinct was to "do it right".
I started designing a full microservices architecture. I was planning out the Kubernetes clusters etc. I wanted it to be "future proof" from Day 1.
And then I stopped and deleted the diagrams.
I knew I was solving a problem I didn't have yet. I don't have millions of users.
So I went with the boring, reliable choice:
✅ Modular Monolith (Node.js, NestJS + Nextjs): I still separate everything by modules, so if I need to split it up later, I can.
✅ Docker Compose: Simple and easy to deploy.
✅ AWS EC2: Just a solid server that works.
✅ Cloudflare: Simple doesn't mean insecure. Instead of complex cloud firewalls, I adding a robust (Normally :D) edge layer Cloudflare: Takes the hits and blocks bots before they touch my server.
✅ Nginx: A simple reverse proxy to route traffic between the docker containers.
It felt weird at first to "downgrade" from what I usually build for clients. But the best architecture isn't the most complex one. It's the one that actually lets you ship.
Start small. Ship fast. Scale when it hurts.
Linkedin post can be found here.