← Back to blog HRT OA Comprehensive Guide: CodeSignal + Math + Systems Three-Stage Breakdown
HRT

HRT OA Comprehensive Guide: CodeSignal + Math + Systems Three-Stage Breakdown

2026-05-30

Hudson River Trading's OA is rarely a single CodeSignal link — it usually splits into a three-stage combination: CodeSignal General Coding Assessment, a math/probability stage, and a systems implementation stage. None of the stages is overwhelming on its own, but stitched together inside a 90-minute window the cadence is brutal. This guide threads our existing HRT CodeSignal OA walkthrough, the HRT vs IMC vs Akuna comparison, and the HRT VO Onsite five-round guide into a single map.

HRT OA three-stage structure

Overall flow: Apply → OA → Phone → Onsite

W0  Application (career site / referral)
W1  CodeSignal General Coding invite (72h window)
W2  Pass → second-stage math/systems OA (role-dependent)
W3  Phone screen (45 min, technical + culture)
W4  Onsite five rounds (CS fundamentals + algo + behavioral + culture)
W5  Offer decision

The two stages where candidates most often drop:

  1. CodeSignal 78-point cutoff — HRT's bar is slightly higher than Citadel / Akuna; below 70 means an automatic decline
  2. Math-stage speed bar — 8-12 questions in 60 minutes, ~5 minutes per question, reaction speed alone decides outcomes

Stage one: CodeSignal General Coding (GCA)

70 minutes, 4 questions, very stable distribution:

# Difficulty Type Typical pattern
Q1 Easy string / array ops reverse / count / replace
Q2 Medium simulation + hash multi-step state machine
Q3 Medium-Hard math + reasoning number theory / digit decomposition
Q4 Hard composite graph / DP / data-structure mash-up

HRT's GCA scoring quirks:

The HRT CodeSignal OA walkthrough breaks down a complete real set. Here's a typical Q3 starting template:

# HRT GCA Q3 style — digit-decomposition family
def digit_signature(n: int) -> int:
    """
    HRT's favorite digit-ops shape: each pair of adjacent digits feeds some op.
    """
    digits = []
    while n > 0:
        digits.append(n % 10)
        n //= 10
    digits.reverse()
    # Variants: sum of products / max alternating / digit hash
    return sum(d1 * d2 for d1, d2 in zip(digits, digits[1:]))

Q3 itself is not deep, but you have to recognize the pattern fast. Drill 25+ CodeSignal arcade Q3-difficulty problems until "5 minutes to identify the shape" is muscle memory.

Stage two: Math / probability

Stage two only ships to Algo / Quant Trader / Research candidates. SWE-line candidates usually skip it. Topic mix:

Probability and expectation

Combinatorics

Number theory and ordering

Speed bar: 8-12 multiple-choice questions in 60 minutes. HRT does not ask you to write derivations — just pick the right answer. Drill the first 100 problems of Heard on the Street plus 50 self-paced puzzles.

Worked example

A fair die is rolled 100 times. Approximate the probability that "6" appears at least 20 times.

Computing the binomial CDF directly is too slow. HRT expects ≈ 5% in under 5 minutes via normal approximation: Z = (20 - 100/6) / sqrt(100·1/6·5/6) ≈ 1.65 → P ≈ 5%.

Stage three: systems implementation (some role lines)

Infra / Performance roles occasionally send a 2-4 hour systems prompt:

This stage only goes to senior lines (Senior SWE / Performance Engineer) — new grads rarely see it.

OA combinations by role line

Role line Stage 1 Stage 2 Stage 3
SWE / Software Engineer CodeSignal GCA
Algo Developer CodeSignal GCA Math 60min
Quant Trader CodeSignal Brief Math 90min
Quant Researcher CodeSignal GCA Math + derivation
Performance / Infra CodeSignal GCA Systems impl
Core SWE Senior CodeSignal GCA C++ systems

Quick check: if the JD or recruiter email mentions quant / algo / trader, expect a math stage.

Two-week prep plan

Day Focus Target
D1-D3 CodeSignal arcade Q1+Q2, 30 each AC under 5 min
D4-D6 CodeSignal arcade Q3-difficulty, 25 problems Idea in 5 min
D7-D9 CodeSignal arcade Q4 / LeetCode Med-Hard, 15 30 min full AC
D10-D12 Heard on the Street #1-50 3 min average
D13-D14 Mock real OA + timer Stable ≥78

When you can hold ≥78 on CodeSignal and 8/10 on a 60-min math set, you're ready.

CodeSignal 70-minute time budget

00:00 - 00:05  Skim all 4 problems → tag difficulty
00:05 - 00:15  Q1 + Q2 → 100% AC
00:15 - 00:35  Q3 → 80% test cases
00:35 - 01:00  Q4 → 30-50% partial credit
01:00 - 01:10  Revisit Q3 / Q4 edge cases

Misallocating time is the leading cause of failure. Q4 short of full credit is fine — losing Q1/Q2 to a careless mistake is not.

FAQ

Q1: What's the HRT CodeSignal cutoff? A: Team-dependent. SWE ≈ 78; Algo lines tend to need 80+. Below 70 won't reach a phone screen.

Q2: Math is not my strong suit — can I still apply for SWE? A: Yes. The SWE line skips the math stage; CodeSignal GCA is the only OA. Interviews still include light probability/estimation chats.

Q3: How many submissions for the math stage? A: One pass. Timer starts the moment you open the problem. Network drops save progress, but the clock keeps running. Test your network beforehand.

Q4: Does HRT care about school name? A: It looks, but it's not a hard gate. HRT favors ICPC / Putnam / IMO backgrounds. A high CodeSignal + strong projects can still reach a phone screen from a less-named school.

Q5: How long before I can re-apply after no response? A: ~6 months cooldown; resumes inside the window are filtered automatically.

Closing

HRT's OA tests speed, precision, and cross-topic depth. CodeSignal sets the algorithmic baseline; the math stage filters reaction speed; the systems stage filters engineering depth. If you're prepping the CodeSignal or math stage, message WeChat Coding0201 with your role line and current CodeSignal average — we'll send back a tailored two-week training plan plus mock prompts.


Need real-question intel? Reach out on WeChat Coding0201, request the question bank.


Contact