TICKETS 04 OF 4 RUNS LEFTACC --
OUTCRY

PRACTICE GUIDE   OLD MISSION

Old Mission Coding Problem: what the test is, and how to train for it

The Old Mission coding problem screen is 1 questions in 25 minutes - about 25 minutes each - written in a code editor and run against tests you cannot see. There is no negative marking, so leaving an item blank gains you nothing over guessing.

Where it sits: Coding section of the same test. The practice sitting on this page runs the same item count, the same clock and the same marking rule, with questions generated by Outcry rather than taken from Old Mission.

Outcry is not affiliated with Old Mission and has no access to their assessment content. This guide describes an assessment format that candidates report publicly; the questions here are generated by Outcry and are not Old Mission’s own.

What it screens

A Chicago-based options market maker and hedging firm trading listed derivatives across global exchanges.

  • Reading concurrent code and pointing at the defective line
  • Order-book data structures: what happens on a cross, a cancel, a partial fill
  • Algorithmic complexity chosen for the input sizes stated in the problem
  • Monte Carlo methods and when a simulation beats a closed form

Where it sits at Old Mission

This section does not arrive on its own. It closes the paper, and the sitting around it runs 60 minutes and 26 items in total, with Quantitative on the same continuous clock. Candidates who prepare only for this round tend to be caught by the pacing of the rest.

There is no going back. You answer or skip, and the next item loads, which means the decision to leave an item is final at the moment you make it.

The format

These are the numbers the Old Mission sitting on this site runs on, matching the format candidates report.

Questions1
Time25 minutes
Per question25 minutes
Negative markingNo
Answer styleCode editor, run against hidden tests
Where it sitsCoding section of the same test

What it tests, with a worked example

Every example below is generated by Outcry, drawn from the same question generators the timed drills run. None of them is Old Mission’s.

Complexity that is actually graded

Hidden tests sized so the naive solution times out. A correct answer that is too slow scores the same as a wrong one.

Reading someone else's code

A diff or a function with a bug in it, and the question is where.

Example

A lock-free SPSC ring buffer publishes its head index with memory_order_relaxed. What can go wrong?

  • The index can wrap incorrectly
  • The consumer may see the new index before the slot's data is visible
  • The producer may block
  • Nothing - SPSC needs no ordering

Answer The consumer may see the new index before the slot's data is visible

The publishing store needs release semantics to pair with the consumer's acquire load, or the buffer write can be reordered after it.

Language and systems detail

Memory, references, undefined behaviour and the things that bite in production.

Example

What is the solution to T(n) = T(n/2) + n^2?

  • Theta(log n)
  • Theta(n^3 log n)
  • Theta(n^3)
  • Theta(n^2)

Answer Theta(n^2)

log_2(1) = 0 and the driving term is n^2. 2 beats 0, so the top-level work dominates and the answer is n^2.

Numerical and data handling

Floating point, aggregation and joins on data that does not fit the obvious shape.

Example

A price walks on the whole numbers 0 to N.
Each step it moves +1 with probability p and -1 with probability 1 - p, independently.
It stops the first time it touches 0 or N.

N = 8     start = 4     p = 0.6

One question, six parts. Each part uses the part before it.

Part 3 of 6. Now use p = 0.6. What is the probability the walk stops at N?

Answer 0.8350515463917525

With drift the answer is (1 - r^start)/(1 - r^N) where r = (1-p)/p = 0.6667. That is (1 - 0.1975) / (1 - 0.039) = 0.8351. Part 1 gave 0.5, so the drift is worth 0.3351 here.

Edge cases

Empty input, one element, duplicates and overflow. The hidden tests always include them.

Reading a spec precisely

Return type, ordering and tie-breaking are graded, and are where most silent failures come from.

What a good score looks like

On a paper of 1 questions with no penalty for a wrong answer, the only thing an unanswered question can do is cost you. Coding screens are usually pass-fail on hidden tests rather than scored, and candidates commonly report that a solution passing every correctness test still fails on a timeout. Treat full marks as solving every problem inside the complexity bound, not merely solving it.

How to train for it

  1. 01Implement the core structures from scratch once each. The screens ask you to build them, not use them.
  2. 02Get the function signature exactly right before anything else. Return type and ordering are graded, and a correct algorithm behind a wrong signature scores zero.
  3. 03Practise without an autocomplete. The screens run in a bare editor, and the gap between writing code with help and without it is larger than most people expect.

TRAIN IT HERE

The drills that match each section

SIT THE FULL BATTERY

All the sections back to back on one clock, marked the way the real screen marks them, with a by-skill breakdown at the end. Included with any pass.

MOCK SCREENS

Also reported at Old Mission

Common questions

Is the Old Mission coding problem test multiple choice?
Code editor, run against hidden tests. You write and run code against tests you cannot see.
How long is the Old Mission coding problem test?
1 question in 25 minutes, which is about 25 minutes each.
Is there negative marking on the Old Mission coding problem test?
No. A wrong answer costs nothing beyond the mark you would have earned, so leaving an item blank is never better than guessing at it.
How do I practise for it free?
Every drill linked on this page is free to play, with no account, inside a daily run cap. Questions are generated fresh each run, so there is nothing to memorise between attempts. The full Old Mission Quant Screen sitting puts the sections back to back on one clock.