Embedded Firmware Engineer

Sf Motors
Milpitas, CA, United States
6 days ago
Apply on www.dice.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$120,000.0 - $160,000.0
Working hours
Regular working hours
Languages
Chinese, English
Job source

Tech stack

Board Bringup Application Programming Interfaces (APIs) Automation of Tests Booting (BIOS) C++ (Programming Language) CANopen Configuration Management Code Review Computer Engineering Software Debugging Linux Ethernet
+16 more
EtherCAT Firmware FreeRTOS Hardware-In-The-Loop Simulation Joint Test Action (IEEE Standards) Python (Programming Language) Modbus Real-Time Operating Systems Regression Testing Software Technical Review Robot Operating System Real Time Systems Concurrency Hardware Testing Git Information Technology

Job description

  • Own firmware architecture for humanoid robot controllers, joint actuators, and dexterous hands.
  • Develop embedded C/C++ firmware, peripheral drivers, and RTOS applications; support board bring-up and hardware validation.
  • Implement CAN/CAN FD and Ethernet communication with deterministic timing and synchronized multi-joint actuation.
  • Develop actuator control firmware, including current, velocity, and position loops, sensor integration, and calibration.
  • Define firmware interfaces, data models, and SDK APIs with software and controls teams.
  • Implement fault protection, diagnostics, bootloaders, firmware updates, and configuration management.
  • Lead system debugging and automated testing, including Python tools, regression tests, and hardware-in-the-loop validation.
  • Lead design and code reviews, mentor engineers, and maintain technical documentation and firmware releases.

Requirements

  • B.S., M.S., or Ph.D. in Electrical Engineering, Computer Engineering, Computer Science, or a related field, or equivalent professional experience.
  • 5+ years of professional embedded firmware development experience in industry, with demonstrated delivery on physical hardware.
  • Strong C proficiency and working knowledge of C++, real-time systems, interrupts, and concurrency.
  • Hands-on experience with STM32, TI, Renesas, or similar MCUs, peripheral drivers, and an RTOS such as FreeRTOS or Zephyr.
  • Experience with PCB bring-up, schematic interpretation, and oscilloscope, logic analyzer, and JTAG/SWD debugging.
  • Firmware experience in robotics, motor controllers, or multi-axis systems, including CAN/CAN FD and motor control fundamentals such as FOC, PID, and encoder feedback.
  • Ability to independently deliver tested firmware using Git and code reviews, with effective technical communication in English., * Professional working proficiency in English and Mandarin for collaboration with engineering teams and suppliers.
  • Experience with humanoid robots, joint modules, dexterous hands, and BLDC/PMSM motor control, including torque or impedance control.
  • Familiarity with EtherCAT, CANopen, Modbus, ROS/ROS2, Linux, SDK development, or simulation integration.
  • Experience with Python automation, embedded CI/CD, hardware-in-the-loop testing, production calibration, or field diagnostics.

Base salary range: $120,000-$160,000 per year. The actual base salary offered will depend on the candidate’s experience, skills, qualifications, and other job-related considerations. This position may also be eligible for additional compensation and benefits.

Candidates must be legally authorized to work in the United States, and verification of employment authorization will be required at the time of hire.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.dice.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

1:23 min

Raspberry Pi and Modbus for feeder control

Øivind Heggland Øivind Heggland · Europe 2026 Virtual

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · World Congress 2025

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

1:12 min

Abstracting physical machine boundaries using industrial edge gateways

Freya Menzel Freya Menzel +1 · Europe 2026 Virtual

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

Videos

See all

Related articles

See all