latency.lab

The roadmap

Getting genuinely strong enough for firms like Citadel Securities, Akuna, Jane Street, Jump, HRT, or DRW takes three layers, not one book: deep modern C++, algorithms and problem-solving, and systems/performance/trading-shaped projects. This page is that plan, made concrete.

The one thing to avoid

Don't start with a book called "Build a High-Frequency Trading System in 30 Days." That's backwards. The order is C++ → CS fundamentals → algorithms → systems → performance → trading systems — not trading buzzwords first.

Eight levels, each harder than the last

Vector<T> to a low-latency matching engine and market-data system.

1C++ mastery — build the containers firstTinyVector, TinyHashMap, MemoryPoollive now2Algorithms, with the discipline of asking whyA real lesson per topic, then curated practicelive now3Limit order bookAdd + cancel graded now; matching nextlive now
4Matching engineSequencing, fills, execution reportsplanned
5Market data engineParse → normalize → book → strategyplanned
6ConcurrencyAtomics, memory order, lock-free SPSCplanned
7Performance engineeringCache locality, branch prediction, false sharingplanned
8Interview simulationOne problem, progressively extendedspec written

The stack

One book to learn C++ properly is not enough on its own — this is the curriculum around it.

  1. 01C++ Primer — Lippman, Lajoie & MooThe foundation. Not how to copy an order book — why the code works.
  2. 02Effective Modern C++ — Scott MeyersTurns "I can write C++" into actual expert instincts.
  3. 03The Algorithm Design Manual — Steven SkienaA method for approaching a problem you've never seen, not a solutions list.
  4. 04Computer Systems: A Programmer's Perspective — Bryant & O'HallaronWhat the machine is actually doing underneath your C++.
  5. 05C++ Concurrency in Action — Anthony WilliamsThreads, atomics, memory ordering — done right, not by accident.
  6. 06Systems Performance — Brendan GreggHow to find out *why* something is slow instead of guessing.
  7. 07Designing Data-Intensive Applications — Martin KleppmannDistributed/data-system thinking — the market-data-feed layer.
  8. 08The C++ Interview Book — cppinterview.comInterview-specific drilling — after the foundation, not instead of it.

The quant-finance track

Pricing and derivatives, not systems engineering — a real alternative if that's the actual target, not a substitute for the reading list above.

  1. Introduction to C++ for Financial Engineers — Daniel J. DuffyBinomial models, Black-Scholes, Monte Carlo — the pricing side, not the systems side.
  2. C++ Design Patterns and Derivatives Pricing — Mark JoshiClean OO structure for complex payoffs — a different skill than a matching engine.
  3. High-Performance C++ for Finance — —SIMD, hardware optimization, bridging C++ engines with Python/R.

What actually gets evaluated

  • Design, programming, code review, and extending one real problem as constraints change — not disconnected puzzles.
  • C++ fundamentals: STL, memory management, low-level optimization, multithreading.
  • The ability to reason out loud: "why is this slow," "what happens at 10x," "now make it thread-safe."
  • Roughly 250–350 carefully chosen problems beats 1,000 solved mindlessly — the goal is "I've never seen this exact problem" not being scary.