Figure is a 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 San Jose, CA and require 5 days/week in-office collaboration. It’s time to build.
We are looking for an Firmware Engineer Intern for Fall 2025 to support the implementation and test of key aspects of our Humanoid software.
Responsibilities:
- Deliver high quality C/C++ code in a real-time embedded environment.
- Bring up, debug, and validate firmware on the Humanoid hardware platform, such as actuators, sensors, power distribution system.
- Optimize performance of firmware to meet product requirements.
- Develop test scripts in Python to support test automation or robot calibration.
- Work cross functionally with System Integration, Software Test, and Embedded Software teams to successfully and autonomously ship new features.
- Contribute to the integration of projects into the Continuous Integration and Continuous Deployment (CI/CD) infrastructure.
- Support hardware/software integration in the lab.
Requirements:
- Graduate student or recent graduate in Computer Engineering or related field.
- Minimum 10 weeks internship, 1 to 2 terms preferred.
- Ability to showcase extra-academic activities working on hardware/software projects.
- Fluent with C/C++ and Python.
- Good knowledge of computer architecture and real-time operating systems
- Familiar with communication buses and protocols like CAN, SPI, I2C, UART etc.
- Comfortable using lab instruments (Oscilloscopes, logic analyzers…) and debugging tools.
Bonus Qualifications:
- Experience with low level communication protocol driver development, Ethernet preferred.
- Demonstrated taking features or products from cradle to grave with high levels of ownership.
- Experience with motor control systems.
- Experience with the Bazel build system.
- Experience with Docker containers.
The US hourly range for this internship position is between $35 - $45/hr.
The pay offered for this position may vary based on several individual factors, including job-related knowledge, skills, and experience. The total compensation package may also include additional components/benefits depending on the specific role. This information will be shared if an employment offer is extended.