A practice system for coding interviews
Build fluency through repetition.
Most interview prep hands you a LeetCode problem and a video. Reps treats each problem as the top of a ladder: you practise the small moves underneath it until they are automatic, then the problem is just those moves assembled.
- 15
- patterns, in order
- 603
- ladder reps
- 53
- LeetCode problems
Try it: four reps up to Two Sum
A slice of the hashing ladder. Write the code, run it against the real tests, ask for a hint if you want one. Each rep uses the move from the one before.
Rep 1 of 4 · Build
Build a dict in a loop
The smallest useful move: start empty, loop, store, return.
Write squares_map(n) that returns a dict mapping each number 1..n to its square.
squares_map(3) → {1: 1, 2: 4, 3: 9}
In plain English
n a whole number, like 3
You return a dict. Keys: the numbers 1 up to n. Values: each number times itself.
Python runs in your browser. The first run takes a few seconds to load it. Nothing you type is saved or sent anywhere.
How every pattern is learned
- 1
Ladder
Each pattern is learned from the ground up in small reps: trace it, write it, break it, fix it. Writing code is the main activity, not reading about it.
- 2
Mastery check
Cold reps from a blank editor, passed without opening the solution, before the next pattern unlocks.
- 3
Bridge, then the problem
Each problem lists the moves it needs. The ones the ladder did not teach get a few reps of their own, placed right before it. Then the problem is those moves assembled.
- 4
Spaced re-solves
Every problem comes back cold 3, 10 and 30 days after you first solve it. Needing help brings it back the next day.
Pacing, not daily goals
- The plan is one ordered queue. Next up is always the first thing you have not done, whatever the date.
- The calendar is a gauge over that queue: on pace, ahead or behind, and when you would finish at the current pace.
- Missing a day moves the gauge. Nothing is rebuilt and nothing is dropped.
A base plan for software engineering interviews
Thirteen weeks for new-grad and entry-level loops, in Python. Fifteen patterns in the order they build on each other, each with its ladder, its check and its problems, and each problem reached through a short bridge of the moves it needs. Open a pattern to see what it covers.
Soft start
Week 1
About 1.5–2 hours a day
One pattern, small days, re-solving problems you already know.
Build
Weeks 2–4
About 3–3.5 hours a day
New ladder work, up to 3 re-solves, a short afternoon block.
Full
Weeks 5–12
About 4–4.5 hours a day
New ladder work, up to 5 re-solves, mocks, design and stories.
Buffers
Weeks 7 and 11
Re-solves only
No new ladder work. They absorb whatever slipped.
1HashingWeeks 1–2
The ladder builds
Dictionary ladder · Valid Anagram · Index maps · Complements · Two Sum
2Strings + two pointersWeeks 2–3
The ladder builds
Strings · Slicing · String methods · Two pointers · Move one pointer · Running min/max
3Sliding windowWeek 3
The ladder builds
Windows · Window state · Longest Substring
4StacksWeeks 3–4
The ladder builds
Stacks · Matching pairs · Valid Parentheses
Problems
5Binary searchWeek 4
The ladder builds
While + indexes · Binary search · Search variants
6Linked listsWeeks 4–5
The ladder builds
ListNode + traversal · Pointer rewiring · Dummy head
7Recursion + treesWeeks 5–6
The ladder builds
Functions · Recursion · TreeNode · Tree DFS · Two trees at once · Changing trees
8TriesWeek 6
The ladder builds
Trie nodes · Inserting words · Searching a trie · Prefixes
9BFS + gridsWeeks 6–8
The ladder builds
deque · BFS by level · Level Order · Grids · Neighbors · Grid BFS
10GraphsWeeks 8–9
The ladder builds
Adjacency lists · Graph DFS · Graph BFS · Path Exists · Components · Directed cycles
11Sorting + heapsWeek 9
The ladder builds
Sorting · Sort keys · Frequency + sort · heapq · Max-heap · Top-k
12IntervalsWeeks 9–10
The ladder builds
Intervals
13BacktrackingWeek 10
The ladder builds
Decision trees · Path state · Subsets
14Dynamic programmingWeeks 10–13
The ladder builds
Recurrences · Memoization · Bottom-up DP · Rolling state
15MatrixWeek 13
The ladder builds
Swap, transpose, reverse · Walking the edges · Mark first, change after
Alongside the patterns: about two mock interviews a week from week 4, a design item most Mondays (object design first, then one end-to-end system), and twelve behavioral stories written and rehearsed. Checkpoints at days 30, 60 and 90 compare patterns cleared, problems done and the share of re-solves done unaided.
What it is built on
NeetCode walkthroughs
A video explanation for nearly every problem in the plan. Watch the idea, pause before the code, write it yourself.
Blind 75
The core problem list the plan is built around.
LeetCode
Where the problems and their re-solves are done, from a blank editor.
Spacing research (Cepeda et al., 2008)
Why re-solves are spread over days and weeks instead of repeated the same day.
Python in the browser (Pyodide)
How the editor on this page runs real Python with no server.