Training Performance Engineer

OpenAI
San Francisco, CA, USA2025-10-16Hybrid

About the job

As a Training Performance Engineer, you’ll drive efficiency improvements across our distributed training stack. You’ll analyze large-scale training runs, identify utilization gaps, and design optimizations that push the boundaries of throughput and uptime. This role blends deep systems understanding with practical performance engineering — analyzing GPU kernel performance, collective communication throughput, investigating I/O bottlenecks, and sharding our models so we can train them at massive scale. You’ll help ensure that our clusters are running at peak performance, enabling OpenAI to train larger, more capable models with the same compute budget.

Responsibilities

Profile end-to-end training runs to identify performance bottlenecks across compute, communication, and storage.

Optimize GPU utilization and throughput for large-scale distributed model training.

Collaborate with runtime and systems engineers to improve kernel efficiency, scheduling, and collective communication performance.

Implement model graph transforms to improve end to end throughput.

Build tooling to monitor and visualize MFU, throughput, and uptime across clusters.

Partner with researchers to ensure new model architectures scale efficiently during pre-training.

Contribute to infrastructure decisions that improve reliability and efficiency of large training jobs.

Qualifications

Minimum

Love optimizing performance and digging into systems to understand how every layer interacts.

Have strong programming skills in Python and C++ (Rust or CUDA a plus).

Have experience running distributed training jobs on multi-GPU systems or HPC clusters.

Enjoy debugging complex distributed systems and measuring efficiency rigorously.

Have exposure to frameworks like PyTorch, JAX, or TensorFlow and an understanding of how large-scale training loops are built.

Are comfortable collaborating across teams and translating raw profiling data into practical engineering improvements.

Preferred

Familiarity with NCCL, MPI, or UCX communication libraries.

Experience with large-scale data loading and checkpointing systems.

Prior work on training runtime, distributed scheduling, or ML compiler optimization.