The Role
The Embedded Software Engineer will design, implement, and test embedded software for a humanoid robot, focusing on enhancing development environments and supporting hardware/software integration. Responsibilities include architecting software in C++, developing Python tools, and contributing to CI/CD infrastructure.
Summary Generated by Built In
Figure is an AI Robotics company developing a general purpose humanoid. Our Humanoid is designed for corporate tasks targeting labor shortages and jobs that are undesirable or unsafe. We are based in Sunnyvale, CA and require 5 days/week in-office collaboration.
We are looking for an Embedded Software Engineer to design, implement and test key aspects of our Humanoid software.
Responsibilities:
- Architect, design, implement and test embedded software in C++ running on the Humanoid compute platform
- Develop Python tools to support data management, test automation or robot calibration
- Continuously improve our development environment
- Contribute to the development of our Continuous Integration and Continuous Deployment (CI/CD) infrastructure
- Support hardware/software integration in the lab
Requirements:
- 5+ years of software engineering experience
- Bachelor's or Master's degree in Computer Science or related field
- Mastery of C++, Python and Linux
- Experience implementing real-time software
- Good knowledge of computer architecture
- Deep understanding of communication buses and protocols like Ethernet, Ethercat, Serial, CAN or USB
- Comfortable using lab instruments (Oscilloscopes, logic analyzers…) and debugging tools (Lauterbach…).
Bonus Qualifications:
- Experience with the Bazel build system
- Experience with Docker containers
- Experience implementing CI/CD infrastructures
- Familiar with Agile and Test driven development
Top Skills
C++
Python
The Company
What We Do
Figure is an AI Robotics company building the world's first commercially viable autonomous humanoid robot. We are based in Sunnyvale, CA.