← All roles

Embedded Software Engineer - SoM

Apply on company site
ParisFull-timePosted 2mo ago

About the role

Embedded Software Engineer responsible for owning the embedded software stack on compute modules, from bare board bring-up to a maintained, securely booting Linux platform, including boot chain, kernel, drivers, and verification across hardware iterations.

Responsibilities

  • BSP and Reference Images: Build and maintain the BSP layer, device trees, and the reference images for each board, including custom layers and SDK generation, and carry them forward across kernel upgrades and silicon revisions.
  • Boot Chain and Secure Boot: Own the boot chain, including bootloader porting, signed boot, verified rootfs, and A/B system update.
  • Drivers and Low Level Interfaces: Develop and validate Linux device drivers across I2C, SPI, UART, GPIO, PCIe, and MIPI, including camera and sensor interfaces.
  • Board Support on MCU Targets: Provide startup, clock, and peripheral support on the microcontrollers of boards the team designs.
  • Board Bring Up and Hardware Validation: Lead software bring up on new hardware, take part in design reviews, and debug system level issues across the hardware and software boundary.
  • Verification and Documentation: Define verification test plans and acceptance criteria, automate boot and peripheral test on real targets, and document each milestone.
  • Cross Functional Collaboration: Work with the hardware team on new boards, and with Systems and Embedded Software Platform on interfaces and integration.
  • Mentorship: Depending on seniority, mentor junior embedded engineers.

Qualifications

  • MSc in engineering (electrical, computer, or a related field). PhD a plus. Hands-on bring up record matters more than the specific degree.
  • 5 years minimum in embedded software, with BSPs owned through their lifecycle and kept reproducible as hardware evolved.
  • Strong command of an embedded Linux build system such as Yocto or OpenEmbedded, across custom layers or packages, BSP integration, image build, and SDK generation.
  • Kernel space driver development on ARM targets, validated against real peripherals across I2C, SPI, UART, GPIO, PCIe, and MIPI. Device tree work on new boards and hardware revisions. Board bring up from first power up to a booting Linux image.
  • Bootloader porting, kernel configuration, signed boot, and firmware update mechanisms on production hardware, with security conscious and deterministic engineering practice.
  • Strong C and C++, including kernel space coding, and strong Python scripting skills, with solid version control practice (Git).
  • Debugging expertise with GDB, JTAG, OpenOCD, kernel tracing, ftrace, and perf.
  • Rigorous, structured, and systematic, autonomous, excellent communication and documentation skills.
  • Bare metal or RTOS firmware on microcontroller targets a plus; experience enabling hardware accelerators (VPU/NPU) on embedded SoCs; familiarity with perception/control workloads, UAS/drone/defense experience a plus.

Skills

Required:Embedded LinuxKernel space driver developmentC and C++ programmingPython scriptingDebugging toolsHardware bring-upDocumentation and communication
Last updated Aug 12, 2026. Interested? Apply on the company site.
Harmattan AI logo

About Harmattan AI

Building the Future of Autonomous Warfare.

Building the Future of Autonomous Warfare.

Autonomous WarfareUASPayloadCounter-UAS

More open roles at Harmattan AI