Member-only story

Monolith, Microservices, or Modular Monolith? Choosing the Right Architecture for Your Startup

Exploring the shift back to monolithic architectures and best practices for startups choosing their tech stack

Gene Zeiniss
8 min readMar 11, 2025
Image by Stockvault

I recently discussed system architecture with the Head of R&D of a brand-new startup. I brought up the pain of breaking down a monolith; on the flip side, he was frustrated with microservices. These struggles probably shaped our conversation. And hey, learning from experience is a win — you don’t want to step on the same rake. But set aside your personal tastes and look at the truths of reality. Even though microservices have become the go-to over the last decade, there has been a noticeable trend of companies moving back to monolithic architectures.

Let’s see what causes companies to shift back to monolith and what the best practices are for startups to begin with.

Microservices History In a Nutshell

Microservices didn’t just pop up overnight — they evolved as a response to the challenges of monolithic architectures and the need for scalable, flexible, and maintainable software systems. Here’s a breakdown of how we got here:

Pre-2000s: The Monolithic Era

Once upon a time, apps were built as monoliths — a big chunk of code that handled everything from the front-end UI to the backend logic. This worked fine for smaller apps, but when systems got bigger, scaling and maintaining them became a nightmare.

Early 2000s: Service-Oriented Architecture (SOA)

As companies looked for better ways to manage their growing systems, they realized that breaking them into smaller services made life easier. That’s where Service-Oriented Architecture (SOA) came in — it promised smoother system integration and better organization. But SOA had its downsides. It relied on a centralized Enterprise Service Bus (ESB), which became a bottleneck and a single point of failure. Services communicated using SOAP/XML, which was slow, bulky, and hard to scale. On top of that, SOA often led to tightly coupled services, making updates and maintenance a headache. Throw in…

--

--

Gene Zeiniss
Gene Zeiniss

Written by Gene Zeiniss

Freelance Backend Developer | Java, Spring Boot, Microservices | Code Mentor | Tech Blogger & Speaker

No responses yet

Write a response