Hudson River Trading
Quant Developer Online Assessment - Free Timed Practice
Modelled on the HackerRank and CodeSignal screens that gate low-latency engineering roles: four problems you implement and submit, auto-graded against hidden tests, with performance constraints that fail a correct-but-slow solution.
Format
- 2 sections · 14 items · about 85 minutes
- No negative marking - answer everything.
- No going back. Answer or skip, and the next item loads.
- Every sitting is generated fresh - a retake is a new paper.
Sections
- Coding problems - 4 items, 70 minutes, no negative marking. Four problems, 70 minutes. Implement each function and run it against the hidden tests.
- Code review - 10 items, 15 minutes, no negative marking. 10 items, 15 minutes. Read concurrent and performance-sensitive code, identify the defect, and trace what a snippet actually produces.
What this sitting is
Modelled on the HackerRank and CodeSignal screens that gate low-latency engineering roles: four problems you implement and submit, auto-graded against hidden tests, with performance constraints that fail a correct-but-slow solution.
2 sections, 14 items, about 85 minutes end to end, on a clock that does not stop between sections. Every question is generated fresh, so sitting it twice gives you two different papers and there is nothing to memorise between attempts.
How it is marked
No section marks negatively. A wrong answer costs nothing beyond the mark you would have earned, so there is never a reason to leave an item blank.
There is no going back anywhere in the paper. You answer or skip, and the next item loads, so every decision to leave something is final at the moment you make it.
Section by section, with a worked example
Every example below is generated by Outcry, drawn from the same generator that section runs during the timed sitting. None of it is Hudson River Trading's own material.
A. Coding problems
Four problems, 70 minutes. Implement each function and run it against the hidden tests.
4 items in 70 minutes, which is about 17.5 minutes an item. No penalty for a wrong answer here, so answer everything.
B. Code review
10 items, 15 minutes. Read concurrent and performance-sensitive code, identify the defect, and trace what a snippet actually produces.
10 items in 15 minutes, which is about 1.5 minutes an item. No penalty for a wrong answer here, so answer everything.
Example 1
Which change most reduces cache misses when summing a large matrix?
- Use a larger integer type
- Iterate in row-major order matching the memory layout
- Unroll the loop 2×
- Mark the accumulator volatile
Answer Iterate in row-major order matching the memory layout
Sequential access uses the whole cache line that was fetched. Striding across rows discards most of every line.
Example 2
You need the running median of a live price stream. Which approach is best?
- Two heaps - a max-heap of the low half and a min-heap of the high half
- Sort the buffer on every tick
- A single min-heap
- A hash map of counts
Answer Two heaps - a max-heap of the low half and a min-heap of the high half
Balanced heaps give O(log n) insert and O(1) median. Re-sorting is O(n log n) per tick.
Example 3
Position is accumulated in a double and the code tests `if (position == 0.0)` to detect flat. What goes wrong?
- Comparing doubles is undefined behaviour
- The compiler removes the comparison
- 0.0 and -0.0 compare unequal
- Accumulated rounding leaves a residue, so the test is false when the book is flat
Answer Accumulated rounding leaves a residue, so the test is false when the book is flat
Adding and subtracting fills in binary leaves a residue around 1e-15. Compare against a tolerance, or hold size in integer lots and never in a double.
Common questions
- How long is Quant Developer Online Assessment?
- About 85 minutes across 2 sections, 14 items in total, with the clock running continuously between them.
- Is there negative marking?
- No section marks negatively. A wrong answer costs nothing beyond the mark you would have earned, so there is never a reason to leave an item blank.
- Can I go back to an earlier question?
- There is no going back anywhere in the paper. You answer or skip, and the next item loads, so every decision to leave something is final at the moment you make it.
- Are the questions the same every time?
- No. Every item is generated from the archetype bank the format draws on, so the shape of the paper is fixed and the numbers are not. Two attempts are two different papers.
- Is this Hudson River Trading's real assessment?
- No. Outcry is not affiliated with Hudson River Trading and has no access to their questions. This sitting reproduces a publicly reported format - the item counts, the timings and the marking rules - and generates every question itself.
Outcry is not affiliated with Hudson River Trading and has no access to their assessment content. This sitting reproduces a publicly reported format; every question is generated by Outcry.