Introduction
Coding Interview Intro
There are multiple types of coding interviews. The three most common are algorithmic, coding challenge, and code review. A real loop may include two or three of these across separate rounds. Ask your recruiter which ones you will face.
Algorithmic rounds
The classic LeetCode-style round, 30-45 minutes. You get a problem statement, you write a function, you analyze its complexity. The interviewer tests pattern recognition, complexity reasoning, and correctness: can you name the data structure that removes the bottleneck, trace the invariant, and finish with a test order that protects the edge cases?
Preparation is pattern volume. The catalog of DSA topics in the Foundations section exists for this round.
Read the protocol for algorithmic rounds.
Coding challenge rounds
A practical build round, 45-60 minutes. You get an open-ended prompt - "build a key-value store", "implement an auth manager" - and requirements arrive in phases. The interviewer tests state design, incremental delivery, and testing under change: your state model, your ability to ship a thin slice early, and how you adapt when the next requirement arrives. These rounds usually include batches of tests, ordered in levels.
Preparation is shape recognition and incremental delivery. The Coding Challenge Interviews article maps the five shapes that cover most prompts and gives you a speed drill for each.
Read the coding challenge deep dive.
Code review rounds
You are handed a snippet - sometimes a real bug from the company's codebase, sometimes a synthetic example - and asked to find the bug, explain the root cause, and discuss the fix. The round is 30-45 minutes. The interviewer tests runtime depth that algorithmic rounds do not reach: threading, concurrency, memory model, runtime internals, and your ability to reason about a system you did not write.
Preparation is less about volume and more about knowing where the common bugs live: race conditions, stale references, memory leaks, deadlocks, off-by-one in iterators, visibility and ordering guarantees.
Read the code review deep dive.
The protocol is the same
Regardless of type, the in-room loop is the same: clarify, plan, build, verify. The clarify step changes (you ask about constraints in an algorithmic round, about requirements in a coding challenge, about the intended behavior in a code review), but the discipline of stating your assumptions before acting does not.
Foundations
Once you know which round you are preparing for, the Foundations section covers the data structures and algorithms you need for any algorithmic round, and the shape recognition that makes coding-challenge rounds faster.
Done reading? Mark it so it sticks in your dashboard.