Machine Learning Performance Engineer in London

Machine Learning Performance Engineer in London

London Full-Time 36000 - 60000 £ / year (est.) No working from home possible
Jane Street

At a Glance

  • Tasks: Join our ML team to optimise model performance for training and inference.
  • Company: Jane Street is a leading global trading firm focused on innovation and technology.
  • Benefits: Enjoy a dynamic work environment with opportunities for remote work and professional growth.
  • Other info: No finance background needed; we welcome diverse perspectives and fresh ideas.
  • Why this job: Be part of a cutting-edge team that values curiosity and problem-solving in finance.
  • Qualifications: Experience in low-level systems programming, modern ML techniques, and GPU optimisation required.

The predicted salary is between 36000 - 60000 £ per year.

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 agency-partnerships@janestreet.com.

Machine Learning Performance Engineer in London employer: Jane Street

At Jane Street, we pride ourselves on being an exceptional employer, offering a unique blend of cutting-edge machine learning research and real-world trading applications. Our collaborative work culture fosters innovation and continuous learning, providing interns with unparalleled access to vast datasets and advanced computing resources. With a focus on personal and professional growth, you'll have the opportunity to work alongside experienced researchers, tackling complex challenges that push the boundaries of machine learning in finance.

Jane Street

Contact Details:

Jane Street Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Machine Learning Performance Engineer in London

Tip Number 1

Familiarise yourself with the latest machine learning techniques and tools. Stay updated on advancements in CUDA and GPU programming, as this knowledge will be crucial for optimising model performance.

Tip Number 2

Engage with online communities or forums focused on machine learning and systems programming. Networking with professionals in the field can provide insights into the role and may even lead to referrals.

Tip Number 3

Consider working on personal projects that involve low-level systems programming and optimisation. Demonstrating your ability to tackle real-world problems will make you stand out during the interview process.

Tip Number 4

Prepare to discuss your problem-solving approach in detail during interviews. Be ready to explain how you've tackled performance issues in past projects, showcasing your analytical skills and technical knowledge.

We think you need these skills to ace Machine Learning Performance Engineer in London

Low-Level Systems Programming
Performance Optimisation
Machine Learning Techniques
CUDA Programming
Debugging Skills
End-to-End Performance Analysis
GPU Architecture Knowledge

Some tips for your application 🫡

Tailor Your CV:Make sure your CV highlights relevant experience in low-level systems programming and optimisation. Include specific projects or roles where you've worked with CUDA, GPU performance, and machine learning techniques.

Craft a Compelling Cover Letter:In your cover letter, express your passion for machine learning and problem-solving. Mention how your background aligns with the requirements listed in the job description, particularly your experience with debugging and optimisation tools.

Showcase Relevant Projects:If you have any personal or professional projects that demonstrate your skills in ML performance engineering, include them in your application. Highlight your contributions and the impact of these projects on performance metrics.

Prepare for Technical Questions:Anticipate technical questions related to CUDA, GPU architecture, and performance optimisation. Be ready to discuss your thought process and problem-solving approach during interviews, as this role requires a deep understanding of these concepts.

How to prepare for a job interview at Jane Street

Showcase Your Technical Skills

Be prepared to discuss your experience with low-level systems programming and optimisation. Highlight specific projects where you've optimised machine learning models, particularly focusing on CUDA and GPU performance.

Demonstrate Problem-Solving Abilities

Expect to face technical challenges during the interview. Approach these problems methodically, showcasing your thought process and how you tackle complex issues related to performance optimisation in ML.

Familiarise Yourself with Relevant Tools

Make sure you have hands-on experience with tools like CUDA GDB, NSight Systems, and NSight Compute. Be ready to discuss how you've used these tools to debug and optimise training runs in the past.

Ask Insightful Questions

Prepare thoughtful questions about the company's approach to machine learning and performance optimisation. This shows your curiosity and willingness to engage with their unique trading environment and challenges.