Embedded Software Engineer
- Source: Workable
- Origin
- On-site
- Bengaluru
- Full-Time
- Mid level
Job Description
About Origin
Origin (previously 10xConstruction) is building general-purpose autonomous robots for US construction to tackle rising costs, safety risks, and labour shortages. Our modular, multi-trade platform combines purpose-built hardware with real-time site intelligence to navigate complex environments and execute tasks with precision. Trained in high-fidelity simulation and already deployed on live sites, our robots deliver 5x faster execution, 250%+ margin expansion, and significant cost savings. Join India’s most talent-dense robotics team consisting of individuals from IITs, Stanford, UCLA, etc.
About the Role
As an Embedded Software Engineer at Origin, you will write the firmware and embedded software that runs our robots, from microcontroller firmware on custom boards to drivers and real-time software on embedded Linux compute. In the coming months we are making major changes to the robot’s electrical architecture (compute, safety and sensor subsystems). You will build the firmware for this new architecture together with our embedded hardware team. This is a high-impact role in a passionate, talent-dense team.
Key Responsibilities
Firmware Development
- Design, write and maintain real-time firmware in C/C++ for microcontrollers (for example STM32, ESP32, NXP), on bare metal and on an RTOS (FreeRTOS, Zephyr or similar).
- Bring up new custom boards with the embedded hardware team: peripherals, clocks, bootloaders and board support packages.
- Write and maintain peripheral drivers: GPIO, ADC, PWM, timers, DMA, I2C, SPI, UART and CAN.
- Write firmware for the safety, sensor and power subsystems, including watchdogs, fault handling and safe states.
- Write motor-control and actuator firmware (BLDC, FOC, closed-loop speed and force feedback) for robot tools.
Actuator & Communication
- Develop software interfaces for CAN / CANopen / EtherCAT based actuators and motor drives.
- Write and maintain drivers for motor controllers, servo motors and stepper motors.
- Define deterministic communication protocols between microcontroller nodes and the main robot compute.
Embedded Linux & Compute
- Integrate and configure SBCs (Jetson Orin, Jetson Nano, Raspberry Pi) as embedded compute nodes in the robot platform.
- Develop and maintain Linux kernel drivers for sensors and actuators, and contribute to Linux modifications and CPU/resource monitoring.
- Build monitoring and logging infrastructure for system health and fast debugging.
- Support the Over-the-Air (OTA) update pipeline for firmware and software.
Test & Debug
- Profile, debug and minimize latency, jitter and timing issues across firmware and communication interfaces.
- Debug at the hardware/software boundary with oscilloscopes, logic analyzers and debug probes (JTAG/SWD).
- Develop automated tests (unit and hardware-in-the-loop) for firmware.
Collaboration & Integration
- Work with the software team to integrate the electromechanical system on ROS2 and contribute to ROS2 driver development.
- Work with the embedded hardware and mechanical teams for seamless integration and system-wide performance.
Required Qualifications and Skills
- Bachelor’s/Master’s degree in Electrical Engineering, Electronics, Robotics, Computer Science or a related field.
- 2+ years of hands-on embedded firmware development on real products.
- Strong embedded programming in C (C++ a plus).
- Experience with an RTOS (FreeRTOS, Zephyr or similar) and/or bare-metal firmware on microcontrollers.
- Experience writing peripheral drivers and communication protocols: I2C, UART, SPI, CAN and Ethernet.
- Experience with board bring-up and debugging with oscilloscopes, logic analyzers and debug probes.
- Ability to read schematics and datasheets.
- Experience building low-latency, real-time systems.
Preferred Experiences
- CAN / CANopen / EtherCAT actuators and motor-control firmware (BLDC, FOC).
- Embedded Linux, Linux kernel drivers and NVIDIA Jetson SBCs.
- Experience with ROS/ROS2.
- Safety-related firmware (watchdogs, safe states, functional safety awareness).
- Experience with robotic arms, AMR platforms or mobile manipulators.
- Reverse-engineering and integrating off-the-shelf embedded systems.
Skills
- cplusplus
- esp32
- zephyr
- NodeJS
- raspberry-pi
- linux-kernel
- jitter
- nvidia
- workable
