A concrete plan beats vague "do more problems" advice. Here is how many problems to solve, the template to internalize, and a schedule that gets you ready in two to three weeks.
How many problems — and which
You don't need all twenty. Aim for 12–15 problems chosen to span the archetypes, so every pattern and concurrency situation shows up at least twice.
| Archetype | Representative problems | What it drills |
|---|---|---|
| State machine | Vending machine, elevator, ATM | State pattern, lifecycle |
| Strategy-heavy | Parking lot, rate limiter | Strategy, pluggable algorithms |
| Composite tree | File system | Composite, recursion |
| Concurrency-critical | Movie booking, LRU cache, pub/sub | Locking, atomics, races |
| Multi-pattern showcase | Logger library, notification system | Combining 4+ patterns |
| Warm-ups | Snake & ladder, tic-tac-toe | Speed, clean modeling |
Do one from each row first; then a second pass for depth.
The internalizable template
Memorize this nine-section structure so any solution writes itself in the same shape (it's the structure of every solution in this module):
1. Functional requirements what it must do 2. Non-functional requirements concurrency, extensibility, scale 3. Core entities the nouns -> classes (table) 4. Class diagram relationships 5. Key interfaces & classes the code that proves it 6. Design patterns used pattern + the trigger that justified it 7. Trade-offs & alternatives what you'd change and why 8. Common follow-ups anticipate the next questions 9. What interviewers probe the senior signals
A 3-week schedule
WEEK 1 Framework + patterns + concurrency topics.
Then 4 problems UNTIMED, studying the template.
WEEK 2 6 problems TIMED at 45 min, narrating out loud.
Review each against the reference; log misses.
WEEK 3 4-5 problems TIMED, ideally with a mock partner.
Re-do the 2-3 problems you scored worst on.Make practice match the real thing
Keep a mistake log
After each problem, write down what you missed: the race you didn't spot, the God class you built, the pattern you forced. Patterns will emerge — most people repeat the same two or three mistakes. Targeting those is far higher-leverage than grinding new problems.