Elite Coding Interview Mastery Program
A complete, lab-based, phase-structured training system to take you from beginner/intermediate to a candidate who can succeed at any coding interview — FAANG, infrastructure companies, distributed systems teams, compilers/runtimes, quant/HFT, staff/principal practical coding, and competitive-programming-style interviews.
This is not a roadmap. It is a training system: every phase has concept docs, runtime docs, hands-on labs in a fixed format, mock interviews with rubrics, failure analysis, and spaced repetition.
How To Use This Program
- Pick a track in schedules/ — Accelerated (12 weeks), Serious (6 months), or Elite (12 months).
- Read the universal framework first — FRAMEWORK.md. Use it on every problem.
- Work through phases in order — they have dependencies. Do not skip Phase 0 or Phase 1.
- For every problem, fill out REVIEW_TEMPLATE.md and schedule revisits via SPACED_REPETITION.md.
- When you fail, run the diagnosis in FAILURE_ANALYSIS.md. Do not skip this.
- Mock interview weekly minimum — see phase-11-mock-interviews/.
- Graduate only when READINESS_CHECKLIST.md is fully passed.
Global Framework Documents
| Document | Purpose |
|---|---|
| FRAMEWORK.md | The 16-step universal problem-solving framework + 11-step stuck protocol |
| COMMUNICATION.md | What to say (and not say) during an interview, with sample phrases |
| CODE_QUALITY.md | Quality bar for interview code, with bad-vs-good comparisons |
| REVIEW_TEMPLATE.md | Per-problem review template (use after every solve) |
| FAILURE_ANALYSIS.md | 16-category failure taxonomy with diagnosis, fix, drill, re-test |
| SPACED_REPETITION.md | 6-tier review intervals + per-tier protocol |
| READINESS_CHECKLIST.md | Final binary checklist before going to interviews |
Schedules
| Track | Audience | Doc |
|---|---|---|
| 12-Week Accelerated | Urgent prep, 1 deadline coming up | schedules/12_WEEK_ACCELERATED.md |
| 6-Month Serious | Strong Big Tech readiness | schedules/6_MONTH_SERIOUS.md |
| 12-Month Elite | Top-tier, senior/staff, competitive-heavy | schedules/12_MONTH_ELITE.md |
Phases
| # | Phase | Target Level | Folder |
|---|---|---|---|
| 0 | Interview Execution Baseline | Beginner → Easy | phase-00-execution-baseline/ |
| 1 | Programming & Data Structure Foundations | Easy → Medium | phase-01-foundations/ |
| 2 | Standard Coding Interview Patterns | Medium → Medium-Hard | phase-02-patterns/ |
| 3 | Advanced Data Structures | Medium-Hard → Hard | phase-03-advanced-ds/ |
| 4 | Graph Mastery | Medium-Hard → Hard | phase-04-graphs/ |
| 5 | Dynamic Programming (Basic → Extreme) | Medium → Very Hard | phase-05-dp/ |
| 6 | Greedy, Proofs & Mathematical Thinking | Medium-Hard → Hard | phase-06-greedy/ |
| 7 | Competitive Programming Acceleration | Hard → CP-Hard | phase-07-competitive/ |
| 8 | Practical Engineering Coding Interviews | Medium-Hard → Hard | phase-08-practical-engineering/ |
| 9 | Language & Runtime Deep Dive | All levels (cross-cutting) | phase-09-language-runtime/ |
| 10 | Testing, Debugging & Correctness | All levels (cross-cutting) | phase-10-testing-debugging/ |
| 11 | Mock Interview Mastery | Beginner → Grandmaster | phase-11-mock-interviews/ |
| 12 | Grandmaster / Final Boss | CP-Hard → Grandmaster | phase-12-grandmaster/ |
Difficulty Ladder
| Level | What You Solve | Solving Time | Failure Means | When To Move Up |
|---|---|---|---|---|
| Beginner | Trivial array/string traversals | 5–10 min | Confusion about loops/indexing | After 30 problems with 0 confusion |
| Easy | LeetCode Easy | 10–15 min | Wrong brute force, syntax errors | 90% solved <15 min for 50 problems |
| Medium | LeetCode Medium | 25–35 min | Missed pattern, bad complexity | 75% solved <35 min for 100 problems |
| Medium-Hard | Top-100 Mediums, easy Hards | 30–45 min | Couldn’t optimize past brute force | 70% solved <45 min for 60 problems |
| Hard | LeetCode Hard | 45–75 min | Failed to find any non-trivial approach | 50% solved <60 min for 50 problems |
| Very Hard | LC Hard tagged “very hard”, Codeforces 1900–2100 | 60–120 min | Conceptual gaps in algorithm class | 40% solved unaided for 30 problems |
| CP Hard | Codeforces 2100–2400, AtCoder ARC F | 90–180 min | Missing a CP-specific technique | Solving consistently in contest |
| Grandmaster | CF 2400+, AGC, ICPC WF | Open-ended | Even with hints, can’t make progress | When you stop needing this curriculum |
For each level: failure is normal. The value is in the review process and the failure analysis, not the original solve.
When to repeat a level: if your unaided success rate is below the threshold above, do another 30–50 problems at the same level before moving up. Moving up too early calcifies bad habits.
Progress Tracking
Use a single spreadsheet/journal with columns:
- Date
- Phase / Pattern
- Problem name + source
- Solved unaided? (Y/N)
- Time spent
- Got it on first attempt? (Y/N)
- Why missed (if missed) — link to FAILURE_ANALYSIS.md category
- Next review date — from SPACED_REPETITION.md
Without tracking, the spaced repetition system collapses. Without spaced repetition, knowledge decays faster than you accumulate it.
A Note On Honesty
This curriculum cannot guarantee outcomes. What it guarantees is:
- If you complete every phase honestly (failed problems reviewed, mocks done with full effort, no shortcuts), you will recognize > 95% of common interview problem patterns.
- You will be able to solve unfamiliar problems — because the framework forces you to derive solutions, not memorize them.
- You will fail mock interviews repeatedly and learn from each one. This is the entire point.
- You will know your own weaknesses precisely, and which phase to revisit.
Skip the failure analysis, skip the reviews, skip the mocks — and the curriculum becomes a list of topics. Topics don’t get you hired.