Goal: Transition from HLD to LLD — start thinking about class-level design alongside system-level design. By the end of this week, you should be comfortable at both zoom levels.
Topics
| Day | Focus | Topics |
|---|---|---|
| Mon | HLD Scalability | Horizontal vs Vertical Scaling · Microservices vs Monolith · API Gateway |
| Tue | HLD Storage Patterns | Denormalization and Read-Write Separation · Blob Storage and Object Storage |
| Wed | LLD Foundations | What is Low-Level Design? · OOP: The Four Pillars · Composition vs Inheritance · Abstract Classes vs Interfaces |
| Thu | DBMS Advanced | Views & Materialized Views · Stored Procedures & Triggers |
| Fri | DSA Graphs & DP | Advanced Graph Problems · DP Fundamentals |
Key Concepts
- When to scale horizontally vs vertically — cost curves, bottleneck analysis, and practical limits
- Microservice boundaries — decompose by business domain, not by technical layer
- API gateway patterns — rate limiting, auth, routing, and request aggregation
- CQRS read/write split — separate models for reads and writes when access patterns diverge
- Composition over inheritance — why “has-a” often beats “is-a” in real-world code
- The four OOP pillars — encapsulation, abstraction, inheritance, polymorphism
- DP overlapping subproblems and optimal substructure — the two properties that make DP work
Practice
- Argue microservices vs monolith for an e-commerce startup — consider team size, deployment, and complexity
- Identify which OOP pillar each code snippet demonstrates (prepare 4 snippets, one per pillar)
- Design a materialized view refresh strategy for a dashboard with 5-minute staleness tolerance
- Solve 2 classic DP problems — start with Fibonacci (top-down and bottom-up), then try coin change
~13 topics · ~1.5-2 hrs/day · Focus: read the linked notes, then code each concept