Jane Street is a trading and market-making firm using quantitative research and software development.
Machine Learning Performance Engineer
Jane Street is seeking a machine learning performance engineer to optimise model training and inference in real-time and research systems. The role focuses on CUDA, GPUs, distributed systems and the networks connecting GPU clusters, and requires fluent English.
Information about Jane Street
- Official domain
- janestreet.com
- Open jobs
- 64
Job details
The full description published by Jane Street.
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
- Fluency in English If you're a recruiting agency and want to partner with us, please reach out to [email protected] .
Requirements
- low-level systems programming
- optimisation
- modern ML techniques and toolsets
- GPU knowledge
- debugging and optimisation experience
Apply for this job
How do I apply?
The job is published on Jane Street’s website. Open the original posting ↗ to submit your application. Screeningpass does not fill in a form for you.
Who should you write to at Jane Street about this role?
Start a contact search from this page. Screeningpass suggests up to three people connected to the role. Choose whom to write to, then Screeningpass looks for their professional email and prepares a message. You review it and send it yourself with Gmail. An email address is not always available, and a reply is never guaranteed.
How much does finding a contact cost?
A search costs 1 credit. Your credit is returned if the search fails. Signing up gives you 3 credits, enough for 3 searches.
What does Screeningpass do?
Screeningpass brings together internships, apprenticeships and jobs published by companies. For a job, Screeningpass finds someone to contact at the company, looks for their professional email and prepares a message using your CV. See how it works in detail.