Senior Software Engineer, Robotic Systems

Atomic MachinesSanta Clara, CA
1d$170,000 - $220,000Onsite

About The Position

As a Senior Software Engineer, Robotic Systems, you will design and build the distributed software system that controls the Matter Compiler. You'll have the chance to work across layers of the stack, abstracting low-level device interfaces into high-level automation APIs. One sprint, you might be designing system behavior with a mechanical engineer; the next, you could be bringing up and integrating complex electromechanical systems. You'll be joining a fast-paced, interdisciplinary environment where teams collaborate closely—including modeling and simulation, materials science, process development, electrical engineering, and mechanical engineering—as we bring truly novel technology to life. This role is based in either our Santa Clara or Emeryville office and is well-suited to an engineer with strong fundamentals, curiosity, and a drive to develop systems-level thinking. This role focuses on software systems that coordinate and operate robotic hardware in production, rather than on robotics algorithms or control theory.

Requirements

  • 5+ years of industry experience developing software that interfaces with hardware
  • Multi-language programming fluency—ability to code fluently in multiple languages at multiple levels of the stack (our robotics engineers primarily use C++ and Python; knowledge of Go is a bonus)
  • Deep and broad understanding of how computers work (our work involves a variety of processors and computing environments at multiple levels of the stack)
  • Familiarity with robotics-adjacent systems (sensors, actuators, timing constraints, physical failure modes)
  • Experience designing, building, and shipping complex software systems that control hardware as part of a team
  • Experience with version control and working on Linux machines
  • A first-principles mindset — you question assumptions, reframe problems from the ground up, and approach challenges with a foundational understanding rather than relying solely on precedent.
  • Bachelor of Science in Computer Science, Computer Engineering, Electrical Engineering, Mechatronics Engineering, Mechanical Engineering, Robotics, or a related field

Nice To Haves

  • Experience or interest in heterogeneous, distributed computing architectures
  • Experience in abstracting the control of manufacturing machines, material transport systems, and factory-level orchestration
  • Experience with instrumenting software for observability and debugging

Responsibilities

  • Write, operate, and debug software and firmware for complex robotics with hard real-time constraints.
  • Design and operate software that coordinates state, timing, and failure recovery across a distributed network of devices
  • Work hands-on with manufacturing robotics and design software to coordinate a distributed network of devices.
  • Work at multiple levels of the software stack—you'll design and implement a networked API and debug it down to the hardware.

Benefits

  • The compensation for this position also includes equity and benefits.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service