Staff Firmware Engineer
Confirmed live in the last 24 hours
Agility Robotics
Compensation
$194,000 - $252,000/year
Job Description
Agility’s commercially deployed humanoids operate alongside teams in warehouses, manufacturing facilities, and distribution centers—tackling physically demanding and repetitive tasks while enabling workers to focus on higher-value work. With industry-leading safety standards and years of proven deployment data, we're pioneering a new era of automation that enhances human potential.
About The Role
We are seeking a Staff Firmware Engineer to plan robot firmware architecture, design subsystems, and develop robust and reliable firmware for our full line of robots. In this role, you will collaborate with a multi-discipline team of engineers to understand the unique requirements for our products and play a key role in ensuring that we have robot designs that are robust and production-ready. You will also serve as the bridge between hardware and higher level robot control algorithms by documenting interfaces and providing support to other engineers.
About The Work:
- Contribute to the C++ firmware architecture that drives our robot’s low-level sensor network, controls, and power management systems
- Develop the firmware communication layer utilizing EtherCAT and CAN
- Write firmware for the hardware abstraction layer, peripheral drivers, and applications
- Perform real-time hardware testing and debugging using benchtop test equipment such as logic analyzers and oscilloscopes.
- Work with cross-disciplinary teams to solve complex problems dealing with the integration of software and hardware
- Write performant, well-tested, maintainable, and well-documented C++ code
About You:
- BS in computer science, electrical engineering, or related field with 10+ years industry experience
- Experience writing modern C++ (17, 20)
- Experience using FreeRTOS or similar
- Experience with best practices for writing performant and maintainable software
- Proficiency with a Linux-based development environment
- Ability to read schematics, PCB layouts, and component datasheets
- Ability to verbally communicate technical information effectively
Preferred to have:
- Experience with implementation of automation fieldbuses such as EtherCAT, CAN, etc. EtherCAT is highly desirable
- Experience writing embedded C++ for ARM systems
- Experience developing real-time or low-latency systems
- Experience designing and implementing hardware-in-the-loop (HIL) testing frameworks for embedded systems
Similar Jobs
Hex Technologies
Software Engineer, Growth
Motional
Senior Software Engineer/Software Engineer - Perception Platform
Amazon.com Services LLC
Automation Solutions Engineer, Central RME, Global Jam Program
Amazon.com Services LLC
Data Engineer II , UTR PLanning Tech
Redwood Materials
Staff Controls Engineer
Amazon Development Center U.S., Inc.