Staff Software Engineer, Applications
Job Description
Job DescriptionAtomic Machines is ushering in a new era of micromanufacturing with its Matter Compiler™ technology platform. This platform enables new classes of micromachines to be designed and built by providing manufacturing processes and a materials library that are inaccessible to semiconductor manufacturing methods. It unlocks MEMS manufacturing not only for device classes that could never be produced by semiconductor methods, but also for entirely new categories. Furthermore, this digital platform is fully programmable in the way 3D printing is digital—but whereas 3D printing produces parts of a single material using a single process, the Matter Compiler™ technology platform is a multi-process, multi-material system: bits and raw materials go in, and complete, functional micromachines come out. The Atomic Machines team has also created an exciting first device—made possible only through the Matter Compiler™ technology platform—that we will be unveiling to the world soon.Our offices are in Emeryville and Santa Clara, California.About The Role:
As a Staff Software Engineer, Applications 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 from low-level device interfaces to user-facing tools. One sprint, you might be doing path planning for robot motion or working on FPGA interfaces; the next, implementing a HIL test or modeling an analog to digital converter.
You'll be joining a fast-paced, interdisciplinary environment with close collaboration across teams — including modeling and simulation, materials science, process development, and mechanical engineering — as we bring truly novel technology to life.
This role is based in either our Emeryville or Santa Clara locations and is well-suited to an engineer who is on a mission to extend their existing track record of excellence in robotics and automation to another chapter.
What You'll Do:
- Write, operate, and debug software and firmware for complex robotics with hard real-time constraints. The code you write is what drives all manufacturing operations at Atomic Machines – and must be reliable, fault tolerant, and well instrumented.
- Work at multiple levels of the software stack. You'll design and implement a networked API and debug it down to the hardware.
What You'll Need:
- 10+ years of industry experience with application software (navigation, vision, and multi-agent coordination) in the context of real-time requirements (think drones, legged robots, or autonomous vehicles).
- Bachelor of Science in Computer Science or a related field.
- Multi programming language fluency. Ability to code fluently in multiple languages, at multiple levels of the stack. Our software engineers primarily use C++ and Python. Experience with similar languages is ok, and knowledge of Go is a bonus.
- Demonstrated proficiency designing, building, and shipping complex distributed software systems that control hardware, as part of a team.
- Demonstrated proficiency with the fundamentals of robotic systems, such as feedback control systems, motion planning, and computer vision.
Bonus Points For:
- Industry- or graduate-level knowledge of Operating systems, Networks, Concurrency & execution models, and Computer architecture.
- A deep understanding of how computers work. Our work involves a variety of processors and computing environments – Linux, FreeRTOS, and bare metal.
- Experience architecting APIs and infrastructure that support operation of manufacturing nodes, material transport systems, and the system-level controller. Our monolithic central controller (Go, Postgres, gRPC) communicates with a distributed network of physical machines.
- Experience with and passion for instrumenting software for observability and debugging.
- Familiarity with CAD and CAM software, focusing on geometry engines, toolpath generation, and machining strategies.
The compensation for this position also includes equity and benefits.
CA Bay Area Salary Range$180,000—$235,000 USD