Essay · 10 min read
The Majestic Monolith
David Heinemeier Hansson · Signal v. Noise (DHH) Free Intermediate
DHH built Basecamp and Hey with a tiny team by refusing to split the app into a fashionable web of microservices. If your engineer wants to start with distributed services 'so it scales later', this is the counterargument: a single, understandable codebase is what lets a small team ship fast and hold the whole thing in their head. It shows that the simplest architecture is often a deliberate senior choice, not a lack of ambition.
- A monolith keeps the whole system changeable by one person, which is what an early team needs.
- Microservices solve an organizational scale problem you probably do not have yet.
- Optimize architecture for the team you have today, not the company you imagine at Series C.