Ian Henry started his career at Warby Parker and Trello, building consumer apps for millions of users. Now he writes high-performance tools for a small set of experts on Jane Street’s options desk. In this episode, Ron and Ian explore what it’s like writing code at a company that has been “on its own parallel universe software adventure for the last twenty years.” Along the way, they go on a tour of Ian’s whimsical and sophisticated side projects—like Bauble, a playground for rendering trippy 3D shapes using signed distance functions—that have gone on to inform his work: writing typesafe frontend code for users who measure time in microseconds and prefer their UIs to be “six pixels high.”You can find the transcript for this episode on our website.Some links to topics that came up in the discussion:Bauble studioJanet for Mortals, by Ian HenryWhat if writing tests was a joyful experience?
--------
1:19:39
Finding Signal in the Noise with In Young Cho
In Young Cho thought she was going to be a doctor but fell into a trading internship at Jane Street. Now she helps lead the research group’s efforts in machine learning. In this episode, In Young and Ron touch on the porous boundaries between trading, research, and software engineering, which require different sensibilities but are often blended in a single person. They discuss the tension between flexible research tools and robust production systems; the challenges of ML in a low-data, high-noise environment subject to frequent regime changes; and the shift from simple linear models to deep neural networks.You can find the transcript for this episode on our website.
--------
59:45
The Uncertain Art of Accelerating ML Models with Sylvain Gugger
Sylvain Gugger is a former math teacher who fell into machine learning via a MOOC and became an expert in the low-level performance details of neural networks. He’s now on the ML infrastructure team at Jane Street, where he helps traders speed up their models. In this episode, Sylvain and Ron go deep on learning rate schedules; the subtle performance bugs PyTorch lets you write; how to keep a hungry GPU well-fed; and lots more, including the foremost importance of reproducibility in training runs. They also discuss some of the unique challenges of doing ML in the world of trading, like the unusual size and shape of market data and the need to do inference at shockingly low latencies.You can find the transcript for this episode on our website.Some links to topics that came up in the discussion:“Practical Deep Learning for Coders,” a FastAI MOOC by Jeremy Howard, and the book, of which Sylvain is a co-author.The Stanford DAWNBench competition that Sylvain participated in.HuggingFace, and the Accelerate library that Sylvain wrote there.Some of the languages/systems for expression ML models that were discussed: PyTorch, TensorFlow, Jax, Mojo, and TritonCUDA graphs and streamsHogwild concurrency
--------
1:06:22
Solving Puzzles in Production with Liora Friedberg
Liora Friedberg is a Production Engineer at Jane Street with a background in economics and computer science. In this episode, Liora and Ron discuss how production engineering blends high-stakes puzzle solving with thoughtful software engineering, as the people doing support build tools to make that support less necessary. They also discuss how Jane Street uses both tabletop simulation and hands-on exercises to train Production Engineers; what skills effective Production Engineers have in common; and how to create a culture where people aren’t blamed for making costly mistakes.You can find the transcript for this episode on our website.Some links to topics that came up in the discussion:More about production engineering at Jane Street, including how to apply.Notes on Site reliability engineering in the wider world.Alarm fatigue and desensitization.Jane Street’s 1950’s era serialization-format of choice,Some games that Streeters have used for training people to respond to incidents.
--------
53:50
From the Lab to the Trading Floor with Erin Murphy
Erin Murphy is Jane Street’s first UX designer, and before that, she worked at NASA’s Jet Propulsion Laboratory building user interfaces for space missions. She’s also an illustrator with her own quarterly journal. In this episode, Erin and Ron discuss the challenge of doing user-centered design in an organization where experts are used to building tools for themselves. How do you bring a command-line interface to the web without making it worse for power users? They also discuss how beauty in design is more about utility than aesthetics; what Jane Street looks for in UX candidates; and how to help engineers discover what their users really want.You can find the transcript for this episode on our website.Some links to topics that came up in the discussion:Erin’s website that shows off her work.Her quarterly journal of sketches and observations.An article about Erin’s design work with NASA JPL.A paper that among other things talks about the user study work that Erin did at JPL.Jane Street’s current UX job opening.
Listen in on Jane Street’s Ron Minsky as he has conversations with engineers who are working on everything from clock synchronization to reliable multicast, build systems to reconfigurable hardware. Get a peek at how Jane Street approaches problems, and how those ideas relate to tech more broadly. You can find transcripts along with related links on our website at signalsandthreads.com.