The short answer
For internships and new graduate roles, Hudson River Trading (HRT) usually starts with a coding assessment, followed by one or two technical phone screens and a three-to-five-round final interview.
Recent Software Engineering applicants report a four-question, 70-minute CodeSignal test. Algorithm Developer interviews combine probability, statistics and programming; Software Engineering interviews focus on coding, debugging and systems. Experienced hires often begin with Zoom conversations before technical screens.
How the HRT interview process works
HRT publishes a four-step student recruiting process. For engineering candidates, the phone stage typically includes a technical discussion and a programming interview, followed by a full day of final-round sessions. Here's the usual progression:
- Application review. Your background and the role you applied for determine whether HRT invites you to the next stage.
- Online coding assessment. Solve timed implementation and algorithm problems, then check hidden-test edge cases.
- Technical phone screens. Expect live programming, plus a roughly 45-minute engineering discussion or probability-and-coding work for Algorithm Developers.
- Final-round interviews. Three to five sessions test deeper technical work, design and collaboration.
The roles make the biggest difference. HRT calls much of its mathematical research and trading work Algorithm Development. That is a different track from Software Engineering, even though both require strong programming skills. We'll cover the shared stages first and then the preparation needed for each.
Application and initial screening
HRT asks students to apply to one job posting, with other office or role interests noted in the application. Allow up to two weeks for application review. The recruiting team then emails selected applicants with assessment or interview instructions.
Match your application to the actual job. An Algorithm Developer application should make your statistics, research, programming and analytical projects easy to find. For Software Engineering, put substantial engineering work near the top: what you built, the languages you used, and the technical decisions you made. HRT also advises experienced applicants to start with the role that best matches their strengths.
You don't need previous financial-market experience to apply. HRT explicitly welcomes candidates without it. A strong technical foundation is more relevant at this stage than memorising trading terminology.
The HRT online assessment and coding test
The HRT online assessment (OA) is a timed programming test. You write working solutions, run sample cases and submit code against hidden tests. The engineering guidance puts particular emphasis on correctness and edge cases, even when the visible examples all pass.
Prepare for arrays, strings, hash maps, grids, interval problems and multi-step simulations. In a July 2026 new graduate report, two OA tasks involved finding the largest diamond-shaped sum in a grid and the position covered by the most street lamps. Both reward careful implementation, efficient counting and boundary tests.
HackerRank, Codility or CodeSignal?
CodeSignal appears in recent Software Engineering applicant reports, including a 2025 new graduate assessment taken in C++. HRT's engineering recruiting guide also names HackerRank and Codility for take-home coding tests. All three reward executable code that handles inputs beyond the samples.
How many questions, and what score do you need?
For a recent Software Engineering CodeSignal OA, four questions in 70 minutes is the clearest reported format. The early problems can be short, while later ones demand longer implementations. A September 2026 Algorithm Developer applicant also reported a 70-minute coding OA. There is no verified numerical HRT passing cutoff, so practise finishing working solutions and passing every test you can.
Before starting: Check the language, timer and permitted tools in your invitation. HRT's older HackerRank/Codility guidance allowed books or internet references for language syntax; your current assessment rules determine what you can use.
How to practise for the OA
Do a four-problem, 70-minute coding mock in your chosen language. Include a quick array task, a hash-map or interval problem, a grid problem and a longer stateful simulation. Test empty inputs, repeated values, off-by-one boundaries and large cases. For event streams, verify the state after each update, not just the final answer.
Technical phone and video interviews
HRT's published Software Engineering process has two types of calls: an approximately 45-minute discussion on systems, data structures or problem-solving, and a live programming interview. Recent candidates also describe shorter 30-minute coding screens. Expect to work in a shared editor, explain the algorithm, and improve it when the interviewer adds requirements.
For Algorithm Developers, 2026 reports describe fast-paced probability and expected-value questions with numerical answers, followed by coding or a Python simulation. One candidate reported two maths questions and a two-part coding task. Software Engineers are more likely to explain memory, data structures, program behaviour and debugging, including what their chosen language does under the hood.
Use your explanations to make the work understandable. State your assumptions, outline an approach, and say what you've tested. If you spot a mistake, correct it and continue. HRT's own interviewers say they value candidates who can work through guidance and improve a solution.
What happens in the final-round interview?
The HRT onsite or final round typically consists of three to five interviews. Its engineering guidance describes a full day of back-to-back coding and debugging, technical design, and team conversations. These sessions test whether you can build and reason through working solutions, not just finish short screening questions.
For Software Engineering, prepare to discuss memory and I/O, diagnose broken code and defend performance trade-offs. A reported Algorithm Developer Superday included dataset analysis, a codebase exercise, system design and a behavioural interview. That is a useful model for practising both open-ended research and hands-on coding.
Be prepared to discuss something you've built. You should be able to explain why you chose a particular approach, what went wrong, how you tested it and what you would change if you started again. Real project details give interviewers a better basis for follow-up questions than a rehearsed summary does.
Interview questions by HRT role
Choose the track closest to your application. HRT's job titles matter here: its Algorithm Developers research and improve trading models, while Software Engineers and Algorithm Engineers build the infrastructure those models run on. A specialised Quantitative Researcher or Data Science role may have a different technical emphasis.
Algorithm Developer: statistics, probability and code
Algorithm Developers research, backtest and monitor HRT's trading models. Interview preparation should cover conditional probability, expected value, distributions, estimation, stopping-time problems and simulation, alongside Python or C++. Publicly reported prompts include finding the expected wait until you meet someone taller than a randomly selected person.
Candidates describe deriving an answer and then implementing a small simulation to test it. Practise calculating a probability or expectation, coding 10,000 independent trials in Python and explaining why the average approaches your analytic result. Another reported research interview asked candidates to optimise a dice game and verify the strategy in code.
Build your preparation around HRT-focused probability and statistics practice, then add programming exercises rather than relying on maths alone.
Software Engineer and Algorithm Engineer: coding and systems
Software Engineering interviews test coding, debugging and how a program works underneath its syntax. In C++, review object lifetime, virtual dispatch, memory layout, concurrency and performance. In Python, review list growth, object and reference behaviour, data structures and debugging. HRT's engineering leadership specifically cites C++ virtual functions, Python list memory growth and virtual memory as fundamentals worth understanding. You may also be asked to interpret unfamiliar code.
HRT has said that its Python and C++ Software Engineering interviews are not designed as quantitative maths tests. You will get more value from becoming a better programmer than from trying to memorise hundreds of brainteasers for a pure engineering role.
For systematic practice, use Data Structures and Algorithms in Python and programming interview questions. If you are applying for a low-level C++ role, add C++ and operating-systems material specific to that stack.
Quantitative Research and Data Science: modelling and evidence
HRT also recruits Quantitative Researchers and Data Scientists. Research roles develop predictions from datasets; Data Science work focuses on extracting useful information from large volumes of data. Prepare to explain statistical estimation, experiment design, data quality, leakage, model validation and Python analysis. A reported Quantitative Researcher interview combined a dice-game strategy with simulation code.
Try explaining a project from start to finish: the question you wanted to answer, the dataset you used, your modelling assumptions, how you tested for leakage or overfitting, and why you trusted the final result. That explanation is valuable even when the interview question is about a different dataset.
For mathematical preparation, start with probability interview problems, then review statistics and programming relevant to your specific research role.
HRT-style technical questions, with solutions
These are original practice examples chosen to exercise skills relevant to HRT interviews. Try solving each one before reading the explanation.
A probability question: rolling until six
You repeatedly roll a fair six-sided die. Stop on the first six. What is the expected sum of all rolls before that final six?
Show the solution
Let E be the expected sum. With probability 1/6, the next roll is six and contributes nothing. Otherwise, the roll is one of 1 through 5, whose average is 3, and the process starts again.
That gives E = (5/6)(3 + E). Solving, 6E = 15 + 5E, so E = 15.
You can check it another way. The expected number of non-six rolls before the first six is five, and each has average value three. Five times three gives the same answer.
To check it with a simulation, repeat the game many times, recording the sum before the first six. The average should approach 15 as the number of trials increases.
A coding question: processing a stream of fills
An event stream contains fills of the form ("fill", id, symbol, signed_quantity) and cancellations of the form ("cancel", id). Each fill ID is unique. A cancellation reverses that fill; unknown or repeated cancellations do nothing. Return the final non-zero position in each symbol.
Show a Python solution
Keep a dictionary of active fills so cancellations can reverse the correct quantity, and another dictionary for the running position in each symbol.
def net_positions(events):
active = {}
positions = {}
for event in events:
if event[0] == "fill":
_, fill_id, symbol, qty = event
active[fill_id] = (symbol, qty)
positions[symbol] = positions.get(symbol, 0) + qty
else:
_, fill_id = event
original = active.pop(fill_id, None)
if original is not None:
symbol, qty = original
positions[symbol] -= qty
return {s: q for s, q in positions.items() if q != 0}
For the stream [("fill", "a", "ABC", 5), ("fill", "b", "XYZ", -2), ("cancel", "a")], the answer is {"XYZ": -2}.
Each event requires an average constant-time dictionary operation, giving O(n) expected time for n events and O(f + s) space for f active fills and s symbols tracked. Test cancelling an unknown ID, cancelling the same fill twice, and fills that leave a zero position. Discuss how you would handle invalid duplicate fill IDs if the input contract did not guarantee uniqueness.
The first question tests whether you can turn a repeated random experiment into a simple equation. The second tests careful state management and edge cases. Those are useful habits to develop for both a coding screen and a more open-ended technical interview.
How difficult is the HRT interview?
HRT is a high-difficulty technical interview. On the reported 70-minute, four-question Software Engineering OA, speed matters as much as recognising an algorithm: later problems can require grid calculations, interval optimisation or detailed simulation. Algorithm Developer screens add the pressure of solving probability questions and then implementing checks under live interview conditions.
HRT's engineering team says it prefers practical coding over trick-heavy LeetCode puzzles. The harder part is often explaining fundamentals precisely: how Python lists grow, how C++ virtual calls work, or why a solution behaves differently on large inputs. Write correct code, test corner cases and be prepared to explain its resource costs.
For Algorithm Developers, treat statistics and programming as equally serious parts of the process. For Software Engineers, prioritise code quality, debugging and the systems relevant to your role.
How to prepare for the HRT interview
Prepare for the next round you actually face. For a Software Engineering OA, rehearse four tasks in 70 minutes. For an Algorithm Developer phone screen, pair expected-value problems with short simulations. For a C++ infrastructure final, spend more time on memory, debugging and system behaviour.
- Rehearse the coding test. Solve four problems in 70 minutes: arrays or strings, hash maps or intervals, grids, and stateful simulation. Test hidden-case boundaries yourself.
- Study your role's deeper topics. For Algorithm Development, practise conditional probability, expected value, estimation and Python Monte Carlo. For Software Engineering, explain data structures, virtual memory, C++ dispatch or Python runtime behaviour.
- Practise a live screen. Spend 45 minutes explaining a coding or maths solution aloud while someone asks follow-ups. Prepare a clear account of one difficult project.
- Revisit your mistakes. Keep a short record of errors in reasoning, edge cases and code. Re-solve those questions until the fixes feel routine.
For focused practice, the EverythingQuant HRT question bank targets probability and stochastic reasoning. If expected value or conditional probability needs work, review the Probability for Quants course. Use the coding questions for implementation and the DSA course to strengthen fundamentals. If you're preparing across several firms and assessments, you can also build a personalised preparation roadmap.
HRT interview FAQs
Is the HRT online assessment sent automatically?
No. HRT reviews applications and emails selected candidates about the next step. Its stated review window is up to two weeks; one 2025 Software Engineering applicant reported receiving a CodeSignal invitation after eight days.
Does HRT use CodeSignal?
Yes. Software Engineering candidates have reported CodeSignal assessments with four coding questions in 70 minutes. HRT also has a history of using HackerRank and Codility for take-home programming tests.
Does HRT ask LeetCode-style questions?
Yes. Arrays, hash maps, graphs, grids and interval questions are worthwhile practice. But HRT's engineering interviewers prioritise code that works, debugging and systems knowledge over obscure LeetCode tricks. Practise implementation-heavy problems, not just memorised patterns.
How long does the HRT interview process take?
Budget several weeks. HRT allows up to two weeks for application review, while recent Algorithm Developer candidates have described roughly three to seven weeks for the complete interview process.
Do HRT Software Engineering interviews require probability?
HRT has said its Python and C++ Software Engineering interviews focus on programming, debugging and systems rather than quantitative maths. Algorithm Developer interviews are the more mathematical track.
Can I interview in Python instead of C++?
Yes. HRT lets Algorithm Developer candidates choose Python or C++. Software Engineering candidates indicate their preference during the application; HRT's 2025 engineering guidance also mentions TypeScript/Python for full-stack roles.
Is an HRT quantitative trader interview the same as Algorithm Developer?
For HRT's main student research-and-trading track, the job title is Algorithm Developer. Prepare for statistics, probability and coding, often with simulation follow-ups. A separate Quantitative Researcher or trading posting can emphasise datasets, modelling or market experience.
Do I need a finance background?
No. HRT says most of its employees join without prior financial-market experience. Demonstrate the mathematical or engineering skills the role requires, and be ready to explain why its work interests you.
Sources and editorial notes
This independent guide combines HRT's recruiting and engineering guidance with dated public candidate reports. The worked questions are original practice exercises, not claimed past HRT interview questions. Candidate-reported timings and prompts are identified in their respective sections.
- HRT student opportunities and recruiting FAQ
- HRT's software engineering interview guide
- Engineering and interviewing at HRT
- HRT role descriptions
- January 2025 HRT recruiting reply: three to five final rounds
- October 2025 SWE applicant: four CodeSignal questions in 70 minutes
- July 2026 new graduate coding assessment and live screen
- September and October 2026 Algorithm Developer reports
- November 2025 Quantitative Researcher interview examples
- January 2024 Algorithm Developer Superday account