| name | sysdesign-question-bank |
| description | Catalog of 12 canonical system design problems from Alex Xu Vol.1 with the book's canned numbers (DAU/QPS/storage), key decisions, common traps, and expected rubric categories per problem. Loaded explicitly by sysdesign-design when a topic is chosen โ not auto-injected. Each problem has its own file under problems/. Vol.2 problems (proximity service, distributed message queue, etc.) are NOT in this catalog โ see _vol2-gap.md. |
| disable-model-invocation | true |
sysdesign-question-bank
12 canonical problems from Alex Xu Vol.1 (Korean edition: ๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋
๋๊ท๋ชจ ์์คํ
์ค๊ณ ๊ธฐ์ด). Each problem file contains the book's canned numbers,
core decisions, common traps, and deep-dive topics โ used by sysdesign-design
as the Clarifying starting point.
How sysdesign-design uses this
When the user picks a topic ("์ฑํ
์์คํ
๋ง๋ค๊ณ ์ถ์ด"), sysdesign-design loads
the matching problems/<slug>.md and offers the book's canned numbers as the
starting assumptions. User then adjusts (e.g., "100M DAU๋ก ๊ฐ์").
Catalog
| Slug | Title (KO / EN) | Type | Scale class |
|---|
| rate-limiter | ์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น์ ์ค๊ณ / Rate Limiter | Mock-ready (warm-up) | medium |
| consistent-hashing | ์์ ํด์ ์ค๊ณ / Consistent Hashing | Building-block reference | large |
| key-value-store | ํค-๊ฐ ์ ์ฅ์ ์ค๊ณ / Key-Value Store | Building-block reference | large |
| unique-id-generator | ๋ถ์ฐ ์์คํ
์ ์ํ ์ ์ผ ID ์์ฑ๊ธฐ ์ค๊ณ / Unique ID Generator | Mock-ready | large |
| url-shortener | URL ๋จ์ถ๊ธฐ ์ค๊ณ / URL Shortener | Mock-ready | medium-to-large |
| web-crawler | ์น ํฌ๋กค๋ฌ ์ค๊ณ / Web Crawler | Mock-ready | large |
| notification-system | ์๋ฆผ ์์คํ
์ค๊ณ / Notification System | Mock-ready | large |
| news-feed | ๋ด์ค ํผ๋ ์์คํ
์ค๊ณ / News Feed System | Mock-ready | large |
| chat-system | ์ฑํ
์์คํ
์ค๊ณ / Chat System | Mock-ready | large |
| search-autocomplete | ๊ฒ์์ด ์๋์์ฑ ์์คํ
/ Search Autocomplete | Mock-ready | large |
| youtube | ์ ํ๋ธ ์ค๊ณ / YouTube | Mock-ready | large |
| google-drive | ๊ตฌ๊ธ ๋๋ผ์ด๋ธ ์ค๊ณ / Google Drive | Mock-ready | large |
Type definitions:
- Mock-ready: Suitable as a standalone interview problem โ bounded scope, clear requirements, tractable in 45โ60 min.
- Building-block reference: Primarily an infrastructure concept used as a sub-component in other problems; rarely posed as a standalone interview topic.
Recommended learner sequence
- rate-limiter โ bounded scope; algorithm comparison + Redis
- unique-id-generator โ short; introduces Snowflake
- url-shortener โ classic; API + hashing + caching + HTTP
- consistent-hashing โ pure infra concept; prereq for KV store and sharding
- key-value-store โ deepest theory (CAP, quorum, vector clock, gossip, Merkle); requires consistent-hashing
- notification-system โ multi-provider fan-out, queue decoupling
- web-crawler โ queue design, dedup (bloom), politeness
- news-feed โ fan-out write vs read tradeoff; foundational social
- search-autocomplete โ trie + batch pipeline
- chat-system โ real-time, stateful servers, message ordering
- google-drive โ chunking, delta sync, strong consistency, storage tiering
- youtube โ transcoding DAG, CDN optimization, pre-signed URLs, live streaming (most complex)
Topic โ trigger phrase mapping (for sysdesign-design)
| User says | Topic slug |
|---|
| ์ฒ๋ฆฌ์จ ์ ํ / rate limiter / rate limiting / API throttling | rate-limiter |
| ์์ ํด์ / consistent hashing / consistent hash | consistent-hashing |
| ํค-๊ฐ ์ ์ฅ์ / key-value store / KV store / DynamoDB clone / Cassandra clone | key-value-store |
| ์ ์ผ ID / unique ID / distributed ID / snowflake / ID ์์ฑ๊ธฐ | unique-id-generator |
| URL ๋จ์ถ๊ธฐ / url shortener / tinyurl / bit.ly | url-shortener |
| ์น ํฌ๋กค๋ฌ / web crawler / web crawling / ํฌ๋กค๋ฌ | web-crawler |
| ์๋ฆผ ์์คํ
/ notification system / push notification / ํธ์ ์๋ฆผ | notification-system |
| ๋ด์ค ํผ๋ / news feed / ํผ๋ / social feed / Instagram feed | news-feed |
| ์ฑํ
์์คํ
/ ์ฑํ
์๋น์ค / chat / messenger / WhatsApp clone / ๋ฉ์ ์ | chat-system |
| ๊ฒ์์ด ์๋์์ฑ / search autocomplete / typeahead / ์๋์์ฑ | search-autocomplete |
| ์ ํ๋ธ / YouTube / ๋์์ ์คํธ๋ฆฌ๋ฐ / video streaming | youtube |
| ๊ตฌ๊ธ ๋๋ผ์ด๋ธ / Google Drive / ํ์ผ ์คํ ๋ฆฌ์ง / cloud storage / file sync | google-drive |
Recurring cross-problem decisions (quick reference)
| Decision | Problems |
|---|
| Consistent hashing for partitioning | consistent-hashing, key-value-store, url-shortener, search-autocomplete |
| Cache layer (Redis/Memcached) | rate-limiter, url-shortener, news-feed, chat-system, search-autocomplete, youtube, google-drive |
| Message queue for decoupling | notification-system, news-feed, youtube, google-drive, web-crawler |
| Fan-out (write vs read vs hybrid) | news-feed, notification-system, chat-system |
| CDN for static/media | youtube, google-drive, news-feed |
| Bloom filter for dedup | web-crawler, key-value-store |
| WebSocket / real-time | chat-system, notification-system |
Vol.2 gap
The following Vol.2 problems are NOT in this catalog (the Korean PDFs locally
available are both Vol.1):
- Proximity Service / Nearby Friends / Google Maps / Distributed Message Queue
/ Metrics Monitoring / Ad Click Aggregation / Hotel Reservation
See problems/_vol2-gap.md for the full list and acquisition note.
Source: alex-xu-vol2-problems.md (researched 2026-05-03); Alex Xu Vol.1 (2020), Korean translation Insight Press (2021).