Research Engineer, Infrastructure, Training Systems

Thinking Machines Lab · San Francisco · $350,000–$475,000 (stated in the posting)

Apply on the company website

About Thinking Machines

The mission of Thinking Machines is to build AI that extends human will and judgment. We are training frontier models with Inkling, developing Tinker to let people make models their own, and crafting interfaces that broaden human-AI communication. We believe the future worth building is human, and we're hiring people who want to build it.

About the Role

Frontier model training depends on systems that can keep large accelerator clusters working efficiently and reliably through runs lasting days or weeks. We’re looking for engineers to build and improve those systems, working closely with researchers on the infrastructure behind large-scale pre-training and mid-training.

The work spans the training stack: dividing models across accelerators, improving numerical and hardware efficiency, coordinating distributed workloads, and recovering from failures without losing valuable training time. You might optimize FP4/FP8 training, implement a parallelism strategy, remove a communication bottleneck, or make a large training workload more reliable.

We’re especially interested in two complementary areas:

Distributed Training: Build and optimize the frameworks, runtimes and workflows that make large-scale model training possible. Relevant experience includes FSDP, sharded model and optimizer states, expert or context parallelism, distributed checkpointing, training-job scheduling, and improvements to model FLOPs utilization.

Communication / Collectives: Build and optimize the communication systems that connect accelerators during training. Relevant experience includes NCCL or equivalent runtimes, collective algorithms, topology-aware communication, communication/computation overlap, and fault-tolerant training.

You do not need to specialize in both areas. We value depth in a difficult subsystem, the ability to reason across the training stack, and a track record of turning that understanding into working systems.

Our training systems stack is written in Rust. Prior Rust experience is helpful, but strong systems engineers who are interested in learning it are encouraged to apply.

What You’ll Do

Your focus will depend on your strengths and the problems the team needs to solve.

What We’re Looking For

We welcome engineers at different career stages. Technical contribution and judgment matter more than a particular title or number of years.

Experience That Could Be Especially Relevant

We encourage you to apply if some, rather than all, of these describe your work:

We’re interested in what you built, the scale and constraints you worked with, how you diagnosed problems, and what improved as a result.

Logistics

Location: San Francisco, California.

Compensation: Depending on background, skills and experience, the expected annual salary range for this position is $350,000–$475,000 USD.

Visa sponsorship: We sponsor visas. While we can’t guarantee success for every candidate or role, if you’re the right fit, we’re committed to working through the visa process together.

Benefits: Generous health, dental and vision benefits, unlimited PTO, paid parental leave, and relocation support as needed.

Application note: This is an evergreen role, and we continuously review applications as opportunities arise. There may not always be an immediate opening aligned with your experience. Please avoid applying more than once every six months; you are welcome to apply separately to a specific team or project opening.

More jobs at Thinking Machines Lab · Software Engineering jobs in San Francisco