Skip to main content

10 Hudson River Trading Software Engineer (New Grad) Interview Questions (2026)

Hudson River Trading's new-grad SWE loop in 2026 emphasizes systems-level coding (C++ preferred), low-latency design, and a deep technical conversation about real-time systems. HRT is a small firm with a heavy engineering culture — the technical bar is among the highest in trading, with intense focus on cache-friendly code and microsecond latency.

By Alex Chen, Founder, InterviewChamp.AI · Last verified

Loop overview

Recruiter outreach → 90-min HackerRank coding test → first-round phone (coding + systems concepts, 45-60 min) → onsite of three to four rounds (typically one day): coding round (C++ heavy), low-latency systems chat, behavioral, sometimes a project deep-dive. Timeline 3-6 weeks. HRT has a strong intern-to-full-time pipeline; many new-grads come from prior summer internships.

Behavioral (2)

Tell me about a performance optimization you made.

Frequently asked

Outline

STAR. Pick a real optimization where you measured baseline, identified bottleneck (profiler results), applied a specific change, and measured improvement. HRT cares about measurement discipline — claims of '10x faster' without numbers fail. Quantify everything. Mention what surprised you in the profiler output.

Source: Glassdoor Hudson River Trading SWE behavioral round, 2026 ·

Why HRT rather than a hedge fund or large tech firm?

Frequently asked

Outline

Specific reasons: pure trading firm with no clients, small enough to have direct ownership, deep engineering culture (more engineers than traders), low-latency systems challenge, collegial atmosphere. Avoid 'high pay' as the lead. Reference HRT's engineering blog posts or specific systems work if you've read them.

Source: Glassdoor Hudson River Trading SWE fit round, 2026 ·

Coding (LeetCode patterns) (3)

Given a stream of integers, find the maximum in a sliding window of size k.

Frequently asked

Outline

Monotonic deque. Store indices in decreasing order of values. On new element: pop from back while smaller than current, push current. Pop from front if index out of window. Front is always max. O(n) total. Walk through example.

Source: Levels.fyi Hudson River Trading SWE coding round, 2026 ·

Implement a function that returns the n-th element of a Fibonacci-like sequence with given initial values, in O(log n) time.

Occasionally asked

Outline

Matrix exponentiation. Express recurrence as 2x2 matrix multiplication. Compute M^n via fast exponentiation: O(log n) multiplications, each O(1) for 2x2. Walk through derivation. Mention Binet's closed form but note precision issues for large n.

Source: r/cscareerquestions Hudson River Trading SWE coding round, 2026 ·

Given a list of integers, return all unique triplets that sum to zero.

Occasionally asked

Outline

Sort, then for each i, two-pointer search for pair summing to -arr[i]. Skip duplicates at i, l, r to avoid duplicate triplets. O(n^2) time, O(1) extra space (excluding sort). Walk through example. Discuss why sorting helps (deduplication + two-pointer).

Source: Levels.fyi Hudson River Trading SWE coding round, 2026 ·

Technical (4)

Implement a thread-safe queue without using std::mutex.

Frequently asked

Outline

Lock-free queue. Common: Michael-Scott queue using atomic CAS on head and tail pointers. ABA problem requires tagged pointers or hazard pointers. Walk through the algorithm at a high level — interviewers don't expect production-ready code in 30 min, but they want to see understanding of memory ordering (acquire/release semantics), atomic operations, and the ABA problem. Discuss tradeoffs: lock-free is fast but harder to verify; locked is correct but blocks.

Source: Glassdoor Hudson River Trading SWE coding round, 2026-Q1 ·

Explain CPU cache hierarchy and how it affects program performance.

Frequently asked

Outline

L1 (per-core, ~32KB, ~1 cycle latency), L2 (per-core, ~256KB-1MB, ~10 cycles), L3 (shared, ~10MB+, ~40 cycles), main memory (~200 cycles). Discuss cache lines (64 bytes typical), spatial vs temporal locality, false sharing (two threads writing to different variables on the same line). Code-design implications: array-of-struct vs struct-of-array, cache-friendly traversal order. Critical for HRT's low-latency work.

Source: Glassdoor Hudson River Trading systems round, 2026 ·

What is undefined behavior in C++ and why does it matter?

Frequently asked

Outline

Undefined behavior: code whose behavior is not specified by the standard — compiler can do anything (segfault, ignore the code, produce wrong output, work fine on one platform). Examples: out-of-bounds access, null deref, signed integer overflow, use-after-free, data races. Why it matters: optimizers assume UB does not happen, so they may eliminate seemingly innocuous checks. UB in trading code can cause silent corruption of P&L. Discuss UndefinedBehaviorSanitizer.

Source: Glassdoor Hudson River Trading C++ round, 2026 ·

Why is virtual function dispatch slower than a normal function call?

Occasionally asked

Outline

Virtual dispatch: vtable lookup adds one indirection (pointer fetch) plus prevents inlining and complicates branch prediction. In hot loops, this matters. Compare to static dispatch: known at compile time, inlinable. HRT-relevant: in latency-sensitive code, avoid virtual functions where possible; use templates or CRTP for compile-time polymorphism. Discuss when virtual is acceptable (cold paths, infrequent calls).

Source: Glassdoor Hudson River Trading C++ round, 2026 ·

System / object-oriented design (1)

Design a system that receives market data updates and routes them to subscribers with minimum latency.

Frequently asked

Outline

Layered: (1) Receive: kernel-bypass NIC (DPDK or io_uring), CPU pinning per receiver thread. (2) Parse: zero-copy, avoid heap allocation in hot path. (3) Route: lock-free queue per subscriber, with backpressure. (4) Send: same kernel-bypass back out. Discuss why every layer matters; cumulative latency targets ~5-10 microseconds for HFT. Discuss tradeoffs: bursty throughput vs sustained.

Source: Glassdoor Hudson River Trading SWE systems design round, 2026 ·

Hudson River Trading interview tips

  • C++ is dominant at HRT. Even if your primary language is Python, brush up on C++ fundamentals: RAII, move semantics, undefined behavior, memory ordering.
  • Cache and memory hierarchy come up repeatedly. Read Mike Acton's 'Data-Oriented Design' talk before the loop.
  • Onsite is often one packed day. Pace yourself; afternoon rounds matter as much as morning.
  • System design rounds focus on latency, not scale. The interesting question is 'how do you shave 100 nanoseconds' not 'how do you handle 1B users'.
  • Behavioral round at HRT is substantive. Bring real stories with measurement-based claims.

Frequently asked questions

How long is HRT's SWE interview process in 2026?

Most candidates report 3-6 weeks from initial contact to offer. Compressed onsites in NY deliver fast decisions.

What programming languages does HRT use?

C++ is dominant in production trading systems. Python for tooling. Some Rust adoption in newer projects.

Does HRT sponsor visas?

Yes. NY HQ supports US H1-B with standard lottery odds. London, Mumbai, and Singapore offices offer alternative paths.

What does day-to-day SWE work at HRT look like?

Variable by team. Trading infrastructure engineers work on order routing, risk systems, and exchange connectivity. Strategy engineers work alongside researchers to implement and optimize trading algorithms.

Can I reapply to HRT after rejection?

Yes, after a 12-month cooldown.

Practice these live with InterviewChamp.AI

Real-time AI interview assistant that listens to your loop and helps you structure answers under pressure.

Practice these live with InterviewChamp.AI →