Firmware Engineer - Rust
Job in
Palo Alto, Santa Clara County, California, 94306, USA
Listed on 2026-09-17
Listing for:
Socket.dev
Full Time
position Listed on 2026-09-17
Job specializations:
-
Software Development
Robotics, Embedded Systems/ Firmware/ IoT, Embedded Software Engineer
Job Description & How to Apply Below
Join our embedded systems team to build the real-time firmware, drivers, and hardware-level infrastructure that power our next-generation robotic hands. You will work at the bleeding edge of robotics—developing low-latency motor control firmware, bringing up custom electronics, integrating advanced sensors, and ensuring highly reliable operation across our robotic platforms.
Role OverviewYou will be responsible for writing low-level embedded firmware, performing driver bringup across a range of sensors/actuators, and building the real-time control pipelines that enable human-level dexterity. This role is hands-on and hardware-close: oscilloscopes, logic analyzers, DMA registers, and data sheets will be part of your daily workflow.
Key ResponsibilitiesEmbedded Firmware & Driver Development
- Bring up custom embedded boards (STM
32H7 etc.) from scratch - Implement low-level drivers for sensors, actuators, communication buses, and custom peripherals
- Develop high-reliability firmware using Rust (Embassy) and C, optimized for tight timing budgets
- Build DMA-based and interrupt-driven interfaces for high-rate data pipelines
- Implement and tune real-time control loops (position, torque, impedance, velocity)
- Develop high-frequency motor control firmware (100 Hz – 5 kHz loops)
- Integrate motor drivers, current sensors, and high-bandwidth servo feedback
- Integrate and calibrate:
- Force & tactile sensors
- Multi-axis IMUs
- Encoders (magnetic, optical, and high-resolution absolute encoders)
- Build sensor fusion pipelines optimized for low latency and noise robustness.
- Develop robust real-time safety systems: watchdogs, brownout detection, error monitors
- Implement fail-safe behaviors and safety interlocks for robotic manipulation
- Build boot loader/OTA systems for distributed firmware updates
- Validate new PCB revisions with bringup tests and driver diagnostics
- Work closely with mechanical/electrical teams to characterize hardware performance
- Collaborate with AI/control teams to optimize firmware performance for higher-level policies
Must-Have
- Pursuing a BS/MS in Robotics, Electrical/Computer Engineering, Mechatronics
, or related fields - Strong Rust + Embassy and modern C experience in embedded development
- Experience with real-time systems and RTOS-based development (FreeRTOS, Zephyr, or bare-metal)
- Strong Python skills for test automation, HIL testing, and hardware validation
- Hands-on experience with embedded peripherals:
SPI, I2C, UART, CAN/CAN-FD, PWM, ADC, DMA - Solid understanding of:
- Real-time control loops
- Timing constraints & scheduler design
- Interrupt latency and determinism
- Experience with Linux-based real-time controllers ()
- Familiarity with EtherCAT or high-speed robotic communication buses
- Experience with motor drivers (BLDC, servo motors), Hall sensors, or current sensing
- Exposure to ROS/ROS2, machine learning, or robotic control stack development
- Experience building bootloaders, OTA systems, or secure firmware signing
- Familiarity with JTAG/SWD debugging, oscilloscopes, logic analyzers
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×