Research Engineer / Performance Engineer

Anthropic's Mission
New York, United States
5 days ago
Apply on startup.jobs
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Job source

Tech stack

Build Automation C++ (Programming Language) Extract Transform Load (ETL) Software Debugging Software Design Documents Distributed Systems Fault Tolerance Network Topologies Python (Programming Language) Machine Learning Remote Direct Memory Access Software Engineering
+4 more
Web Application Frameworks Reinforcement Learning Kubernetes Low Latency

Job description

Reinforcement learning is how Claude learns to reason, write code, and act autonomously over long horizons. At frontier scale, an RL run is an unusually demanding distributed system. Training, sampling, and environment execution run concurrently across a large fleet of accelerators and hosts, exchange data continuously, and have to keep making progress while hardware fails, load shifts, and the research changes underneath them. How well that system holds together determines how much of our compute turns into learning, and how quickly the team can try the next idea.

As a Research Engineer on the Distributed Systems team within RL Engineering, you’ll work on whatever part of that system is the current limit. That might be scheduling and placement, data movement between components, running large numbers of sandboxed environments, storage and checkpointing, networking, fault tolerance, autoscaling, or the observability that tells us what a run is actually doing. We’re looking for generalists: engineers who can move between these layers, reason from first principles about a system they haven’t seen before, and pick the problem that matters most rather than the one closest to their prior experience.

Our system changes as fast as the research does, correctness under failure matters as much as throughput, and the best solutions often come from understanding the ML workload well enough to know which guarantees it actually needs. Strong candidates have built and run large distributed systems, care about getting the details right, and want to apply that experience to a workload that is very large, very heterogeneous, and changing quickly., * Design, build, and operate the distributed systems that run RL at scale, across training, sampling, and environment execution

  • Find and remove whatever currently limits the system, whether it’s scheduling, data movement, storage, networking, or coordination
  • Build fault tolerance into every layer: failure detection, isolation, and recovery that keep long-running jobs making progress without human intervention
  • Design resource management and autoscaling so that compute follows demand as a run’s needs shift
  • Build observability that makes it possible to understand what a run is doing and why it slowed down, stalled, or produced unexpected results
  • Build automation that detects and remediates common problems, and design interfaces that let engineers and automated tools operate runs safely
  • Work with researchers and performance engineers to make sure systems changes preserve training correctness and don’t introduce subtle nondeterminism
  • Remove classes of failure at their source through incident review, testing, and redesign, and write clear design documents for what you build, * Design a scheduler that places training, sampling, and environment work across a heterogeneous cluster while respecting network topology and failure domains
  • Build a failure detection and recovery system that lets a long-running job survive host and network failures with minimal lost work
  • Scale environment execution substantially without increasing tail latency for the training step
  • Design an autoscaling policy that rebalances compute across components as a run’s bottleneck shifts
  • Build a diagnostics system that explains why a run’s throughput dropped and proposes a fix
  • Trace a rare data corruption bug across many services to a race condition in a recovery path, and redesign the path so the class of bug can’t recur
  • Design the operational interface for a run so that automated tools can safely diagnose and adjust it under human oversight

The annual compensation range for this role is listed below.

For sales roles, the range provided is the role’s On Target Earnings (ā€œOTEā€) range, meaning that the range includes both the sales commissions/sales bonuses target and annual base salary for the role. Annual Salary: $500,000-$850,000 USD

Requirements

  • Strong software engineering skills in Python and at least one systems language such as Rust, C++, or Go
  • Experience designing, building, and operating large-scale distributed systems in production
  • Deep understanding of distributed systems fundamentals, including consistency, coordination, consensus, failure modes, and recovery
  • Ability to reason quantitatively about throughput, latency, and resource costs across compute, memory, storage, and network
  • Experience debugging complex failures across many hosts and services, including failures you can’t reproduce locally
  • Strong written communication, including design documents and incident writeups, * Experience running ML training or inference infrastructure at scale
  • Experience across several layers of the stack, such as scheduling, storage, networking, and orchestration
  • Experience building schedulers, autoscalers, or resource management systems
  • Experience with container orchestration such as Kubernetes, and with sandboxed or virtualized code execution at scale
  • Experience with high-performance networking, RDMA, or collective communication libraries
  • Experience building observability or automated remediation for large fleets
  • Experience with async Python frameworks such as Trio or asyncio
  • Familiarity with reinforcement learning or large language model training workloads

Representative projects, Minimum education: Bachelor’s degree or an equivalent combination of education, training, and/or experience

Required field of study: A field relevant to the role as demonstrated through coursework, training, or professional experience

Minimum years of experience: Years of experience required will correlate with the internal job level requirements for the position

Location-based hybrid policy: Currently, we expect all staff to be in one of our offices at least 25% of the time. However, some roles may require more time in our offices.

Benefits & conditions

Anthropic is a public benefit corporation headquartered in San Francisco. We offer competitive compensation and benefits, optional equity donation matching, generous vacation and parental leave, flexible working hours, and a lovely office space in which to collaborate with colleagues. Guidance on Candidates’ AI Usage: Learn about our policy for using AI in our application process.

About the company

Anthropic’s mission is to create reliable, interpretable, and steerable AI systems. We want AI to be safe and beneficial for our users and for society as a whole. Our team is a quickly growing group of committed researchers, engineers, policy experts, and business leaders working together to build beneficial AI systems., We believe that the highest-impact AI research will be big science. At Anthropic we work as a single cohesive team on just a few large-scale research efforts. And we value impact - advancing our long-term goals of steerable, trustworthy AI - rather than work on smaller and more specific puzzles. We view AI research as an empirical science, which has as much in common with physics and biology as with traditional efforts in computer science. We’re an extremely collaborative group, and we host frequent research discussions to ensure that we are pursuing the highest-impact work at any given time. As such, we greatly value communication skills.

The easiest way to understand our research directions is to read our recent research. This research continues many of the directions our team worked on prior to Anthropic, including: GPT-3, Circuit-Based Interpretability, Multimodal Neurons, Scaling Laws, AI & Compute, Concrete Problems in AI Safety, and Learning from Human Preferences.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on startup.jobs
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 Ā· Coffee With Developers

1:15 min

Deploying local container pods to Kubernetes clusters

Stevan Le Meur Stevan Le Meur Ā· World Congress 2024

1:46 min

Understanding how Pathway ensures low latency data processing

Bobur Umurzokov Ā· LIVE

1:05 min

Practical Byzantine Fault Tolerance in distributed computing systems

Jonan Scheffler Ā· World Congress 2022

2:14 min

Exploring internal AI product initiatives and global engineering roles

Maria Apazoglou Ā· Coffee With Developers

33 sec

Supporting NVIDIA GB200 GPUs on Kubernetes

Kevin Klues Kevin Klues Ā· World Congress 2025

Videos

See all

Related articles

See all