Embedded Linux Software Engineer II

Cesiumastro Inc
Westminster, CO, United States
3 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
2 years minimum
Compensation
$102,000.0 - $136,000.0
Working hours
Regular working hours
Job source

Tech stack

Board Bringup Adobe InDesign Computing Platforms Systems Engineering Booting (BIOS) Computer Engineering Software Debugging Linux Device Drivers Linux on Embedded Systems Embedded Software Firmware
+15 more
Field-Programmable Gate Array (FPGA) Linux Kernel Linux Distribution Software Configuration Management Software Engineering Software Requirements Analysis Verification and Validation (Software) System Software Systems Integration Diagnostic Tools Yocto Build Tools U-Boot Software Version Control Software Library

Job description

The Embedded Software Engineer II supports the development of embedded software for aerospace communications and defense systems. This role applies established engineering principles and development processes to design, implement, and integrate software for embedded Linux platforms. Working under the guidance of senior engineers or engineering management, the engineer contributes to the software development lifecycle including implementation, integration, testing, and qualification. Responsibilities include developing embedded Linux applications, device drivers, and supporting libraries, as well as assisting with kernel customization, bootloaders, and board bring-up. The role collaborates with cross-functional engineering teams to support system performance, integration, and delivery of reliable embedded software solutions., * Develop and port embedded Linux applications, device drivers, and software libraries for embedded computing platforms.

  • Configure, customize, and integrate Linux kernels and embedded bootloaders such as U-Boot.
  • Assist with board bring-up and software enablement activities for new embedded hardware platforms.
  • Develop and maintain tailored Linux distributions for specific embedded applications.
  • Implement software features and modifications that meet system performance and functional requirements.
  • Support software design implementation, debugging, and testing activities throughout the development lifecycle.
  • Contribute to reusable software components and maintainable software architecture within defined system frameworks.
  • Analyze and resolve moderately complex technical issues related to embedded software, operating systems, or hardware/software integration.
  • Collaborate with hardware, firmware, FPGA, and systems engineering teams to support system integration and performance.
  • Support debugging and troubleshooting activities during development, integration, and qualification phases.
  • Evaluate system logs, test outputs, and diagnostic data to identify root causes of technical issues.
  • Support verification and validation activities to ensure software meets system requirements and engineering standards.
  • Document technical findings, software updates, and engineering decisions according to program documentation standards.
  • Maintain and enhance the Yocto-based Linux build system used for embedded software development.
  • Support CI/CD pipelines used for automated software builds and releases.
  • Package and deploy software images across multiple embedded hardware platforms.
  • Participate in design reviews and engineering discussions supporting program objectives.
  • Contribute to software configuration management and version control practices.
  • Assist in preparation of engineering documentation such as software design descriptions, test procedures, and technical reports.
  • Provide technical input for internal engineering reviews and program milestones.

Requirements

  • Bachelor’s degree in Software Engineering, Computer Engineering, or relevant field.
  • 2-5 years of relevant software engineering experience.
  • Knowledge of embedded Linux systems and software development practices.
  • Experience developing device drivers, embedded applications, or low-level system software.
  • Familiarity with Linux kernel configuration and customization.
  • Understanding of bootloader functionality and system initialization processes.
  • Experience using Yocto or similar embedded Linux build systems.
  • Familiarity with board bring-up and hardware/software integration activities.
  • Ability to troubleshoot embedded software issues using debugging and diagnostic tools.
  • Understanding of software development lifecycle practices used in aerospace or defense environments.
  • Ability to interpret system requirements, technical specifications, and hardware documentation.
  • Strong analytical, problem-solving, and technical communication skills.
  • Ability to perform detailed software analysis and troubleshooting of embedded systems.
  • Ability to concentrate on complex software development tasks requiring logical reasoning and precision.
  • Ability to review and interpret technical documentation and engineering specifications.
  • Ability to work in office, laboratory, or engineering development environments.
  • Ability to manage multiple engineering tasks within defined program timelines.
  • Ability to collaborate effectively with multidisciplinary engineering teams.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

7:40 min

In-vehicle infotainment systems and graphical functional safety validation

Denis Grahovac · WWC 2021

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · WWC 2025

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

8:22 min

Simulating a Linux terminal and running Spring Boot

Jakov Semenski · LIVE

Videos

See all

Related articles

See all