← All roles
Rivet logoRivetInfrastructure
Posted today

Software Engineer, Linux Kernel / Android

AndroidC++SF · Mid · Seed

About Rivet
Rivet is an American company building integrated task systems — fusing hardened hardware with software, sensors, AI, and networking — for industrial workforces and defense personnel. We create capabilities that multiply the effectiveness of every individual and withstand the world’s toughest environments.
We serve the people who build, operate, maintain, and defend our way of life. From technicians and engineers to first responders and service members, they embody the hard work, ingenuity, and meritocratic values that drive Western prosperity. Yet too often they are forced to rely on outdated tools that fail under modern pressures. Rivet exists to reset that priority.
At Rivet, you’ll join a mission-driven team that fuses disciplines to deliver decisive outcomes where they matter most. Whether shaping our technology, strengthening our partnerships, or building our culture, every role here contributes to equipping the front lines with the modern systems they deserve.
Work Authorization Requirement: Due to the nature of our business and compliance with federal regulations, all candidates must be a "U.S. Person". Upon hire, you will be required to provide documentation verifying your status as a U.S. Citizen, a lawful permanent resident, or a protected individual under 8 U.S.C. 1324b(a)(3).

Summary

As a Software Engineer, Linux Kernel / Android, you'll work at the intersection of software and hardware to build and maintain the low-level platform stack that powers Rivet's body-worn and field-deployed devices — including our AR/XR soldier systems, which combine real-time sensor fusion (cameras, IMUs, depth sensors) with a display and compute pipeline running on Android and embedded Linux. You'll focus on the kernel, BSP, AOSP, HALs, drivers, and board bring-up that make that pipeline reliable, secure, and power-efficient enough to run all day on a warfighter's body.

You'll work closely with hardware, electrical, and sensor-fusion/AR software engineers to integrate new hardware, debug issues across the full system stack, and deliver platform software that holds up under the SWaP, thermal, and ruggedization constraints of field-deployed defense hardware. This is a hands-on individual contributor role with ownership over meaningful pieces of the platform.

Responsibilities

  • Develop and maintain system-level software across Android and Linux, with a focus on the kernel, BSP, AOSP, HALs, and device drivers.

  • Customize and integrate AOSP for custom hardware platforms, including framework, system-level, and camera/display HAL components that feed our sensor-fusion and AR pipeline.

  • Bring up new hardware and peripherals, working closely with electrical and hardware engineers to debug issues across the hardware/software boundary.

  • Configure, build, and maintain Linux kernels and Android system images for power- and thermally-constrained, body-worn embedded devices.

  • Develop and maintain board support packages, device configurations, kernel modules, and low-level system components.

  • Debug complex issues involving hardware, kernel, drivers, boot processes, power management, memory, and system performance — with power and thermal efficiency treated as first-class constraints given our SWaP requirements.

  • Integrate and maintain device drivers and hardware interfaces for custom peripherals, including sensor and edge-compute (NPU/DSP) interfaces used in on-device inference.

  • Own secure and reliable platform architecture, including secure boot, system integrity, permissions, and other low-level security mechanisms appropriate for defense-grade hardware.

  • Build automated tests and debugging tools for system-level software and hardware integration, including hardware-in-the-loop validation.

  • Work with software, electrical, mechanical, and systems engineers to identify and resolve platform issues.

  • Participate in code reviews, technical design discussions, and platform bring-up activities.

  • Produce pragmatic, reliable, and well-documented software that can be deployed and ruggedized across multiple hardware configurations.

Requirements

  • 3+ years of experience developing system-level software for Android and/or Linux-based devices.

  • Strong experience with Linux kernel development, configuration, debugging, or integration.

  • Experience working with Android/AOSP, including platform customization, HALs, system services, device configuration, or framework components.

  • Experience developing or integrating device drivers and interfacing with custom hardware and peripherals.

  • Experience with board bring-up and debugging issues across the hardware/software boundary.

  • Strong C/C++ programming skills and familiarity with low-level debugging and development tools.

  • Understanding of Linux boot processes, device trees, kernel configuration, memory management, and system initialization.

  • Experience building Android/Linux system images and working with embedded build systems.

  • Familiarity with common hardware interfaces and protocols such as USB, MIPI, I2C, UART, GPIO, and PCIe.

  • Ability to diagnose complex system-level issues using logs, traces, debuggers, and hardware instrumentation.

  • Familiarity with embedded software testing and hardware-in-the-loop or system integration testing.

  • Working knowledge of secure boot, system integrity, and other platform security mechanisms — required given the defense-grade nature of our hardware.

  • Comfortable working in a highly collaborative environment with engineers across software, electrical, mechanical, and systems disciplines.

  • Ability to obtain and maintain a U.S. government security clearance, if required for the role.

Preferred Qualifications

  • Experience with ARM-based SoCs and embedded computing platforms.

  • Experience with bootloaders such as U-Boot or Android Bootloader.

  • Experience with Yocto, Buildroot, Bazel, Soong, or other embedded/system build environments.

  • Familiarity with OTA updates, secure boot chains, TPMs, verified boot, or platform hardening.

  • Experience developing software for resource-constrained, body-worn, or wearable devices with power, thermal, memory, or compute limitations.

  • Experience working on safety-critical, high-assurance, defense, aerospace, or other demanding embedded systems.

  • Experience with camera, display, or sensor pipelines feeding AR/XR or spatial-computing applications.

  • Active security clearance.

AI

Check your CV against this role

Drop your CV. You get a 0-100 fit score against the actual job description, plus the read a senior engineering lead would write. Private to you.

Your CV joins the pool too, so roles that fit can find you. No spam, and nothing reaches a company without your go-ahead.

Score this once, or every future role

Start the candidate journey and every new role on the board gets scored against you.

Five minutes. Tell us what you’re after, drop your CV once, pick how we should reach out. You get a candid read back and you only hear from us when a role fits.

More at Rivet