Advancing mission-critical, Linux-based embedded systems for CACI
Requirements
- Strong proficiency in C/C++; working knowledge of Python or Java.
- Experience developing for Linux-based embedded platforms.
- Experience in air-gapped, mission-critical, or resource-constrained environments.
- Strong background in hardware integration, including device drivers, ISRs, MMUs, and timers.
- Familiarity with Agile methodologies and tools such as Git, Jenkins/GitLab CI, and Jira.
- Experience with Linux kernel module development.
- Experience with Infrastructure as Code (IaC) tools such as Ansible.
Responsibilities
- Develop, configure, and debug complex embedded Linux systems for high-stakes applications.
- Utilize build systems such as Yocto or Buildroot to create and maintain sophisticated embedded Linux distributions.
- Integrate and test advanced hardware components including device drivers, ISRs, MMUs, timers, and board bring-up for complex SoCs.
- Navigate, maintain, and extend large, established codebases to ensure high performance and reliability.
- Implement and adhere to Agile development practices using tools such as Git, Jenkins/GitLab CI, and Jira.
- Ensure the security and integrity of embedded systems through hardening, STIGs, and patch management.
- Contribute to the continuous improvement of development processes and tools.
Other
- U.S. Citizenship and ability to obtain TS/SCI clearance.
- BS degree in Computer Science, Computer Engineering, Electrical Engineering, or related technical field.
- 7+ years of professional software engineering experience.
- Ability to work on-site, with up to 10% local travel required.
- Active TS SCI clearance desired.