About the job
As a Research Engineer within Reinforcement Learning, you will collaborate with a diverse group of researchers and engineers to advance the capabilities and safety of large language models. This role blends research and engineering responsibilities, requiring you to both implement novel approaches and contribute to the research direction. You'll work on fundamental research in reinforcement learning, creating 'agentic' models via tool use for open-ended tasks such as computer use and autonomous software generation, improving reasoning abilities in areas such as mathematics, and developing prototypes for internal use, productivity, and evaluation.
Responsibilities
Architect and optimize core reinforcement learning infrastructure, from clean training abstractions to distributed experiment management across GPU clusters. Help scale our systems to handle increasingly complex research workflows.
Design, implement, and test novel training environments, evaluations, and methodologies for reinforcement learning agents which push the state of the art for the next generation of models.
Drive performance improvements across our stack through profiling, optimization, and benchmarking. Implement efficient caching solutions and debug distributed systems to accelerate both training and evaluation workflows.
Collaborate across research and engineering teams to develop automated testing frameworks, design clean APIs, and build scalable infrastructure that accelerates AI research.
Qualifications
Minimum
Are proficient in Python and async/concurrent programming with frameworks like Trio
Have experience with machine learning frameworks (PyTorch, TensorFlow, JAX)
Have industry experience in machine learning research
Can balance research exploration with engineering implementation
Enjoy pair programming (we love to pair!)
Care about code quality, testing, and performance
Have strong systems design and communication skills
Are passionate about the potential impact of AI and are committed to developing safe and beneficial systems
Preferred
Familiarity with LLM architectures and training methodologies
Experience with reinforcement learning techniques and environments
Experience with virtualization and sandboxed code execution environments
Experience with Kubernetes
Experience with distributed systems or high-performance computing
Experience with Rust and/or C++