Ctrl K
An Offerland course

System Design for Interviews

How to design systems in an interview: from load estimates to caches, queues and sharding. Lessons with diagrams, plus real case studies you talk through by voice with an AI interviewer.

1

How a System Design Interview Works

An answer plan that gets you through any case.

0/3
What They Check and How to Structure Your AnswerBack-of-the-Envelope EstimatesExplain It in Your Own Words: The Answer Plan
2

Scaling

Vertical, horizontal, and why a service should be stateless.

0/3
Vertical and Horizontal ScalingCDN and Static ContentExplain It in Your Own Words: Load Balancing and Statelessness
3

Caching

The most common answer to "what if it's slow?" and its traps.

0/3
Caching: Where and HowInvalidation and Cache ProblemsExplain It in Your Own Words: Caching Strategies
4

Databases

SQL or NoSQL, indexes, replication, and sharding.

0/4
SQL, NoSQL, and IndexesReplicationSharding and CAPExplain It in Your Own Words: Replication and Sharding
5

Queues and Asynchrony

How to decouple services and survive traffic spikes.

0/3
Message QueuesDelivery Guarantees and IdempotencyExplain It in Your Own Words: Idempotency
6

APIs, Reliability and Observability

Limiting load, handling failures, and how to see them.

0/3
APIs and Rate LimitingFault Tolerance and ObservabilityExplain It in Your Own Words: Fault Tolerance
7

Case Study: URL Shortener

The classic almost everyone starts with.

0/2
Walkthrough: URL ShortenerDesign a URL Shortener
8

Case Study: Rate Limiter

A small service with a lot of details.

0/1
Design a Rate Limiter
9

Case Study: Notifications

Queues, delivery channels, and retries.

0/1
Design a Notification Service
10

Case Study: Feeds and Follows

Push or pull, and what to do about celebrities with millions of followers.

0/2
Walkthrough: News FeedDesign a Personalized Feed
11

Case Study: Search Autocomplete

Prefixes, caching and milliseconds.

0/1
Design Search Autocomplete