Thinking Machines is hiring an engineer to build and improve the systems that support large-scale frontier-model pre-training and mid-training. The role focuses on keeping large accelerator clusters efficient and reliable during training runs that may last days or weeks. Work spans the training stack, including model partitioning across accelerators, numerical and hardware efficiency, distributed workload coordination, and recovery from failures. The position may focus on distributed training—such as frameworks, runtimes, sharded model and optimizer states, parallelism, checkpointing, scheduling, and model FLOPs utilization—or on communication and collectives, including accelerator communication runtimes, collective algorithms, topology-aware communication, communication/computation overlap, and fault tolerance. Specialization in both areas is not required. The training systems stack is written in Rust; prior Rust experience is helpful, and strong systems engineers interested in learning Rust are encouraged to apply. The engineer will collaborate closely with researchers to understand workloads, develop and test systems changes, and measure their effect on performance and correctness. The role also involves building reusable, maintainable systems that improve experimentation and reproducibility, and sharing findings through documentation, open-source contributions, or technical reports. Focus will depend on the candidate’s strengths and the team’s needs.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time