๐Who This Roadmap Is For
If you can build a CRUD app but freeze when asked "how would you scale this to 10 million users?", this roadmap is for you. System design is the skill that separates a coder from an engineer, and it is the round that decides senior offers and salary bands in India. We will cover both HLD (architecture) and LLD (object design) in the order that actually builds intuition.
New to the HLD/LLD split? Read HLD vs LLD first, then come back. The full guided path lives in the System Design track.
๐Stage 0: Prerequisites
You need working knowledge of one backend language and databases. If your Java is shaky, firm it up via the Java track, object-oriented thinking is the foundation of all LLD.
๐Stage 1: Core Fundamentals (Weeks 1-3)
These concepts appear in *every* design discussion:
Make each concept concrete by asking "what problem does this solve and what does it cost?"
๐Stage 2: Storage & Data (Weeks 4-6)
A tiny cache-aside pattern that shows up constantly:
public Product getProduct(String id) { Product cached = cache.get(id); if (cached != null) { return cached; // cache hit } Product fromDb = repository.findById(id); // cache miss cache.put(id, fromDb, Duration.ofMinutes(10)); return fromDb;}๐Stage 3: Communication & Async (Weeks 7-8)
This is also where microservices enter. Build the hands-on side with the Microservices course.
๐Stage 4: Reliability & Scale (Weeks 9-10)
Everything above is the HLD toolkit. Consolidate it in the HLD course.
๐Stage 5: Low Level Design (Weeks 11-14)
Now zoom in. LLD is about writing extensible, clean object models.
A Strategy-pattern skeleton, the most-used LLD pattern in interviews:
public interface PaymentStrategy { void pay(int amountPaise);}public class UpiPayment implements PaymentStrategy { public void pay(int amountPaise) { /* UPI flow */ }}public class CardPayment implements PaymentStrategy { public void pay(int amountPaise) { /* card flow */ }}public class Checkout { private PaymentStrategy strategy; public void setStrategy(PaymentStrategy s) { this.strategy = s; } public void checkout(int amountPaise) { strategy.pay(amountPaise); // behavior swapped at runtime }}Go deeper with the LLD course.
๐Stage 6: Practice Problems
Theory means nothing without reps. Work these, HLD first, then their LLD counterparts:
HLD problems
LLD problems
๐A 14-Week Plan
๐How to Practice Out Loud
System design is a conversation, not an essay. For every problem: (1) clarify requirements and scale, (2) sketch the HLD, (3) name the trade-offs, (4) drill into one component's LLD, (5) discuss bottlenecks and how they fail. Record yourself, or better, defend it against a mentor.
๐Reach Senior Faster
The fastest path is repeated mock interviews with feedback from engineers who have built these systems. Prakalpana runs live online and 1-on-1 system design training covering both HLD and LLD, with real mocks and reviews. WhatsApp or call +91 9945619267 to begin.