Back to Blog
Engineering
5 min read

The Boring Technology Behind Our Scaling Strategy

Why we chose a monolithic worker architecture to handle millions of jobs.

Andreas Hatlem

Andreas Hatlem

Author

The Boring Technology Behind Our Scaling Strategy

In a world of microservices and Kubernetes complexity, we made a controversial choice for our background worker: we made it boring. Extremely boring.

The "Reliable Monolith" Approach

Our worker service handles millions of jobs—scheduled emails, reputation checks, warmup ramps—but it runs as a single, optimized Node.js process. Why? Because complexity breeds failure.

We use a robust "tick" system that wakes up every minute to process scheduled jobs. It’s simple, but it scales. If we ever need to go bigger, we have Redis locking ready to go for horizontal scaling, but honestly, a single optimized process can handle a surprising amount of load.

Sleep Better at Night

We designed the system to be crash-resistant. If a job fails, it retries with exponential backoff. If the worker restarts, it picks up exactly where it left off. We built this so we (and you) can sleep at night, knowing that your 2 AM campaign will go out exactly at 2 AM.

ScalingInfrastructure

Ready to improve your email?

Start sending beautiful, reliable emails with GetMailer.

Get Started Free