Scale ShopStream: System Design in 7 Builds (Python)
Or buy this course only — $99.00
Topics covered
Caching Consistent Hashing Idempotency & Exactly-Once Message Queues & Pub/Sub Rate Limiting Replication Resilience: Circuit Breakers & Retries Sharding & Partitioning
This course includes
- 7 lessons across 3 modules
- Hands-on coding exercises
- Downloadable resources & code
- Full GitHub repository access
- Certificate of completion
- 12 months of access
Why This Course?
Most system design prep is drawing boxes. Interviewers can tell. In this course you take a real online-shop API — ShopStream — and push it until it breaks, then fix it with the same patterns large systems use: a cache, a rate limiter, sharding, replication and a queue. Every lesson ends with something running on your machine, a failure you caused on purpose, and a number you measured before and after.
It is short on purpose: seven lessons, about five hours, all free. Lesson 1 needs no account.
What You'll Build
ShopStream's product and checkout API in plain Python (standard library only), SQLite and Redis — no frameworks, no
pip install— load-tested with your own load generator.A Redis cache-aside layer with protection against a thundering herd.
A per-user token-bucket rate limiter in Redis.
Orders sharded across three databases with consistent hashing — and proof of how few keys move when you add a fourth.
Leader–follower replication you build yourself (a changelog shipped to followers), with read-your-own-writes.
A Redis Streams work queue with retries and a dead-letter queue.
A one-page architecture diagram and trade-off sheet you can defend in a 45-minute interview.
Who Should Take This Course?
Final-year students and engineers with 0–5 years' experience preparing for system design interviews.
Backend developers who know some Python and want to see — not just read about — why systems fail under load.
Anyone who has memorised "add a cache" and wants to know what happens next.
What Makes This Course Different?
Build, break, measure. Every lesson has a failure demo and a before/after number from a real run.
One system, not seven demos. Each lesson adds a layer to the same codebase; you finish with one portfolio project.
Almost zero setup. Python 3.10+ and Redis are all you need. Each lesson is one
start.shthat writes the code, runs it and measures it.Interview-ready. Each lesson ends with the three questions an interviewer is most likely to ask about it, with model answers.
Part of a free path. It connects to the free Kafka, observability and AI-agent courses that grow the same ShopStream system.
What's Included
Repository
Run it on your machine (Linux, macOS or WSL; needs Python 3.10+ and Redis):
git clone https://github.com/sysdr/shopstream-scale-system-design.git
cd shopstream-scale-system-design
bash test_all.sh # runs all lessons, or: cd lessons/lesson-1 && bash start.shIn the sandbox, run: cd lessons/lesson-1 && bash start.sh
Prerequisites
Basic Python (functions, classes, dictionaries) and comfort running commands in a terminal.
Python 3.10+ and Redis 6.2+ on Linux, macOS or Windows (WSL).
sudo apt install redis-serverorbrew install redis.No prior distributed-systems knowledge needed.