onsite
Software Engineer, Supercomputing
Software Engineer, Supercomputing
Thinking Machines Lab is seeking a Software Engineer, Supercomputing to design, build, and operate GPU supercomputing environments for large-scale training and inference. This role involves automating and managing large GPU clusters, extending scheduling/orchestration systems, and partnering with researchers to optimize performance and scale.
About the role
About the Role
We’re looking for an engineer to design, build, and operate the GPU supercomputing environment that powers large‑scale training and inference. You will deliver high‑performant, reliable, and cost‑efficient compute so our users and researchers can move fast at scale.
What You’ll Do
- Operate and automate large GPU clusters including provisioning, imaging, and capacity planning.
- Write software that abstracts cluster management and presents a unified interface for training and inference.
- Extend scheduling/orchestration (Kubernetes, Slurm, or similar) for topology‑aware placement, preemption, quotas, and fair‑share multi‑tenancy.
- Monitor and improve operational metrics of speed, reliability, and error recovery.
- Build reliable storage and artifact paths for datasets, checkpoints, and logs with clear retention and lineage.
- Partner with researchers to unblock scale runs and advise on parallelism and performance trade‑offs.
Skills and Qualifications
Minimum qualifications:
- Bachelor’s degree or equivalent experience in computer science, engineering, or similar.
- Proficiency in at least one backend language (we use Python or Rust).
- Experience operating large‑scale clusters and container orchestration systems (e.g. Kubernetes or Slurm).
- Comfort operating across the stack and owning projects end-to-end.
- Thrive in a highly collaborative environment involving many, different cross-functional partners and subject matter experts.
- A bias for action with a mindset to take initiative to work across different stacks and different teams where you spot the opportunity to make sure something ships.
Preferred qualifications — we encourage you to apply if you meet some but not all of these:
- Strong systems background: Linux, networking, and infrastructure‑as‑code.
- Familiarity with CUDA/NCCL and performance profiling for distributed training/inference.
- Prior work supporting large‑scale model training or inference environments.
- Understanding of deep learning frameworks (e.g., PyTorch, TensorFlow, JAX) and their underlying system architectures.
- Track record of working in fast-paced environments balancing care with urgency.