Start Your Search Here

Job Search

Jobtailor

Singapore / Global

Firmware Engineer

Job Description

Design, implement, and test real-time firmware in C/C++ for joint controllers, sensor boards, and power management

Own the embedded Linux platform, including kernel configuration, device drivers, device trees, and board support packages

Bring up new board revisions from first power-on through a fully characterized, controllable subsystem

Build and maintain communication between joints and the main compute stack, including bus scheduling, time synchronization, and joint-level APIs

Own bootloader, flashing, and firmware update flows across robot boards

Integrate IMUs, encoders, force-torque sensors, and camera interfaces with correct timestamping and deterministic latency

Implement safety and fault handling, including watchdogs, E-stop paths, thermal and current limits, and graceful degradation

Debug hardware-software issues with oscilloscopes, logic analyzers, and bus sniffers

Build test automation to catch regressions before deployment to robots

Contribute firmware, drivers, and hardware bring-up documentation to Menlo's open-source efforts

Requirements

3 or more years of hands-on firmware or embedded software experience on products that ship and run in the real world

Strong C and C++ in resource-constrained, real-time environments

Python for tooling, test automation, and calibration scripts

Practical embedded Linux experience, including kernel and driver work, device trees, cross-compilation toolchains, and Yocto or Buildroot

Knowledge of real-time systems, including interrupt latency, scheduling, jitter, and priority inversion

Familiarity with SPI, I2C, CAN, UART, and camera interfaces such as MIPI CSI-2 or GMSL

Ability to read schematics and datasheets

Experience debugging with oscilloscopes, logic analyzers, JTAG/SWD, and bus analyzers

Strong communication skills to drive alignment across electrical, mechanical, and controls teams

Core Competencies

Demonstrates expertise in designing and implementing real-time firmware in C/C++ for embedded systems, with a strong focus on embedded Linux platforms and communication protocols. Proficient in debugging hardware-software interactions and building test automation for firmware reliability.

Highest-signal resume keywords

C Programming

C++ Programming

Embedded Linux

Firmware Development

Test Automation

ATS Optimization Keywords

Hard Skills

Firmware Development

Embedded Software

Real-Time Systems

Device Drivers

Kernel Configuration

Cross-Compilation Toolchains

SPI

I2C

CAN

UART

Soft Skills

Strong Communication Skills

Industry Keywords

Real-Time Environments

IMUs

Encoders

Force-Torque Sensors

Camera Interfaces

Bus Scheduling

Time Synchronization

Tools & Technologies

Oscilloscopes

Logic Analyzers

JTAG

SWD

Bus Analyzers

Yocto

Buildroot

#J-18808-Ljbffr

Apply Now

Similar Opportunities

View all jobs