Embedded Autonomy Engineer
Job description
Embedded Autonomy Engineer at mach.
About the role
Mach is developing advanced autonomous defense systems for challenging environments where standard navigation tools are unreliable. This role involves managing the Linux mission computer that integrates cameras and sensors, ensuring real-time performance of the autonomy stack under strict hardware limitations. You will work on bringing up compute systems, integrating high-bandwidth sensors, and optimizing the autonomy software.
Key facts
What you'll do
- Manage the entire lifecycle of the Linux mission computer, including board support packages, device trees, and bootloaders for NVIDIA Jetson/Tegra and similar SoCs.
- Integrate high-bandwidth sensors like MIPI CSI cameras with GMSL/FPD-Link SerDes and radar over PCIe or Ethernet, ensuring accurate time-synchronization and calibration.
- Develop and optimize the real-time data path from sensors to the GPU for perception, localization, and inference, focusing on zero-copy and GPU memory management.
- Set up and maintain the on-target execution environment for autonomy and machine learning, including CUDA/TensorRT runtime and edge containers.
- Customize and build embedded Linux images using Yocto or L4T for reproducible deployments.
- Fortify the compute and sensing platform against power, thermal, vibration, and boot reliability issues, and diagnose problems on physical hardware.
- Define software-hardware interfaces with electrical engineers during board design and debug integrations using tools like logic analyzers and oscilloscopes.
- Contribute to the autonomy runtime, including middleware, health monitoring, and state management, leveraging your deep knowledge of the Linux compute layer.
Requirements
- At least 5 years of experience in embedded Linux development on custom hardware, with strong skills in device tree configuration, BSP customization, and kernel bring-up.
- Proven experience integrating cameras and sensors on Linux, specifically MIPI CSI and V4L2 with GMSL or FPD-Link SerDes, managing the sensor-to-memory path.
- Familiarity with Yocto or L4T-based build systems and proficiency in C, C++, Bash, and Python.
- Strong hardware debugging skills using logic analyzers, oscilloscopes, CAN, and UART, with the ability to read schematics and collaborate with electrical engineers.
- A history of successfully deploying Linux-based compute platforms from initial bring-up to real-world use, including real-time and performance optimization.
- A desire to advance into autonomy and on-target inference, beyond just maintaining the operating system and hardware.
Nice to have
- Experience with NVIDIA Jetson and the L4T stack, including CUDA, TensorRT, GStreamer/DeepStream for inference and media pipelines.
- Familiarity with ROS 2/copper-rs/dora-rs and integrating autonomy, perception, or localization software on mission computers.
- Expertise in multi-sensor time-synchronization and calibration, such as PTP and hardware triggering.
- Skills in GPU pipeline and memory optimization, DMA, and zero-copy under real-time constraints.
- Experience with Nix or NixOS workflows, and strong opinions on Rust.
- Background working in contested or degraded environments, including RF denial, low-light conditions, or high-vibration platforms.
Skills & tools
- Embedded Linux
- Device tree
- BSP customization
- Kernel bring-up
- MIPI CSI
- V4L2
- GMSL
- FPD-Link SerDes
- Yocto
- L4T
- C
- C++
- Bash
- Python
- Logic analyzers
- Oscilloscopes
- CAN
- UART
- NVIDIA Jetson
- CUDA
- TensorRT
- GStreamer
- DeepStream
- ROS 2
- PTP
- DMA
- Nix
- Rust
Practical notes
This position may involve access to information regulated by U.S. export control laws. Any job offer may depend on authorization to receive controlled software or technology without requiring an export license sponsorship. Mach participates in E-Verify to confirm employment eligibility.