Headlands Technologies is a privately funded quantitative proprietary trading firm that runs automated strategies, mostly in exchange-traded products, and manages no outside money. It was founded in Chicago in 2009 by 3 former Citadel executives, sold its fixed income arm to TD in 2021, and has around 150 to 180 people across Chicago, New York, Amsterdam, London, Singapore and Austin, though the careers page only takes applications for Amsterdam, Chicago, London and New York.
The firm is small, writes C++ everywhere, and prefers experienced hires. A 2018 post on its blog by researcher Max Dama argues that a firm asking brainteasers, gambling questions and mental maths is signalling that it values trader intuition over research, which is a fair description of what Headlands does not ask.
Research candidates sit a single webcam-proctored HackerRank of about 17 questions in 70 minutes, split into 4 timed parts: 10 statistics multiple-choice questions, 4 worked statistics problems, 1 C++ numerical task and 2 algorithm problems. The old single C++ parsing problem has gone to the engineering track. After the test, C++ is tested at every stage, including 2 HackerRank rounds compiled live at the onsite.
- 1Online assessment. 4 timed parts in 70 minutes, usually sent within 2 days of applying, with the result the next day.
- 2Technical screens. 1 or 2 video calls of 60 minutes with a researcher on regression, inference and machine learning.
- 3Onsite. A same-day in-person loop of 6 to 8 sessions, with 2 live C++ coding rounds on HackerRank.
Candidates report 1 to 3 weeks for a researcher process. The summer is slower: the gap between the test and the first interview can stretch to about 6 weeks.
Roles for students and graduates
| Posting | Locations | Notes |
|---|---|---|
| Quantitative Researcher, New Grad | Amsterdam, Chicago, London, New York | A technical degree, strong statistics and machine learning, practical Java, C++ or Python. Transcript and grade point average required |
| Research Developer, New Grad | Same | The same job text. The requisition appears to have been retitled Quantitative Researcher in 2026 |
| C++ Software Developer, New Grad | Amsterdam, Chicago | Trading software in C++ |
| Quantitative Researcher and Research Developer, experienced | Same 4 | New graduates are sent to the separate posting |
No internship posting was live in October 2026, though candidates report intern phone screens in late 2025 and summer 2026. The 2027 new graduate posting opened between late May and mid August 2026, with no closing date. The application form asks for short essays on what prompted you to apply and on your strengths and weaknesses, your interest in finance on a 4-point scale, and your top 3 programming languages rated 0 to 3. The firm asks you to apply to one job only. Posted base salaries for researcher and C++ developer roles in Chicago and New York, including new graduates, are $200,000 to $300,000.
Stage 1: Online assessment
| Part | Content | Time reported |
|---|---|---|
| 1 | 10 statistics and probability multiple-choice questions, multi-select | 10 minutes in an August 2026 report. An October 2026 report describes about 2 minutes per question, so the timers may differ by role |
| 2 | 4 statistics problems where you show your work | 25 minutes |
| 3 | 1 C++ numerical coding problem | 15 minutes |
| 4 | 2 algorithm problems in C++, Python or Java | 20 minutes |
The camera stays on and screenshots are blocked. Paper is used for calculations. Candidates describe this format consistently from April 2025 to October 2026, and one counted 18 questions. Negative marking, the pass bar, the sitting window and retakes are not reported. If you have sat it, tell us what you saw.
Reported questions
- Multiple choice. What cross-validation reduces, with bias, variance and the 2 error types as options. The assumptions behind the F-test, t-test and chi-square test. Correlation, covariance and basic probability. The statistics is demanding, and the terminology needs preparation.
- Worked problems. In a regression of y on x1, how the t-statistic of the x1 coefficient changes when you add a regressor orthogonal to x1. A strategy backtests at a Sharpe ratio of 8 and then makes nothing over k live days: at what k should you doubt it? The estimator c that minimises the expected absolute deviation of a sample. A third Sharpe question involving several strategies.
- C++ numerical. The mean over a sliding window of fixed size on an array of floats, with correct handling of infinity, negative infinity and NaN. Know how C++ represents these values before the test.
- Algorithms. The minimum number of character changes so that no 2 adjacent characters in a string are equal. A LeetCode easy with a medium follow-up.
The engineering test
Software engineers still report the older format: 1 problem in 90 to 120 minutes, C++ only. The classic is a job runner: read a CSV of job id, runtime and next job id from standard input, check that the input forms valid chains, and output totals, counts and the average time per chain. Only 2 sample tests are given, the hidden tests are much stricter, and the traps are cycles, chains over 86,400 seconds and malformed rows. A newer variant uses file and timestamp records with union-find. Answer in C++, as the test asks.
How to prepare
- Vocabulary first. Bias against variance, the 2 error types, the assumptions of each standard test. The hypothesis testing and cross-validation lessons are the right level.
- OLS algebra. What adding an orthogonal regressor does to a t-statistic, from the multiple regression lesson. Why the median minimises absolute error.
- Sharpe arithmetic. How many days of zero return it takes to make a backtest's Sharpe ratio implausible. The reading a backtest section covers it.
- C++ numerics.
std::isnan,std::isinf, how NaN propagates through a running sum, and the floating point lesson. The streaming statistics lesson covers the window. - The engineering problem. Write your own tests for cycles, orphans and overflow before you submit.
Stage 2: Technical screens
A 60-minute video call, one on one with a researcher, on Zoom or Teams. Some candidates get 2. The first interview can be largely about your resume.
What they cover
- Regression and inference theory. The assumptions of linear regression and why each is needed. Why we minimise mean squared error. The theoretical basis of OLS. The difference between a z-test and a t-test. Two datasets, 10 samples and a million, both giving p = 0.04: which is more credible?
- Machine learning. Regularisation, principal component analysis, and whether you have heard of a U-Net.
- Applied judgement. Blend 2 strategies knowing only their means and distributions. A survey correlates IQ with work motivation: what can you conclude?
- Numerical methods. Optimising a numerical linear algebra algorithm.
- Your projects. Machine learning and data cleaning techniques from your own work.
Expect mostly statistics, machine learning and C++, with few brainteasers. Another found them very random and advised the Green Book plus machine learning and deep learning.
“Given N samples drawn independently from an unknown distribution, design an algorithm to estimate the expected absolute error of the sample mean as an estimator of the true mean.”
What it testswhether you reach for resampling when the distribution is unknown, and whether you know what the plug-in costs you.
Asked at the superday stage. The expected absolute error depends on the unknown distribution, so the direct route is the bootstrap: resample the N points with replacement many times, compute each resample's mean, and average the absolute difference between the resample mean and the original sample mean. The sample mean stands in for the true mean, which is the plug-in step the interviewer will ask about, and the bootstrap distribution of the mean stands in for its sampling distribution. The follow-up worth preparing is the large-sample check: by the central limit theorem the sample mean is approximately normal with standard deviation sigma over root N, and the expected absolute value of a normal is its standard deviation times the square root of 2 over pi, so an estimate of sigma gives a closed-form answer to compare with the bootstrap.
How to prepare
State the OLS assumptions and the reason for each. Work p-values and statistical against practical significance for the sample size question, then ridge and lasso and the unsupervised learning section for regularisation and PCA. Keep the probability questions warm for the few brainteasers.
Stage 3: Onsite
In person at the office, all on the same day. Candidates report 6 rounds for a developer, and 8 for an experienced quant after 2 phone screens. The onsite can include 2 live HackerRank rounds where you compile on the spot, run test cases and need the standard library, and all of the firm's quant coding is in C++. No report describes a whiteboard, session lengths, breaks or lunch, and no game, case or take-home is reported.
Statistics, OLS, hypothesis testing and machine learning dominate every reported technical round, with background and project questions throughout. Software engineers report both LeetCode-style problems and C++ trivia, and later rounds on algorithms, operating systems, concurrency and open-ended systems questions, including how you would find and remove unused code from a codebase.
The interviewer style is the thing candidates mention most. Candidates describe an interviewer who asks one technical question and wants to hear the specific answer he has in mind. Others describe interviewers who give few hints. Because Headlands is small, the round depends on what your interviewer wants to talk about. Some interviewers walk you through what you missed, so the feel varies by person.
How to prepare
Write C++ with the standard library every day for 2 weeks before the onsite, compiling and running against your own tests. The Quant Dev 50 and the problems below are the right material. Prepare your projects to the level of the equations and the data cleaning decisions, because they come up in every round.
The software engineer track
The C++ HackerRank above, then a one-on-one Zoom screen with a developer or researcher, then the onsite. Reported screen problems: a queue with push, pop and get-mean; merging several data streams in C++ with a multithreaded non-blocking follow-up; order interval overlap and cancellation; the sum of the first n integers without the formula, then compile-time and const-correct variants, then a custom hash map for ticker lookups that cuts collisions and memory; and a trading-flavoured object design question for junior engineers. The systems programming course covers the internals and concurrency these rounds reach for.
Key tips for success
- Learn the statistics vocabulary to multiple-choice precision. It is the part candidates call difficult.
- Expect C++ at every stage, whatever languages the posting accepts, and practise it compiled.
- Prepare a specific answer, not a discussion. Interviewers want the one they have in mind and give few hints.
- Know your own projects to the equation. A 40-minute resume interview is in the record.
- Apply once, and expect the test within 2 days and the result the day after.
Closing remarks
Headlands tests research candidates on regression theory, inference and machine learning in the words a textbook uses, and on C++ in the way a trading system uses it, from the first screen to the last onsite round. There is almost no probability puzzle content and no games. Candidates with a software background fail the research screen, and candidates who can do the statistics but have not compiled C++ under a clock fail the onsite. Prepare both.
Work through everything we have for Headlands, including the coding problems modelled on its interviews, and read our quant researcher interview process and quant developer interview guide for how these stages compare across firms.
