Machine Learning Performance Engineer
Jane Street- Location
- New York · United States
- Workplace
- —
- Employment
- —
- Salary
- —
Posted today
We are looking for an engineer with experience in low-level systems programming and optimisation to join our growing ML team.
Machine learning is a critical pillar of Jane Street's global business. Our ever-evolving trading environment serves as a unique, rapid-feedback platform for ML experimentation, allowing us to incorporate new ideas with relatively little friction.
Your part here is optimising the performance of our models – both training and inference. We care about efficient large-scale training, low-latency inference in real-time systems and high-throughput inference in research. Part of this is improving straightforward CUDA, but the interesting part needs a whole-systems approach, including storage systems, networking and host- and GPU-level considerations. Zooming in, we also want to ensure our platform makes sense even at the lowest level – is all that throughput actually goodput? Does loading that vector from the L2 cache really take that long?
If you’ve never thought about a career in finance, you’re in good company. Many of us were in the same position before working here. If you have a curious mind and a passion for solving interesting problems, we have a feeling you’ll fit right in.
There’s no fixed set of skills, but here are some of the things we’re looking for:
- An understanding of modern ML techniques and toolsets
- The experience and systems knowledge required to debug a training run’s performance end to end
- Low-level GPU knowledge of PTX, SASS, warps, cooperative groups, Tensor Cores and the memory hierarchy
- Debugging and optimisation experience using tools like CUDA GDB, NSight Systems, NSight Computesight-systems and nsight-compute
- Library knowledge of Triton, CUTLASS, CUB, Thrust, cuDNN and cuBLAS
- Intuition about the latency and throughput characteristics of CUDA graph launch, tensor core arithmetic, warp-level synchronization and asynchronous memory loads
- Background in Infiniband, RoCE, GPUDirect, PXN, rail optimisation and NVLink, and how to use these networking technologies to link up GPU clusters
- An understanding of the collective algorithms supporting distributed GPU training in NCCL or MPI
- An inventive approach and the willingness to ask hard questions about whether we're taking the right approaches and using the right tools
- Fluent in English
If you're a recruiting agency and want to partner with us, please reach out to agency-partnerships@janestreet.com.
Skills
- Machine Learning
- CUDA
- SASS
- Triton
More jobs at Jane Street
All 100Cybersecurity Engineer - Security Operations Center (SOC)
Jane Street · Hong Kong · today
Windows Engineer
Jane Street · London, England, United Kingdom · today
Quantitative Researcher
Jane Street · Hong Kong, Hong Kong · today
Network Engineer
Jane Street · Singapore · today
Unified Communications Engineer
Jane Street · London, England, United Kingdom · today
Similar roles
Senior Software Engineer II
MX Technologies · US · today
Sr. Cloud Platform Engineer
MX Technologies · Lehi, Utah, United States · today
Senior Software Engineer - Continuity
Rad AI · United States · today
Staff Software Engineer, Applications
SmithRx · US - Remote · USD 153,600–192,000/yr · today
Lead Software Engineer - City
Okc · Oklahoma City, OK, United States · USD 40–60/hr · today
Full-stack Software Engineer III/Senior, AI Gateway
Ngrok · US · San Francisco, CA · USD 202,500–247,500/yr · today