Embedded Firmware Engineer – Robotics
Must-have:Python
Responsibilities
- Design, develop and test real-time firmware in C/C++ for controllers, sensors and power-management systems.
- Develop and maintain embedded Linux components including kernel configuration, device drivers, device trees and board support packages.
- Support new board bring-up from initial power-on through subsystem validation and integration.
- Develop communication interfaces between embedded controllers and higher-level compute systems, including bus scheduling and time synchronisation.
- Build and maintain bootloader, flashing and firmware-update processes across embedded hardware.
- Integrate sensors and interfaces such as IMUs, encoders, force-torque sensors and camera systems with reliable timing and data handling.
- Implement safety, monitoring and fault-handling mechanisms including watchdogs, limits and graceful failure behaviour.
- Diagnose hardware-software issues using oscilloscopes, logic analysers, JTAG/SWD and bus analysers while developing automated firmware testing.
Requirements
- At least 3 years of hands-on firmware or embedded software engineering experience working with production or real-world hardware.
- Strong C/C++ skills in real-time or resource-constrained systems, with Python experience for tooling, testing or automation advantageous.
- Hands-on embedded Linux experience covering areas such as device drivers, device trees, cross-compilation, BSP development, Yocto or Buildroot.
- Strong hardware-integration fundamentals including interfaces such as SPI, I2C, CAN and UART, with confidence reading schematics and debugging embedded systems.
- Experience with robotics, motor-control firmware, RTOS platforms such as Zephyr or FreeRTOS, ROS 2, hardware-in-the-loop testing, secure boot or firmware-update infrastructure would be advantageous.
Tyson Jay Management Pte Ltd | EA Licence No. 24C2479 Ivan Lim | EA Personnel Reg No. R1109856