Performance Engineering on Hard Mode with Andrew Hunter

Performance Engineering on Hard Mode with Andrew Hunter

From Signals and Threads by Jane Street

November 28, 2023 · 56 min · Episode 18

About this episode

Andrew Hunter discusses performance engineering challenges and techniques in trading systems compared to hyperscale environments.

Andrew Hunter makes code really, really fast. Before joining Jane Street, he worked for seven years at Google on multithreaded architecture, and was a tech lead for tcmalloc, Google’s world-class scalable malloc implementation. In this episode, Andrew and Ron discuss how, paradoxically, it can be easier to optimize systems at hyperscale because of the impact that even miniscule changes can have. Finding performance wins in trading systems—which operate at a smaller scale, but which have bursty, low-latency workloads—is often trickier. Andrew explains how he approaches the problem, including his favorite profiling techniques and tools for visualizing traces; the unique challenges of optimizing OCaml versus C++; and when you should and shouldn’t care about nanoseconds. They also touch on the joys of musical theater, and how to pass an interview when you’re sleep-deprived.

People in this episode

Host: Ron

Guest: Andrew Hunter

Topics covered

  • performance engineering
  • multithreaded architecture
  • trading systems
  • profiling techniques
  • optimization challenges
  • low-latency workloads
  • musical theater

Keywords

  • performance engineering
  • trading systems
  • profiling techniques
  • OCaml
  • C++
  • low-latency
  • optimization

Mentioned in this episode

Organizations: Google, Jane Street

Products: tcmalloc, OCaml

More episodes of Signals and Threads

Explore listener stats, chart rankings, contacts and more on the Signals and Threads podcast page.