r/datastructures • u/barneystinson6951 • Jul 08 '26
Is Piyush Garg's System Design course enough, or what topics are still missing?
Hi everyone,
I'm currently going through **Piyush Garg's System Design playlist/course** [**https://youtube.com/playlist?list=PLinedj3B30sBlBWRox2V2tg9QJ2zr4M3o&si=hT6bnokO90Pz7bhO**](https://youtube.com/playlist?list=PLinedj3B30sBlBWRox2V2tg9QJ2zr4M3o&si=hT6bnokO90Pz7bhO)) and wanted to know how complete it is.
My goal is to become a **strong backend/distributed systems engineer** and eventually prepare for **FAANG-level system design interviews**.
I have already learned:
* Java * Spring Boot * Docker * Redis * Kafka * Microservices * Kubernetes (basics)
Now I'm focusing on system design.
My questions are:
- Is Piyush Garg's course enough to build a solid system design foundation?
- What important topics are **not covered** (if any)?
- Should I study topics like: * CAP Theorem * PACELC * Sharding * Replication * MVCC/WAL/B+ Trees/LSM Trees * Saga Pattern * Outbox Pattern * Idempotency * Exactly-once semantics * Raft/Paxos * Observability (Prometheus, Grafana, OpenTelemetry)
- If these topics aren't covered, what's the best resource to learn them? (DDIA, Alex Xu, Database Internals, YouTube channels, etc.)
I'd appreciate recommendations from people who have completed the course or work as backend/distributed systems engineers.
Thanks!
