# Stop Building Space Shuttles When All You Need Is a Bicycle

> Source: <https://dev.to/renato_silva_71eef0fc385f/stop-building-space-shuttles-when-all-you-need-is-a-bicycle-7c2>
> Published: 2026-05-22 19:18:14+00:00

We’ve all been there. You join a new project, excited to look at the codebase. It's a simple application—maybe a Todo app, a simple blog, or a feedback collector.
You open the repository, expecting a clean, straightforward structure. Instead, you find:
npm run dev
.All of this... for an application that gets 50 users a day.
Welcome to the era of Overengineering.
As developers, we suffer from what I call "Resume-Driven Development" (RDD). We don't choose tools based on what the project needs today; we choose tools based on what looks cool on our LinkedIn profile or what Netflix uses to handle billions of requests.
We became so obsessed with scalability that we forgot about maintainability and velocity.
If it takes a junior developer three days just to set up the local environment and understand how a single HTTP request routes through twenty layers of architecture, your system isn't "advanced." It's broken.
There is a silent counter-movement happening right now. Senior developers who have tasted the pain of managing distributed transactions and network latency in tiny microservices are screaming: Go back to the monolith!
Building a "boring", well-structured monolithic application using simple tools (like a clean Fastify/Node.js setup, standard relational databases, and straightforward code) gives you something a distributed system can't:
Don't get me wrong. If you are building the next Uber, Netflix, or Amazon, yes—bring on the microservices, Kafka, and complex caching layers. You earned that complexity.
But if you are starting an MVP, testing a product, or building a standard internal tool, keep it stupidly simple (KISS). Use a reliable SQLite or Postgres database, write clean functions, validate your data with Zod, protect your endpoints with a simple Rate Limiter, and get things done.
Architecture shouldn't be a monument to your ego. It should be a tool to deliver value to the user.
What is the worst case of overengineering you have ever witnessed (or accidentally built) in your career? Are we, as a community, making coding harder than it needs to be?
Drop your horror stories in the comments below! 🛰️👇
