Skip to content

Study Plans and Roadmap

Every page on this site teaches one topic well, but nobody studies one topic at a time in isolation — you have a deadline, a target company, or a target rating, and a limited number of hours per week. This page turns the phases you’ve already read (or are about to read) into an actual schedule: an 8-week interview plan, a competitive-programming ladder, and a system for tracking what’s actually sticking.

What you’ll learn

  • An 8-week interview prep plan mapping each week to specific phases on this site.
  • A competitive-programming ladder from beginner to advanced, tied to Codeforces-style rating bands.
  • How to use spaced repetition and a weak-area log instead of just grinding problems linearly.
  • Rough problem-count targets by difficulty for interview readiness.
  • How to structure mock interviews in your final two weeks.

An 8-week interview prep plan

This assumes roughly 8-12 hours a week. Compress it to 4-5 weeks if you’re already comfortable with Phases 1-4, or stretch it if you’re starting from zero.

WeekFocus (this site’s phases)GoalProblems
1Phase 1: Foundations, Phase 2: Python for DSA and CPComplexity analysis, fast I/O, recursion basics10-15 easy array/string problems
2Phase 3: Core Data StructuresArrays, linked lists, stacks, queues, hash maps15 problems, mostly easy
3Phase 4: Sorting and Searching, start Phase 5Sorting fundamentals, two pointers, sliding window15 problems, easy-to-medium
4Phase 5 (continued)Fast/slow pointers, merge intervals, cyclic sort, top K, monotonic stack, prefix sums, backtracking, binary search on answer20 problems, medium
5Phase 5 (BFS/DFS), start Phase 7Graph traversal basics, connected components15 problems, medium
6Phase 6: Dynamic Programming1D and 2D DP, knapsack-style problems20 problems, medium-to-hard
7Phase 7 (continued), light Phase 8 if senior-levelUnion-Find, Dijkstra, topological sort; segment trees if expected15 problems, medium-to-hard
8Review + this phase, mock interviewsClose weak areas, rehearse the seven-step framework10-15 mixed problems + 4-6 mock interviews

A competitive-programming ladder

Codeforces rating bands (or the rough equivalent on any other judge) map reasonably well onto a progression through this site’s phases.

Rating bandFocusTied to this site
Newcomer (unrated - 1200)Implementation, basic math, brute force, simple greedyPhases 1-4
Pupil / Specialist (1200-1600)Two pointers, sliding window, binary search, basic DP, BFS/DFSPhase 5, start of Phase 6
Expert (1600-1900)Full DP toolkit, graph algorithms (Dijkstra, Union-Find, topological sort), basic number theoryPhases 6-7
Candidate Master and above (1900+)Segment trees, advanced DP optimizations, string algorithms, heavier number theoryPhase 8
diagram The full roadmap: how the phases fit together mermaid

Climbing the ladder doesn’t require finishing every phase before starting the next one — most competitors cycle back through earlier phases as gaps show up in harder problems, which is exactly what spaced repetition below is for.

Spaced repetition and tracking weak areas

Solving a problem once and moving on is the least efficient way to make a pattern stick. Instead:

  • Log every problem you attempt: name, pattern/tag, difficulty, date, and whether you solved it independently, with a hint, or by reading the solution.
  • Re-attempt problems you struggled with after about a week, and again after about a month, from scratch (no peeking at your old code) — if it’s still slow the second time, the pattern hasn’t stuck yet.
  • Tag by pattern, not just by problem name, so you can see which patterns (from the Pattern Recognition Guide) keep showing up in your “struggled” column — that’s your actual weak-area list, and it’s more useful than a raw count of problems solved.
  • A plain spreadsheet with columns for problem, pattern, difficulty, date, and outcome is enough — the tracking matters more than the tool.

Mock interviews

Reading about the seven-step framework is not the same as running it under time pressure with someone watching.

  • Do 4-6 mock interviews in your final two weeks, ideally with a peer, a platform built for it, or even by recording yourself narrating a solve out loud.
  • Alternate roles. Interviewing someone else sharpens your sense of what “good communication” actually looks like from the other side of the table.
  • Time-box each mock to about 45 minutes, matching real onsite rounds, and force yourself to talk through every step of the framework even on problems you recognize instantly.
  • Review afterward, not just the code — did you clarify first? Did you state the brute force before optimizing? Did you test your own code before being asked?

Recap

  • An 8-week plan moving through Phases 1 through 8 (with a review week using this phase) covers the full interview syllabus at a sustainable pace.
  • The competitive-programming ladder ties Codeforces-style rating bands directly to phases on this site — climb it by cycling back to close gaps, not by rushing forward.
  • Log every problem by pattern and revisit struggles after a week and a month — spaced repetition beats one-and-done grinding.
  • Aim for roughly 150-250 problems total, and close out prep with several timed mock interviews.

Next: Problem Sets — curated problem lists organized by pattern and difficulty, ready to plug straight into the plan above.

If this helped you, consider buying me a coffee ☕

Buy me a coffee

Was this page helpful?

Let us know how we did