You will be an embedded Linux software developer working on the current IRD embedded retransmission device and its next-generation successor.
The current IRD is a customized OpenWrt-based Linux device for networking and retransmission. It covers firmware image integration, custom OpenWrt packages and feeds, networking and security services, device configuration, and an admin user interface.
The next-generation work moves the solution onto new embedded hardware and shifts the platform toward Linux.
This is an individual contributor role. Your main work is carrying out assigned development, integration, sustainment, and defect fixes, while working with senior engineers and cross-functional colleagues on technical direction, architecture, hardware integration, cybersecurity, and release planning.
Responsibilities
Carry out development tickets that move existing IRD features onto next-generation ARM-based hardware.
Build, test, debug, and maintain Linux software for embedded networking and retransmission devices.
Sustain and extend the OpenWrt-based IRD firmware, covering image configuration, custom package feeds, services, first-boot behavior, device configuration, and firmware build integration.
Help port the existing OpenWrt device solution to new hardware and an Alma Linux-based architecture.
Assist with bootloader, kernel, board support, cross-compilation, device configuration, and image work under set technical direction.
Develop and maintain Buildroot and Linux image creation, packaging, provisioning, release, update, and deployment workflows.
Help evolve a Linux or RHEL-based management architecture.
Write and upkeep REST APIs and device-management UI features that control networking and device behavior.
Set up, maintain, and troubleshoot networking, including interfaces, routing, DNS, Wi-Fi, cellular or modem links, and secure communications.
Build and keep up unit, integration, system, simulation, and hardware-connected tests.
Take part in GitLab merge request reviews, CI/CD pipeline upkeep, build checks, release engineering, and reproducible builds.
Support secure development: vulnerability fixes, certificates, authentication and authorization, update integrity, dependency management, and CVE analysis.
Write and maintain design, build, API, test, and operations documentation.
Work with hardware, systems, cybersecurity, QA, and product teams to implement and check product requirements.
Write software in Python, Bash or shell, C or C++, and other languages as needed for embedded applications, automation, tooling, and integration.
Expect daily work to involve OpenWrt, Alma Linux, ARM-based devices, API or UI work, image builds, CI/CD, hardware testing, and secure sustainment.
The role suits someone who enjoys solving moderately to highly complex problems across embedded Linux, networking, configuration, integration, testing, and security.
Requirements
Required:
Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related technical field.
Minimum of five years in professional software development.
At least five years building, integrating, testing, or sustaining software for Linux systems such as embedded Linux, Linux platform software, networking appliances, or device management.
Hands-on work with Python, Bash or shell, and C or C++.
Know how to configure, debug, and deploy Linux systems, including networking and package management.
Experience building, integrating, and debugging software on ARM and/or Intel or x86 devices.
Experience with embedded Linux build systems or distributions such as OpenWrt, Buildroot, Yocto, Embedded Linux, or equivalents.
Experience with cross-compilation, embedded image creation, software packaging, and deployment to embedded targets.
Experience with Linux networking: interface setup, routing, DNS, DHCP, firewalling, Wi-Fi, and troubleshooting.
Experience developing and debugging REST APIs, device management applications, or web configuration interfaces.
Experience with Git and GitLab workflows, including merge requests, code review, and branching strategies.
At least two years building, maintaining, or troubleshooting automated CI/CD pipelines.
Experience writing unit, integration, system, or hardware-in-the-loop tests for Linux or embedded software.
Able to communicate clearly in writing and speech, and to keep technical documentation up to date.
Ability to work remotely within a cross-functional development team.
Desired:
Experience with NXP i.MX8, ARM64 or AArch64, U-Boot, Linux kernel configuration, device trees, boot flows, or board support packages.
Experience porting an embedded Linux solution to new hardware or another Linux distribution.
Experience with OpenWrt buildroots, feeds, package Makefiles, and custom package development.
Experience with Alma Linux, RHEL, RPM or DNF, Kickstart, OSTree, SELinux, or RHEL Cockpit.
Experience with Python or Flask applications, OpenAPI or Swagger APIs, or embedded device-management UIs.
Experience with embedded networking products, retransmission devices, routers, cellular or modem integration, Wi-Fi, 802.1X, routing, or secure network configuration.
Experience with device provisioning, firmware or image installation, update mechanisms, or field device sustainment.
Experience with secure development, certificate or PKI integration, vulnerability scanning, SBOMs, CVE remediation, or tools such as Trivy.
Experience with containerized builds, simulated device environments, or hardware-in-the-loop testing.
Experience supporting DoD, mission, tactical-edge, disconnected, or regulated embedded device
Conditions
Full-time, regular position.
Travel of up to 10%, within the continental US.
No security clearance is needed to start.
Salary range: $82,100-$172,400.
Pay depends on factors such as location, federal contract labor categories and wage rates, relevant experience, specific skills and competencies, education, and certifications.
The range shown is the national average, since the job can be done from more than one location.
Flexible working arrangements help employees balance quality work with their personal lives.
Benefits
Comprehensive benefits covering healthcare, wellness, financial, retirement, family support, continuing education, and time off.
Flexible time off and access to learning resources.
Competitive compensation and learning and development opportunities.
Where you’d work
Fully remote
You can work from
United States
About the company
C
CACI International
Also hiring in Washington, Dc, United States, United States, Denver, United States and 9 more places