Embedded Software Engineer

Astro Digital Inc.
Littleton, CO, United States
26 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$130,000.0 - $175,000.0
Working hours
Regular working hours
Job source

Tech stack

Board Bringup Abstraction Layers Data Analysis ARM Architecture Automation of Tests Continuous Integration Software Debugging Linux on Embedded Systems Embedded Software Firmware FreeRTOS Joint Test Action (IEEE Standards)
+11 more
Python (Programming Language) Real-Time Operating Systems Software Tools System Testing Universal Asynchronous Receiver/Transmitter Serial Peripheral Interface Peripherals Git Flow Bare Metal Build Tools C++14

Job description

We are seeking an Embedded Software Engineer to develop low-level software that directly interfaces with hardware across spacecraft subsystems and supporting electronics.

This role is well-suited for an engineer with solid foundational experience who can operate independently on day-to-day tasks, while continuing to grow in system design and large-scale integration efforts with guidance from senior engineers.

Candidate will be expected to deliver working software quickly, contribute to hardware bring-up and debugging, and build a deeper understanding of how individual components interact within larger systems. This role is primarily on-site at our Littleton, Colorado headquarters or at our facility in San Jose, California, with limited remote work flexibility., * Develop and maintain embedded software for spacecraft subsystems, including sensors, actuators, power systems, and communication interfaces

  • Write and debug low-level drivers and board support code
  • Interface directly with hardware (SPI, I2C, UART, GPIO, DMA)
  • Support hardware bring-up and debugging using lab equipment and standard tools
  • Deliver working implementations quickly and iterate to improve reliability, performance, and maintainability
  • Debug embedded systems using tools such as GDB, JTAG, and SWD
  • Collaborate with cross-functional teams to define and refine system interfaces
  • Participate in integration, HIL testing, and system validation
  • Contribute to Python-based test, automation, and data analysis workflows, * Ownership of day-to-day work: Candidate reliably executes assigned tasks and follows issues through to resolution
  • Growth mindset: Candidate actively develops technical depth and takes on increasing responsibility over time
  • System-oriented thinking: Candidate seeks to understand how components interact within a larger system, including trade-offs and dependencies
  • Curiosity and critical thinking: Candidate asks “why” when appropriate-challenging assumptions, clarifying requirements, and improving designs
  • Bias toward action: Candidate delivers working solutions quickly and iterates based on testing and feedback
  • Collaboration: Candidate works effectively across disciplines and incorporates feedback from more experienced engineers

Requirements

  • Bachelor’s degree in EE, CE, CS, or related field
  • 5 years of embedded software experience
  • Proficiency in C and modern C++
  • Experience developing firmware in bare-metal or minimally abstracted environments
  • Strong understanding of: *

  • Interrupt-driven design
  • Memory-mapped I/O and peripheral configuration
  • Timing and resource constraints
  • Experience writing low-level drivers and interfacing with hardware peripherals (SPI, I2C, UART, GPIO, DMA)
  • Ability to work from datasheets/reference manuals to configure and debug hardware
  • Experience debugging embedded systems using: *

  • Software tools (e.g., GDB, JTAG/SWD)
  • Lab equipment (oscilloscope, logic analyzer, multimeter)
  • Familiarity with RTOS concepts (threads, scheduling, synchronization)
  • Exposure to embedded Linux development environments
  • Experience with Git-based workflows
  • Ability to execute well-scoped tasks independently and deliver reliable results, * Experience developing firmware for resource-constrained microcontrollers in bare-metal environments
  • Comfort working at low levels of abstraction, including direct register manipulation and hardware bring-up
  • Experience with RTOS frameworks (e.g., Zephyr, FreeRTOS) and associated design trade-offs
  • Experience working across abstraction layers (bare-metal, RTOS, embedded Linux)
  • Familiarity with embedded Linux tools and workflows (e.g., cross-compilation, build systems)
  • Experience bringing up new hardware, including initialization and early-stage debugging
  • Experience optimizing firmware for memory, timing, or power constraints
  • Familiarity with ARM-based platforms (Cortex-M, Cortex-A) or similar
  • Experience with integration, HIL testing, or cross-subsystem debugging
  • Exposure to CI/CD or automated testing workflows

Benefits & conditions

Pulled from the full job description

  • Health insurance
  • Paid time off
  • Stock options, Astro Digital employees are provided with a comprehensive benefits package that includes company stock options, healthcare, 401k retirement plan, and PTO. The range of possible compensation for this role is $130k-$175k annually, depending on experience and alignment.

Physical Demands

This position may require lifting up to 20 lbs and occasional standing, bending, and working with lab equipment.

About the company

Astro Digital designs, builds, and operates a diverse range of small satellite systems supporting space-based turnkey missions for several business applications, including earth observation, communications, in-orbit demonstrations, risk reduction, science, and exploration. Astro Digital is headquartered in Littleton, Colorado with roughly 100 employees and infrastructure around the globe.

We move fast, deliver on time, and continuously improve systems in orbit and on the ground. We value engineers who take ownership, think in systems, and iterate toward robust solutions.

Apply for this position

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

Apply on www.indeed.com

Good distractions

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

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

5:02 min

Mapping Git flow branches to application tester segments

Majid Hajian · LIVE

8:07 min

Transitioning from web development to constrained hardware engineering

Philipp-Alexander Blum · LIVE

3:53 min

Introduction to git flow and clean feature branches

Johannes Haux · WWC 2022

1:53 min

Entering software development through retro computing platforms

Alex Soto Alex Soto · LIVE

5:19 min

Audience Q&A on future tools and Git commands

PJ Hagerty PJ Hagerty · WWC Europe 2026

Videos

See all

Related articles

See all