Application Software Engineer - Embedded Software C++

Wayve Wayve · Robotics · Detroit, MI +1 · Product & Delivery

Application Software Engineer focused on localizing and advancing Wayve's autonomous driving technology for the US market. Responsibilities include software bring-up on customer hardware platforms, porting and configuring systems (Linux, QNX, AUTOSAR), integrating drivers, and developing automation for target hardware.

What you'd actually do

  1. Execute software bring-up on customer hardware platforms (e.g. NVIDIA Drive, Qualcomm Ride).
  2. Port and configure Linux-based systems, QNX, and Adaptive AUTOSAR environments.
  3. Integrate and validate drivers, middleware, and boot-time configurations.
  4. Collaborate with Verification & Release teams to integrate hardware into CI/CD, HIL, and test infrastructure.
  5. Work with OEM and Tier 1 teams to resolve hardware-specific integration issues.

Skills

Required

  • C/C++
  • Bash
  • Python
  • Linux embedded systems
  • QNX
  • Adaptive AUTOSAR
  • Automotive SoCs
  • Hardware debuggers
  • Flashing tools
  • Serial consoles
  • BSPs
  • CAN
  • Ethernet
  • PCIe
  • SPI
  • I2C
  • CI/CD pipelines
  • Test automation

Nice to have

  • Automotive verification environments (HIL, Vector toolchains, CI rigs)
  • ISO 26262
  • Boot-time determinism
  • Watchdogs
  • Secure boot
  • OTA updates
  • System-level cybersecurity
  • Docker
  • Jenkins
  • Git
  • JFrog Artifactory

What the JD emphasized

  • 8+ years of experience in embedded or automotive software development, ideally with hands-on platform bring-up experience.
  • Strong proficiency in C/C++, Bash, and Python.
  • Deep understanding of Linux-based embedded systems (Yocto, systemd, bootloaders, device trees).
  • Familiarity with QNX and Adaptive AUTOSAR environments and the ability to configure and debug them on target hardware.
  • Experience with bring-up on automotive-grade SoCs (e.g., NVIDIA Orin, Qualcomm SA8295/SA8650, Renesas, TI).
  • Comfortable working with hardware debuggers, flashing tools, serial consoles, and board support packages (BSPs).
  • Familiarity with communication protocols like CAN, Ethernet, PCIe, SPI, I2C.
  • Hands-on experience integrating embedded platforms into CI/CD pipelines and test automation frameworks.