RefolkCandidates
Open nowEngineeringCore Engineering

Software Engineer, Distributed Systems

Thinking Machines Lab · San Francisco, California

Location
San Francisco, California, United States
Workplace
Remote
Employment
Full time
Level
Mid level
Posted
Today

About this role

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, Distributed Systems to design and build the core distributed systems that everything else at Thinking Machines runs on - orchestration, scheduling, storage, and networking across thousands of machines. Your work underpins both Inkling's training clusters and Tinker's serving platform, and shows up anywhere we need software to coordinate reliably at scale.

This is deep systems work. You'll be reasoning about consensus, fault tolerance, and performance under real-world failure conditions, often on problems that don't have an off-the-shelf solution.

What You'll Do

  • Design and build distributed systems for compute orchestration, scheduling, storage, and networking across large GPU and TPU clusters

  • Develop fault-tolerant systems that keep running correctly as hardware fails, networks partition, and workloads scale

  • Build the distributed storage and data orchestration layers that move and persist large volumes of training and model data

  • Improve the performance and efficiency of collective communication, scheduling, and resource allocation across thousands of machines

  • Partner with research and infrastructure teams to identify systems bottlenecks and design solutions from first principles

  • Write production-quality code and help shape the architecture of systems used company-wide

Skills & Qualifications

Minimum Qualifications

  • 5+ years of experience building large-scale distributed systems

  • Proficiency in Python and Go, C++, or another systems-level language

  • Strong understanding of distributed systems fundamentals: consensus, consistency, replication, and fault tolerance

  • Experience with network programming, load balancing, or distributed storage systems

Preferred Qualifications

  • Experience building distributed compute or orchestration systems for AI or ML workloads

  • Fluent in containerization, orchestration, and distributed compute frameworks

  • Experience with specialized hardware (GPUs, TPUs) and their integration into distributed training or serving systems

  • Background at AI research labs, high-performance computing centers, or similarly demanding environments

  • Published work or open-source contributions related to distributed systems or performance engineering

  • Comfortable operating 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.

As published by Thinking Machines Lab. Applications are handled on their site.

Skills this posting mentions

C/C++Fault Tolerant SystemsLoad Balancing

About Thinking Machines Lab

Thinking Machines Lab is an artificial intelligence research and product company. We’re building a future where everyone has access to the knowledge and tools to make AI work for their unique needs and goals.

All 55 openings at Thinking Machines Lab

One click, then it is written

Apply to Thinking Machines Lab with a resume written for this role.

Queue Software Engineer, Distributed Systems and I read the posting, rewrite your resume against it, draft the cover letter, and score the fit. Then you press send, or press one button and I fill in Thinking Machines Lab’s form for you.

  1. 01Drop your resume

    A PDF or a LinkedIn URL. About a minute, once.

  2. 02I rank the openings

    Every weekday morning, the live catalog scored against your history. Up to 20 worth your time, not two hundred links.

  3. 03Each one is written up

    Resume rewritten for the posting, a cover letter, a fit score. Press send, or let me fill in the form.

  • 25 sent a week, free
  • No card
  • Nothing sent until you say so

More roles at Thinking Machines Lab

See all

Similar roles elsewhere

See more

Put this to work

Paste your career in once. Every application after that is written for you.

Drop a resume or a LinkedIn URL. I rank the live openings against it, rewrite the resume and write a cover letter for the best of them, and fill in the employer's form when you press the button. You read, you decide what goes out.

  1. 01Drop your resume

    A PDF or a LinkedIn URL. About a minute, once.

  2. 02I rank the openings

    Every weekday morning, the live catalog scored against your history. Up to 20 worth your time, not two hundred links.

  3. 03Each one is written up

    Resume rewritten for the posting, a cover letter, a fit score. Press send, or let me fill in the form.

  • New matches ranked and written before you are up.
  • Every bullet stays inside what your history supports. Nothing invented.
  • Queued, submitted, interviewing, offer: one screen, not a spreadsheet.

500 free credits on sign-up. No card. Nothing is sent until you say so.

Listed from the job board Thinking Machines Lab publishes. Refolk is not the employer and does not handle their hiring. Applications go to Thinking Machines Lab directly.