How I prep for both DSA and System Design (my actual process after multiple interview loops)
Anonymous User
124

I've been through interview loops at Amazon, Google, and startups. After trying every resource out there, here's what I actually use now.

For DSA: Pattern-based, not random

The biggest mistake I made early on was solving random problems. 500 problems solved, still freezing in interviews because I couldn't recognize patterns fast enough.

What fixed it: grouping problems by pattern and solving 5-6 per pattern before moving to the next.

The order that worked for me:

Week 1-2: Two Pointers, Sliding Window, HashMap/Frequency
Week 3-4: BFS, DFS, Topological Sort
Week 5-6: Binary Search (on answer space), DP (linear + 2D)
Week 7-8: Monotonic Stack, Heap, Backtracking

How to know which pattern to use

You see this in the problemUse this
"shortest path", "minimum steps"BFS
"all possibilities", "generate all"Backtracking
"substring with constraint"Sliding Window
"sorted array + find target"Binary Search
"min/max cost", "number of ways"DP
"dependencies", "ordering"Topological Sort
"next greater element"Monotonic Stack

Once you internalize this table, you recognize patterns within 30 seconds of reading a new problem.

For System Design: Fixed structure, every time

Most people watch 2-hour YouTube videos and forget everything the next day. What works is following the same steps every time:

  1. Clarify scope (3 min) — top 3 requirements only
  2. Core entities (2 min) — nouns from the problem
  3. API design (3 min) — one endpoint per requirement
  4. Build incrementally (20 min) — start with 3 boxes, add complexity only when forced
  5. Deep dives (15 min) — Bad → Good → Great for 2-3 hard parts

The key: don't dump a 15-service architecture in the first 5 minutes. Start simple, add one piece at a time, explain WHY.

The patterns that repeat across every design

PatternShows up in
Fan-out (write vs read)Twitter, Instagram, Notifications
Pub-Sub / Event-drivenChat, Payments, Notifications
CQRS + Event SourcingStock Broker, Digital Wallet
Saga PatternWallet, Food Delivery
Consistent HashingKey-Value Store, CDN
Rate LimitingAny public-facing API
CDC (Change Data Capture)Search sync, analytics

Every "new" system design question is just 2-3 of these patterns combined.

What I use

I've been documenting everything as I study:

  • DSA: 150 problems mapped by pattern with one-line approach + complexity. Quick-Fire 50 for 1-week prep, The 75 for 4-week, The 150 for full coverage.
  • System Design: 20 designs (Uber, WhatsApp, Netflix, Zerodha, Zomato, etc) built incrementally with diagrams and deep dives.
  • Company-specific: Problems tagged by company (Amazon, Google, PhonePe, Flipkart) so you know exactly what they ask.

All free at systemcraft.in. No signup needed, no paywall. Built it because I couldn't find one place that covered both DSA patterns and system design in interview-ready format.


What does your prep process look like? Pattern-based or random grinding? Curious to hear what works for others.

Comments (0)