Software Engineer, Infrastructure

Thinking Machines Lab
San Francisco, CA
On-site

Who this role is best for

Strong fit for distributed systems engineers who design and operate large-scale infrastructure, with experience in Python and Go, and who thrive in fast-moving startup environments.

Best fit for

  • Candidates with experience in building and maintaining distributed systems for AI training and serving
    — “design and build the distributed systems that power our model training and serving platforms”
  • Individuals who have worked on large-scale GPU or TPU clusters in production settings
    — “Experience operating large-scale GPU or TPU clusters”

Things to consider

  • The role requires high autonomy in a fast-changing, early-stage startup environment
    — “Comfortable working with high autonomy in a fast-changing, early-stage environment”
  • Candidates must be prepared to take ownership of systems that run at large scale
    — “real ownership over systems that run at large scale”

How to stand out

  • Highlight experience with distributed systems and ML infrastructure in your resume and interviews
    — “demonstrated expertise designing and developing large-scale distributed systems”
  • Emphasize your ability to debug complex distributed failures across multiple layers
    — “Debug and resolve complex distributed failures across the stack”
  • Showcase contributions to open-source infrastructure projects and IaC tools
    — “Contributions to open-source infrastructure projects”
  • Demonstrate your ability to abstract infrastructure needs into usable systems for others
    — “turn them into robust, well-abstracted systems”
Pace · Fast PacedCollaboration · HighAutonomy · HighDecision Impact · Company

Derived from job-description analysis by Serendipath's career intelligence engine.

What success looks like

  • design and build distributed systems
  • improve infrastructure reliability and performance
  • partner with researchers and platform engineers
Typical background
5+ years in software engineeringexperience with large-scale distributed systems

Skills & requirements

Required

Distributed SystemsPythonGoOrchestrationSchedulingStorageResource Management

Preferred

ML InfrastructureContainer OrchestrationOpen-source Infrastructure

Stack & domain

PythonGoDistributed SystemsML InfrastructureContainer OrchestrationInfrastructure-as-codeCollaborationCommunicationProblem-solvingAttention To DetailInfrastructureAI

About the role

Original posting from Thinking Machines Lab via Ashby

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

We're hiring a Software Engineer, Infrastructure to design and build the distributed systems that power our model training and serving platforms. You'll work on the systems underlying everything we do — from the clusters that train our frontier models with Inkling, to the multi-tenant serving infrastructure behind Tinker.

This is a foundational infrastructure role at a fast-moving startup. You'll have real ownership over systems that run at large scale, and your work will directly determine how quickly our research and product teams can iterate.

WHAT YOU'LL DO

  • Design, build, and operate distributed systems that support large-scale model training and inference across thousands of accelerators
  • Build and maintain core infrastructure, including orchestration, scheduling, storage, and resource management systems
  • Improve the reliability, performance, and observability of infrastructure used across research and product teams
  • Partner with researchers and platform engineers to understand infrastructure needs and turn them into robust, well-abstracted systems
  • Debug and resolve complex distributed failures across the stack, from networking and storage to compute and scheduling
  • Write and maintain internal libraries and APIs, primarily in Python and Go, that other engineers build on

SKILLS & QUALIFICATIONS

MINIMUM QUALIFICATIONS

  • Demonstrated expertise designing and developing large-scale distributed systems
  • Strong proficiency in Python and Go
  • Experience building, deploying, and operating production infrastructure at scale
  • Solid grounding in distributed systems fundamentals, such as consensus, consistency, fault tolerance, and networking

PREFERRED QUALIFICATIONS

  • Experience with ML infrastructure, such as training orchestration, job schedulers, or distributed storage and data systems
  • Experience operating large-scale GPU or TPU clusters
  • Experience with container orchestration (e.g. Kubernetes) and infrastructure-as-code
  • Contributions to open-source infrastructure projects
  • Comfortable working with high autonomy in a fast-changing, early-stage environment

LOGISTICS

  • Location: This role is based in San Francisco, CA.
  • Compensation: Depending on background, skills and experience, the expected annual salary range for this position is $300,000 - $400,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: Thinking Machines offers generous health, dental, and vision benefits, unlimited PTO, paid parental leave, and relocation support as needed.

Source: Thinking Machines Lab careers (Ashby)

Similar roles