System design interviews for Rails engineers
This course covers the system design round for Rails engineers, from pacing the hour to closing on trade-offs. One running prompt carries the early lessons: invoice delivery for Meridian, an invoicing system. Those lessons turn a vague prompt into requirements and estimates, enforce a no-duplicates rule with a unique index, and weigh queues, caches and read replicas. Later lessons build a token bucket rate limiter and an LRU cache in Ruby. They work through a URL shortener, a feed and notifications, and end with a narrated whiteboard session.
What you'll learn
- ✓How the design round is paced and scored
- ✓Turning a vague prompt into requirements and capacity estimates
- ✓Enforcing correctness with database constraints and indexes
- ✓Choosing between queues, caches and read replicas
- ✓Building a token bucket rate limiter and an LRU cache in Ruby
- ✓Working through URL shortener, feed and notification prompts
The system design interview format
Every other round has a right answer hiding in it. The coding round has a passing test suite. The debugging round has a bug. Even the behavioral round has a story shape the interviewer recognizes.
Read the full lesson free →Curriculum
7 lessonsThe system design interview format
How the design round is scored, how to pace the hour, and four common ways candidates lose it.
Requirements and capacity estimation
Turning a vague prompt into functional and non-functional requirements, then estimating rates and finding the peak that breaks a limit.
Data modeling at scale
Enforcing no duplicate deliveries with a unique index, choosing primary keys, partitioning trade-offs and partial indexes for known queries.
Caching, queues and read replicas
When a queue, a cache or a read replica fits, with retries, terminal states and cache stampedes.
Rate limiters and LRU caches in Ruby
Five rate limiting algorithms, a token bucket and sliding window counter in Ruby, and an LRU built on hashes.
Classic prompts: URL shortener, feed, notifications
Three canonical prompts: a read-heavy URL shortener, push versus pull feeds, and notifications with delivery guarantees.
Whiteboard session: putting it all together
A narrated full session on a data export prompt, showing the six moves that earned the score.