Learn SONiC. Practice system design.
Six companion pages. Start with how SONiC is built, learn the vocabulary of every chapter in System Design Interview Vol. 1 & 2, practice with interview questions, work through the Hello Interview system design guide, watch 20 designs handled step by step, then compare SONiC with Ceph to see how two open-source systems answer the same design questions differently.
Page 1 · Learn
SONiC Guide
What SONiC is, why it exists, and how it works inside.
- ELI5 explanation, purpose and overview
- Containers, Redis databases, life of a route
- orchagent, syncd & SAI; config; platform
- Warm reboot, scaling, observability, HA, security
Key Concepts
The concepts and acronyms to know for every chapter.
- All 28 chapters of Vol. 1 and Vol. 2
- Acronyms per chapter, plus an A–Z index
- "How this relates to SONiC" dropdowns, hidden by default
- Filter box to find any term
System Design Q&A
Interview-style questions with expandable answers.
- All chapters of Vol. 1 and Vol. 2
- Building-block cheat sheet
- SONiC examples tied to real design docs
- Search filter and expand/collapse all
Hello Interview Guide
The Hello Interview system design guide, topic by topic.
- Delivery framework and how you're assessed
- Core concepts, key technologies and patterns
- 16 question breakdowns: requirements, API, deep dives
- Links to the matching Alex Xu chapter, plus SONiC notes
Interview Examples
Twenty sample designs, handled step by step the way you would in the room.
- Clarify, estimate, API, high-level design, deep dives, wrap-up
- A "why this?" dropdown for every building block, with alternatives
- Every technology explained from scratch, no background assumed
- Easy, Medium and Hard, with a difficulty filter
SONiC vs Ceph
A network OS and a distributed storage system, compared design decision by design decision.
- Side-by-side architectures and similarities
- Contrasting design decisions and why they were made
- What each could borrow from the other
- Irreconcilable differences and how the repos differ
Suggested path
- Read the SONiC Guide's ELI5 and overview until you can sketch the architecture from memory.
- For each chapter, review the Key Concepts first. Try to make the SONiC connection yourself before you open the dropdown.
- Then answer that chapter's Q&A aloud before you open each answer.
- Learn the delivery framework, then practice the question breakdowns against the clock: write the requirements, entities and API yourself before you open the answers.
- Then take an interview example: do the clarify, estimate, API and high-level design steps yourself, and compare your answer with the walkthrough. Open the "why" dropdowns for anything you could not justify.
- Finish with SONiC vs Ceph to practice reasoning about trade-offs across two real systems.