Complete Basics
Syntax confidence: input/output, conditions, loops, arrays, strings. If you already code daily, clear this stage fast.
The goal is to stop thinking about syntax so you can start thinking in edge cases and constraints.
The 90 problems FAANG interviews actually repeat, ordered so each one builds on the last. One problem a day, from complete basics to the final boss, with Codeforces sprinkled in so you learn to solve, not memorize.
The full 90-day plan is free. Sign in to unlock problem links and track your streak — your progress syncs to your account.
Also free: the Development RoadmapSyntax confidence: input/output, conditions, loops, arrays, strings. If you already code daily, clear this stage fast.
The goal is to stop thinking about syntax so you can start thinking in edge cases and constraints.
Frequency maps, prefix sums, set tricks — the vocabulary every other pattern is written in.
Most interviews open here. Build the habit of proving why one pass and a hash map are enough.
Shrinking search space from both ends and maintaining windows with invariants.
The highest-frequency medium pattern at FAANG. If you can state the window invariant out loud, the code writes itself.
LIFO thinking: matching, monotonic stacks, and expression evaluation.
Monotonic stack questions separate candidates who memorized from candidates who understand. Learn the 'pop while worse' template once, reuse it forever.
Search on indexes, then search on answers. Master the boundaries and the off-by-ones disappear.
"Binary search on the answer" (Koko, drink queries) is a FAANG favorite because it tests whether you see monotonicity, not whether you memorized mid = (lo+hi)/2.
Pointer surgery: reversal, fast/slow pointers, and the design classic LRU Cache.
LRU Cache is one of the most-asked design questions at Amazon and Meta. Everything before it here is training for it.
Recursion you can trust: traversals, BST properties, and building intuition for 'what does this subtree return?'
Tree questions are the most common medium at Google. The trick is always the same: decide what each subtree must report upward.
Priority queues for 'k-th' and streaming problems, plus greedy proofs you can defend out loud.
Find Median from a Data Stream is a top-5 Amazon question. Greedy is easy to code and hard to justify — practice saying why the local choice is safe.
Systematic exploration: choose, explore, un-choose — then the same idea on grids and adjacency lists.
Number of Islands and Course Schedule are the two most-asked graph questions in the industry. BFS/DFS on a grid must become muscle memory.
From recursion to memo to table. Ten problems that cover every 1D and 2D DP shape interviews use.
DP is where offers are decided. Every problem here follows the same script: define the state, write the recurrence, pick the base case.
Two closers that combine everything: intervals under pressure, and the most famous hard problem in interviews.
Finish strong. If you can whiteboard Trapping Rain Water three different ways (brute force, prefix arrays, two pointers), you are ready for any onsite.