Description
Anduril Industries is a defense technology company with a mission to transform U.S. and allied military capabilities with advanced technology.
As an Embedded Linux Software Engineer on the DeviceOS team, you will own the boundary where custom hardware meets software. You will customize vendor BSPs and evaluate upstream changes. You will debug boot end-to-end,from firmware (EDK2/U-Boot) through unified kernel images to an encrypted root filesystem running at the tactical edge.
Responsibilities
- Own the Boot Path: Own the boot sequence end-to-end on deployed compute: low-level firmware, U-Boot/UEFI, unified kernel images, initrd, encrypted storage unlock, and handoff to a running NixOS environment.
- Customize & Sustain Vendor BSPs: Reconcile vendor BSPs (Tegra/Jetson Linux, NXP, etc.) with modern NixOS package sets.
- Guarantee Deterministic Hardware Availability: Ensure all peripherals,cameras, radars, motor controllers, CAN networks, and radios,are reliably enumerated, correctly named, and fully operational across boots and platform upgrades.
- Sustain a Long-Lived Baseline: Keep the existing signed boot chain and disk encryption working as the firmware, kernels, and package sets change underneath them.
- Automate & Validate: Build and maintain automated Hardware-in-the-Loop (HIL) test suites to catch regressions in power states, bus communication, and platform stability before code hits flight or field hardware.
- Perform Deep Hardware/Software Root-Cause Analysis: Diagnose intermittent bus errors, thermal and power throttling issues, kernel panics, and boot hangs using serial consoles, logic analyzers, dmesg, and hardware schematics.
- Be the Upstream: Triage upstream kernel and vendor BSP issues, produce the patch when no upstream fix is coming, and carry that patch set forward as the platform moves.
Requirements
- 4+ years of professional embedded Linux platform, sustainment of deployed embedded Linux platforms, or kernel-adjacent integration experience.
- Deep understanding of the embedded Linux boot chain: firmware/bootloaders (U-Boot, EDK2), device trees, kernel command line, initrd/initramfs, and root filesystem assembly.
- Strong programming skills in C (for kernel/driver development and BSP patching) along with proficiency in Rust or C++ for userspace platform integration and services.
- Hands-on experience debugging hardware at the bench: using serial consoles, reading schematics and component datasheets, and tracing issues to the board level.
- Experience maintaining software deployed on real-world hardware, where updates must be safe, resilient to bricking, and strictly validated against regressions.
- U.S. Person status is required due to export control regulations (ITAR/EAR), with eligibility to obtain and maintain a U.S. security clearance.
Preferred Qualifications
- Nix / NixOS Experience: Direct experience with declarative systems (Nix/NixOS) for embedded builds; or deep expertise in Yocto/Buildroot paired with an appetite to transition to modern, reproducible paradigms.
- NVIDIA Jetson / Tegra Depth: Hands-on experience with JetPack, Jetson Linux BSP, Tegra boot architecture, or CUDA compute runtime integration.
- Low-Level Platform Security: Practical implementation of hardware root-of-trust, secure boot, HAB/AHAB, or measured boot (TPM).
- Automated HIL Testing: Experience architecting automated test benches using Python or Bash to validate embedded Linux builds against physical test targets.
- Familiarity with functional programming paradigms (e.g., Nix, Haskell).
- Upstream open-source contributions to the Linux kernel, U-Boot, or system-level open-source projects.
This listing is enriched and indexed by YubHub. To apply, use the employer's original posting:
https://job-boards.greenhouse.io/andurilindustries/jobs/5241352007