Join ML Engineer Interview MasterClass (April Cohort) led by FAANG Data Scientists | Just 6 seats remaining...
ML Engineer MasterClass (April) | 6 seats left
Every quant interview at Jane Street, Citadel, or Optiver is deliberately designed to include at least one problem you have never seen before. That's not an accident. It's the whole point. They're not testing whether you memorized the right puzzles; they're testing what you do when your memory runs out.
Most candidates fail that test not because they lack the math, but because they have no process. When a problem looks unfamiliar, they either freeze or they thrash, jumping between half-formed approaches until time runs out. The candidates who get offers are usually not smarter. They just have a repeatable mental routine that kicks in automatically, the same way a pilot runs a checklist when something goes wrong.
Here's the uncomfortable truth interviewers won't tell you: a wrong answer with clean, visible reasoning often beats a correct answer that appeared out of nowhere. Interviewers are watching your problem-solving process in real time. They want to see how you decompose an unfamiliar situation, which tools you reach for, and whether you can catch your own errors. An unfamiliar problem is never asking you to invent new mathematics. It's asking you to recognize which familiar tools apply, and in what order. That's a learnable skill, and it's exactly what this guide builds.
Every unfamiliar problem feels different on the surface. Underneath, the same five stages apply. Memorize this table. It's the skeleton you hang everything else on.
| Phase | Time | Goal |
|---|---|---|
| 1. Restate and Simplify | 1-2 min | Confirm you're solving the right problem |
| 2. Identify the Structure | 1-2 min | Label the probability type and spot symmetry |
| 3. Choose a Strategy | 1-2 min | Pick your method before you start computing |
| 4. Execute and Sanity-Check | 5-10 min | Do the math, then verify it |
| 5. Generalize | 1-2 min | Show you understand the deeper pattern |
The time allocations are rough guides, not timers. The point is that stages 1-3 should take roughly as long as stage 4. Most candidates spend 30 seconds on setup and 10 minutes computing the wrong thing.

Read the problem once. Then close your mouth for five seconds and ask yourself: what is actually being asked? Then say it back in your own words.
What to do: - Rewrite the problem in one sentence using your own language, not the interviewer's. This forces you to process it rather than pattern-match to something familiar. - Identify the sample space explicitly. Write down: what is one outcome? What does the full space look like? - Strip any irrelevant detail. If the problem says "a casino uses red and blue chips," the colors probably don't matter. Say so.
What to say:
"Let me make sure I have this right. We're drawing cards without replacement from a standard 52-card deck, and I want the expected number of draws until I see the first ace. The sample space is all possible orderings of the deck. Is that the right framing?"
You're not asking because you're confused. You're asking to confirm, and to show the interviewer that you don't rush.
How the interviewer is evaluating you:
They're watching whether you read carefully or skim. Candidates who skip this stage often solve a related-but-wrong problem and only realize it when their answer doesn't pass a basic sanity check. Restating the problem out loud is a green flag.
Do this: Write the problem statement in one line on your scratch paper before touching any math. It anchors you when the computation gets messy.
This is where you label what kind of problem you're actually dealing with. The label determines your toolkit.
What to do: - Ask three questions: Is the sample space discrete or continuous? Are there dependencies between events, or are they independent? Is there a natural time ordering or sequential structure? - Look for symmetry. If all outcomes are equally likely, or if the problem is symmetric under some swap, write that down immediately. Symmetry arguments are often ten times faster than direct computation. - Note any conditioning. If the problem says "given that..." or "conditional on...", mark it. Conditional probability problems almost always want you to use Bayes or the law of total probability.
What to say:
"Okay, so this is a discrete problem. The events are dependent because we're drawing without replacement. I also notice there's a symmetry here: by symmetry, each of the 52 positions in the deck is equally likely to be the position of any given ace. That feels useful."
How the interviewer is evaluating you:
They want to see that you have a vocabulary for problem types. Saying "this looks like a Markov chain" or "this has a stopping time structure" signals mathematical maturity. You don't need to be right immediately; you need to be systematic.
Don't start computing until you've chosen your weapon. This is the stage most candidates skip, and it's why they end up three minutes into a messy enumeration when a symmetry argument would have finished the problem.
What to do:
Run through this checklist in order. Stop at the first one that fits.
What to say:
"I see a few options here. I could try to enumerate directly, but the sample space is large. There's a symmetry argument lurking because the aces are indistinguishable from the deck's perspective. Let me try that first. If it doesn't work cleanly, I'll fall back to conditioning on the position of the first ace."
Naming the strategy you're choosing, and why you're choosing it over alternatives, is exactly what interviewers at Jane Street and Citadel are listening for.
How the interviewer is evaluating you:
They're checking whether you have strategic awareness or just reflexes. A candidate who immediately starts summing $\sum_{k=1}^{52}$ without pausing to consider symmetry is showing a narrow toolkit. A candidate who says "symmetry won't work here because the draws are asymmetric, so I'll condition on the first event" is showing judgment.
Don't do this: Default to the method you're most comfortable with. Comfort is not the same as fit. If you always reach for recursion, you'll miss the problems that want a two-line symmetry argument.
Transition into Stage 4:
Example: "Okay, I've convinced myself the symmetry argument works here. Let me write it out formally and then check it against a small case before I commit to the answer."
Now you compute. But the sanity check is not optional and it's not something you do at the end if you have time. Build it into the execution.
What to do: - Write your math in clean, labeled steps. Don't scribble and narrate simultaneously; write a line, then explain it. This makes it easy for the interviewer to follow and easy for you to spot errors. - After reaching an answer, immediately test a boundary case. Plug in $n=1$, $p=0$, $p=1$, or whatever degenerate case makes the answer obvious. If your formula gives the wrong answer there, something is wrong. - Check that probabilities sum to 1 (or that expectations have the right sign and rough magnitude). A probability greater than 1 or a negative expected value is a signal to backtrack, not to present confidently.
What to say:
"I'm getting $\frac{52+1}{4+1} = \frac{53}{5} = 10.6$ expected draws. Let me sanity-check: if there were 4 aces in a 4-card deck, I'd expect to draw $\frac{5}{5} = 1$ card, which is right since the first card is always an ace. The formula holds there, so I'm confident."
How the interviewer is evaluating you:
They're watching whether you catch your own mistakes. An interviewer who sees you find and fix an error mid-solve is impressed, not disappointed. An interviewer who watches you present a wrong answer confidently is not. The sanity check is a signal of mathematical hygiene.
Do this: Say the sanity check out loud even when you're confident. It takes 20 seconds and it shows the interviewer you have the habit.
Most candidates stop when they have a number. That's leaving points on the table.
What to do: - State what your answer depends on. If you solved a specific case ($n=52$, $k=4$ aces), write the general formula $f(n,k)$ and make sure it reduces to your answer. - Identify which parameter changes would make the problem harder or easier. "If the draws were with replacement, the structure becomes geometric and the answer simplifies to..." - Ask yourself: is there a cleaner way to see this result? Sometimes the generalization reveals a more elegant argument than the one you used.
What to say:
"The general answer for $n$ cards with $k$ aces is $\frac{n+1}{k+1}$. That's a clean result. It makes intuitive sense: the $k$ aces divide the deck into $k+1$ gaps, and by symmetry the first ace is equally likely to be in any of those gaps. So the expected position is $\frac{n+1}{k+1}$. If $k=n$, every card is an ace and the answer is 1, which checks out."
How the interviewer is evaluating you:
At firms like Jane Street and Two Sigma, the follow-up question is almost guaranteed. They will change a parameter. If you've already generalized, you can answer in ten seconds instead of starting over. Candidates who pre-empt the follow-up are the ones who get the offer.
Two examples. Both worked end-to-end using the five-stage framework. Read them like a rehearsal, not a reference.
The problem: A standard 52-card deck is shuffled uniformly at random. How many cards do you expect to draw before seeing the first ace?
Stage 1: Restate and Simplify
Say this out loud: "So I'm drawing cards one at a time without replacement. I want the expected position of the first ace, or maybe the expected number of non-ace cards I see before it. Let me clarify: are we counting the ace itself in the draw count?"
Do this: Asking this clarification isn't stalling. It signals precision. Interviewers at Jane Street will often say "good question, let's say not counting the ace." That answer changes your final number by 1, and catching it early shows you read problems carefully.
The sample space is all 52! permutations of the deck. The quantity of interest is $T = $ the number of non-ace cards drawn before the first ace.
Stage 2: Identify the Structure
There are 4 aces and 48 non-aces. This is a counting/combinatorics problem with a clean symmetry hiding in it. No memory between draws once you think about it correctly. The aces and non-aces partition the deck, and the first ace's position depends only on the relative ordering of 52 cards.
Note the symmetry: by symmetry, the 4 aces divide the 48 non-aces into 5 gaps. Each non-ace is equally likely to fall in any of those gaps.
Stage 3: Choose a Strategy
Two approaches are viable here.
Direct computation: compute $E[T]$ by summing over positions. Doable but slow.
Symmetry argument: think about where the 48 non-aces land relative to the 4 aces. This is faster and cleaner.
Go with symmetry. When you spot it, use it.
Stage 4: Execute and Check
By symmetry, consider the 52 card positions. Place 4 aces randomly among them. The first ace appears at position $k$ with some probability, and we want $E[k-1]$ (the number of cards before it).
Cleaner: think of the 52 cards as 4 aces and 48 non-aces. By symmetry, the 4 aces are equally likely to occupy any 4 of the 52 positions. The expected position of the minimum of 4 uniform draws from ${1, \ldots, 52}$ without replacement is:
$$E[\min] = \frac{52 + 1}{4 + 1} = \frac{53}{5} = 10.6$$
So the expected number of cards drawn to get the first ace (inclusive) is $\frac{53}{5}$, and the expected number of non-ace cards seen before it is:
$$E[T] = \frac{53}{5} - 1 = \frac{48}{5} = 9.6$$
The general formula: with $n$ total cards and $k$ aces, $E[T] = \frac{n-k}{k+1}$.
Sanity check: if $k = 52$ (all aces), $E[T] = 0$. Correct, you'd see an ace immediately. If $k = 1$, $E[T] = \frac{51}{2} = 25.5$, which makes sense by symmetry since one ace splits the deck in half on average.
Do this: Run the boundary checks out loud. "Let me just verify with a degenerate case..." takes ten seconds and shows the interviewer you're not just executing a memorized formula.
Stage 5: Generalize
"If the deck had $n$ cards and $k$ aces, the answer is $\frac{n-k}{k+1}$. If we wanted the expected number of non-ace cards before the second ace instead of the first, we'd use the same order-statistics argument: the expected position of the second ace (inclusive of both aces) is $\frac{2(n+1)}{k+1}$, so the expected number of non-aces before it is $\frac{2(n+1)}{k+1} - 2$, subtracting the two aces themselves."
The problem: You start with $\$2$. At each step you flip a fair coin: heads you gain $\$1$, tails you lose $\$1$. You stop when you hit $\$0$ (broke) or $\$5$ (target). What's the probability you reach $\$5$?
Stage 1: Restate and Simplify
"So this is a random walk on ${0, 1, 2, 3, 4, 5}$ starting at 2, with absorbing barriers at 0 and 5. I want $P(\text{absorbed at 5} \mid \text{start at 2})$."
Write down: state space ${0, 1, 2, 3, 4, 5}$, absorbing states ${0, 5}$, transient states ${1, 2, 3, 4}$, fair coin so $p = 1/2$.
Stage 2: Identify the Structure
This is a Markov chain with absorbing barriers. Classic gambler's ruin. The key structural feature: the chain has no memory beyond the current state, and the transition probabilities are uniform.
Stage 3: Choose a Strategy
Recursion. Let $p_i = P(\text{reach 5} \mid \text{start at } i)$. Set up the system of equations and solve.
You could also use the closed-form result for fair gambler's ruin directly. In an interview, mention both: "I know there's a closed-form for fair coins. Let me derive it from the recursion so you can see the reasoning."
Do this: Deriving the result rather than citing it is almost always the right call. The interviewer wants to see your process. Saying "the answer is $i/N$" with no justification is a red flag, not a flex.
Stage 4: Execute and Check
For $p = 1/2$, the recursion is:
$$p_i = \frac{1}{2} p_{i-1} + \frac{1}{2} p_{i+1}, \quad i \in {1, 2, 3, 4}$$
Boundary conditions: $p_0 = 0$, $p_5 = 1$.
Rearranging: $p_{i+1} - p_i = p_i - p_{i-1}$. The differences are constant, so $p_i$ is linear in $i$:
$$p_i = ai + b$$
Apply boundaries: $p_0 = 0 \Rightarrow b = 0$. $p_5 = 1 \Rightarrow a = 1/5$.
$$p_i = \frac{i}{5}$$
So $p_2 = \frac{2}{5}$.
Sanity check: $p_1 = 1/5$, $p_4 = 4/5$. By symmetry, $p_i + p_{N-i} = 1$ (starting at $i$ and starting at $N-i$ are mirror images). Check: $p_2 + p_3 = 2/5 + 3/5 = 1$. Correct.
Now here's what the dialogue actually looks like in the room.
Do this: When the interviewer fast-forwards you, go with it. Don't insist on finishing your preamble. Skipping to the recursion shows you can read the room and that you already knew where you were going.
Do this: When an interviewer waves off the algebra and asks for intuition, give the qualitative answer first, then offer the formula. Reversing that order makes you look like you're hiding behind computation.
| Problem signal | What you're seeing | First approach |
|---|---|---|
| "Expected number of steps/draws/flips" | Stopping time | Recursion or linearity of expectation |
| "Sequence of events, each depends on previous" | Markov structure | Define states, write transition equations |
| "Symmetric setup, multiple equivalent outcomes" | Hidden symmetry | Symmetry argument before any computation |
| "At least one / first occurrence" | Geometric-type | Complement or indicator variables |
| "Arrange $n$ objects, count favorable" | Combinatorics | Direct counting or bijection |
| "Probability generating function, sums of RVs" | Convolution structure | Generating functions or MGF |
| "Absorbing barriers, random walk" | Gambler's ruin | Linear recursion, characteristic equation |
| "Optimal stopping, when to act" | Secretary / threshold problem | Backward induction, dynamic programming |
You will get stuck. The question is whether you get stuck visibly and productively, or silently and fatally.
When you hit a wall at Stage 3 or 4, here's the exact sequence:
Step 1: Say what you know. "I've set up the recursion correctly. I'm having trouble seeing how to close it. Let me think about whether there's a smarter way to parameterize the states."
Step 2: Try a simpler version. "Let me solve the case with just three states instead of five and see if the pattern is obvious there." Solve the baby problem out loud. Often the structure reveals itself.
Step 3: Ask for a nudge, not an answer. "I think I'm missing something about the boundary behavior. Is there a hint you can give me about the structure?" This is not giving up. Every interviewer at a top firm knows the difference between a candidate who is lost and one who is productively stuck and knows it.
Don't do this: Go silent for 90 seconds. Interviewers interpret silence as confusion, not concentration. Even saying "I'm trying to figure out whether conditioning on the first step helps here" is better than nothing. It shows you have a direction.
The verbal moves that buy you time without losing the interviewer:
Don't save the sanity check for the end. Weave it in as you go.
After writing a formula, immediately ask: what happens at the boundary? For the gambler's ruin with $N = 5$, check $p_0 = 0$ and $p_5 = 1$ before moving on. Takes five seconds. Catches sign errors and off-by-ones before they propagate.
After getting a probability, check that it's between 0 and 1. After getting an expectation, check that it has the right units and the right order of magnitude. If you expect to draw 9.6 cards before the first ace in a 52-card deck, does that feel right? There are 48 non-aces and 4 aces, so roughly one ace every 13 cards. Seeing about 9-10 non-aces first is plausible.
After finishing, check the symmetric case. If the problem has a natural symmetry (like $p_i + p_{N-i} = 1$ in gambler's ruin), verify it holds. If it doesn't, you made an error somewhere.
Most candidates who fail quant interviews don't fail because they couldn't do the math. They fail because of process errors that compound: a misread problem, a stubborn strategy, thirty seconds of silence at the wrong moment. These mistakes are fixable tonight.
You hear the problem, you recognize a pattern, you start computing. Forty-five seconds in, you're deep into a calculation for the expected number of draws from an urn. The interviewer meant draws with replacement. You meant without.
This is the most expensive mistake on the list because the cost is invisible until the end. You do real work, produce a real answer, and then either the interviewer corrects you (awkward) or you submit a confidently wrong number (worse).
Don't do this: Start writing equations before you've said the problem back in your own words.
Do this: Spend thirty seconds restating the problem out loud. "So I'm looking for the expected number of fair coin flips until I see two heads in a row, is that right?" This takes half a minute and eliminates the single most common failure mode.
Interviewers penalize this because it signals you're pattern-matching on surface features instead of actually reading. The fix: restate before you compute, every single time.
You know how to enumerate. You're comfortable setting up a sum. So that's what you do, even when the problem has an obvious symmetry that collapses it to a one-liner.
Classic example: "What's the probability that the maximum of two dice rolls is greater than the minimum?" A candidate who defaults to enumeration lists all 36 outcomes. A candidate who spots the symmetry notes that the only non-trivial case is ties, and the answer falls out in ten seconds.
The interviewer isn't just watching whether you get the answer. They're watching whether you pick up the right tool. Grinding through a computation that symmetry would have dissolved signals that you don't have full command of your toolkit.
Don't do this: Start with direct enumeration just because it feels safe.
Before you compute anything, ask yourself: is there a symmetry argument here? Can I condition on the first event and recurse? Would a generating function collapse this? Thirty seconds of strategy selection is almost always worth it.
This one is brutal because it feels like the right thing to do. You're thinking hard, you don't want to say something wrong, so you go quiet and work it out internally. The interviewer watches you stare at the page for ninety seconds and writes down "got stuck, couldn't recover."
Silence reads as confusion, not concentration. There is no version of a thirty-second silence that helps you.
Do this: Keep a verbal running commentary even when you don't know the answer yet. Specific phrases that work: - "Let me try conditioning on the outcome of the first step..." - "I'm not sure this approach is right, but let me see where it leads..." - "I want to check a small case first to build intuition..."
These phrases do two things. They show the interviewer your reasoning process (which is what they're actually grading), and they often unstick you because articulating the problem out loud forces clarity. Talking through confusion is a skill. Practice it.
You finish the calculation, you get a number, you state it. The interviewer asks a follow-up and the whole thing unravels. Turns out your answer gives a probability greater than 1 when $p = 0.9$. A ten-second boundary check would have caught it.
Don't do this: Treat the sanity check as optional, something you do if you have time left over.
The sanity check is part of the solve. Plug in $p = 0$ and $p = 1$. Check that your probabilities sum to 1. Verify the $n = 1$ case by hand. If your formula breaks on a boundary condition, you want to find that before the interviewer does.
Catching your own mistake is actually a positive signal. It shows mathematical maturity. Saying "wait, let me check this at $p = 1$... hmm, that gives me 2, which can't be right, let me find the error" is a recovery. Submitting the wrong answer confidently and having the interviewer point it out is not.
This is different from the "familiar strategy" mistake. This is when you know a cleaner approach exists but you don't trust it, so you do the long version anyway. You set up a 10-state Markov chain by hand when the problem has a two-line symmetry argument. You get the right answer, but you've spent twelve minutes doing it.
At Jane Street and Citadel, the follow-up to a brute-force solution is often "is there a faster way?" If you can't answer that, you've signaled that you found the answer but didn't understand the problem.
Do this: After you have a solution, take fifteen seconds to ask yourself whether a cleaner argument exists. If you see one, mention it even if you don't fully execute it. "I solved this by direct recursion, but I think there's a symmetry argument that gets here faster. Want me to sketch it?"
That sentence alone demonstrates the kind of mathematical taste these firms are hiring for.
You get the answer. You say the answer. You look up. The interviewer nods and says "interesting, what if the coin were biased?" You weren't expecting it and you have to restart from scratch.
Every top-firm interviewer has a follow-up ready. It's almost always a parameter variation: what if $n$ changes, what if the distribution is different, what if we add a third player? Candidates who treat the numerical answer as the finish line consistently leave points on the table.
Do this: Before the interviewer asks, say it yourself. "The answer is $\frac{2}{3}$. If we generalize to a biased coin with heads probability $p$, I'd expect the answer to scale like... let me think about that for a second."
You don't have to solve the generalization. Anticipating it and framing it correctly shows you understand the structure of the problem, not just the specific instance. That's the difference between a hire and a strong pass.
Scan this once before you walk in. If you only have two minutes, start at the framework table and read down.
| Stage | Time Budget | What You Do | What You Say |
|---|---|---|---|
| 1. Restate & Simplify | 1-2 min | Rephrase in your own words; define the sample space | "So what we're really asking is..." |
| 2. Identify Structure | 1-2 min | Label the type: discrete, conditional, Markov, stopping time; note symmetry | "This looks like a Markov chain because the future only depends on the current state." |
| 3. Choose Strategy | 1-2 min | Pick from the strategy table below; commit out loud | "I'm going to try conditioning on the first step." |
| 4. Execute & Check | 5-8 min | Work the math; run a boundary case before you present the answer | "Let me verify this with n=1 before moving on." |
| 5. Generalize | 1 min | Shift one parameter; state what changes and why | "If the coin were biased with probability p, the answer becomes..." |
| Problem Signal | First Approach | One-Line Example |
|---|---|---|
| "How many ways..." / counting | Direct computation or combinatorics | Arrangements of cards, committee selection |
| "Expected number of steps/trials..." | Recursion or linearity of expectation | Expected draws before first ace |
| "Sequence with memory" / "given current state" | Markov chain + recursion | Gambler's ruin, random walk absorption |
| "Fair game?" / symmetric setup | Symmetry or martingale argument | Coin flipping, symmetric random walk |
| "Probability of pattern appearing" | Generating functions or optional stopping | HHT before HTH |
| "Conditional on event X..." | Conditioning + Bayes | Disease testing, urn draws without replacement |
| "At least one..." / complement is cleaner | Complement counting | P(at least one match) = 1 - P(no match) |
Run at least one of these before you present your final answer.
Ask yourself these after you land an answer. The interviewer will ask at least one of them anyway.
Keep these ready. They signal process, buy you thinking time, and keep the interviewer engaged.