Skip to content
All jobs

Machine Learning Compiler Engineer

Janestreet

London Posted 3d ago

About the role

About the position

We’re looking for compiler engineers to join a new ML Compilers Team at Jane Street.

Machine learning is a critical pillar of our 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. Our ML team is full of people with a shared love for the craft of software engineering, and for designing APIs and systems that are delightful to use.

ML compilers let us quickly turn research ideas and novel architectures into high-throughput training jobs and low-latency inference. To get the most out of our hardware resources and enable rapid model development and deployment, we are working to understand and improve the current ML compiler technologies and explore where it makes sense to build our own solutions. In this role, you would shape the development of our compiler stack.

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.

About you

The ideal candidate has worked on an ML compiler in the past, but non-ML compiler experience is also valuable. Experience with any part of the stack is fine, be it high-level ML frameworks (PyTorch, Jax, TensorFlow), graph compilers (Inductor, XLA, TVM) or kernel DSLs (Triton, Helion, cuTile). You should understand how all those pieces fit together even if you are unfamiliar with specific parts.

Some other things you might be excited about are:

Optimisations in ML compilers: algebraic rewriting, materialise vs recompute tradeoffs and fusion, equality saturation, scheduling languages, loop-level optimisation, autotuning

ML compiler frontends: graph capture, symbolic and dynamic shapes, control flow, automatic differentiation

GPU kernel programming and architecture: Triton, cuTile, CuTeDSL, CUDA, compute and memory hierarchies, programming with tensor cores

Compiler concepts: static analysis, intermediate representations like SSA and CFGs, instruction selection

ML inference: CUDA Graphs, KV caching, batching

ML training: Tensor/Sequence/Expert/Pipeline Parallelism, FSDP, NCCL, activation checkpointing

GPU debugging and optimisation: CUDA-GDB, Nsight Systems, Nsight Compute

Formal methods: proof assistants, automated theorem provers, agentic proof systems

Programming languages and DSL design: embedded DSLs, staging and metaprogramming, type systems, functional programming

Fluency in English is required

If you're a recruiting agency and want to partner with us, please reach out to -----

Find

Jobs in United Kingdom

on Arbeitnow

    Cookies on Rolebound

    We use necessary cookies to sign you in and keep the site working — those cannot be turned off. We would also like to set analytics and advertising cookies so we can see which pages help people get interviews and which adverts brought them here. Nothing optional is set unless you say yes, and you can change your mind at any time from “Cookie settings” in the footer. Read our Privacy Policy.