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 a Firmware Engineer to design, implement, and test firmware for the motor controllers used by all our actuators.
Responsibilities:
- Architect, design, implement and test firmware in C++ for motor controllers
- Work closely with the hardware team to define hardware requirements and hardware/software interfaces
- Work closely with the control team on motor control algorithms and functional interfaces
- Develop Python tools to support test automation or hardware calibration
- Support hardware/software integration in the lab
Requirements:
- Bachelor or Master degree in Computer Science or related field
- At least 5 years of industry experience
- Mastery of C++ and Python
- Hands-on experience developing firmware to control Brushless Direct Current (BLDC) motors, including Field Oriented Control (FOC)
- Experience implementing low level software on bare-metal systems and RTOS
- Deep understanding of communication buses and protocols like Ethernet, Ethercat, Serial, SPI and I2C
- Good understanding of digital signal processing techniques such as FIR, IIR and FFT
- Comfortable using lab instruments (Oscilloscopes, logic analyzers…) and debugging tools (Lauterbach…)
Bonus Qualifications:
- Experience developing safety firmware compliant with IEC 61508 or ISO 26262
- Experience with Bazel build systems
- Familiar with Agile and Test driven development.