Umbra is an American space technology company delivering advanced systems, from sensors to spacecraft, that empower customers worldwide with unmatched access to critical information from space. Our mission is simple and ambitious: redefine space—for people, systems, and missions in every domain. Umbra’s ecosystem operates through three business units: Remote Sensing (the data), Space Systems (the components), and Mission Solutions (the platforms).Together, our teams develop capabilities that deliver persistent access, resilient performance, and mission-ready solutions, advancing U.S. space leadership while keeping the world safe and informed.
About the Team
Space Systems – The Components
Space Systems is where Umbra turns hardware and software designs into on-orbit realities; developing, implementing and iterating mission-ready core technology, while simultaneously advancing the next generation of our own satellite constellation. Space Systems is vertically integrated across the satellite architecture, thus the team designs, builds, and tests an array of critical components and subsystems, including power systems, communications, control systems, deployment hardware, avionics, and payloads, as well as the flight software, firmware and digital design solutions to support the entire hardware stack. Our focus is on first principles engineering, and our mandate is simple: it has to work when it counts. Every bolt, board, and binary is proven on our own SAR constellation, ensuring flight-proven reliability where failure is not an option.
If you want to work on cutting edge space technology while maintaining the highest standard for innovation and mission ready performance, you belong here at Umbra.
About the Job
We are actively searching for a highly skilled and experienced Senior Flight Software Engineer who will take on a central and pivotal responsibility in the development and delivery of embedded flight software tailored for Umbra missions. In this essential role, you will be entrusted with a variety of critical responsibilities that encompass the entire software development lifecycle. This includes the creation and refinement of robust code, seamless system integration, comprehensive documentation, rigorous peer reviews, and thorough testing processes. Your contributions will be vital in ensuring that our mission-critical software is not only functional but also adheres to the highest standards of quality and reliability, ultimately leading to the successful deployment of our innovative missions.
This position is based on-site in either our Santa Barbara/Goleta, CA office, Arlington, VA office, or Reston, VA office (coming soon).
Key Responsibilities
- Collaborate with a cross-functional engineering team to design, develop, and maintain reliable, fault-tolerant flight software.
- Implement software solutions that meet system requirements while managing interfaces between multiple spacecraft subsystems and ground systems.
- Develop command and control software for spacecraft flight operations, payloads, and peripheral electronics.
- Contribute to and lead test campaigns, including unit testing and automated tests at both subsystem and system levels.
- Create and maintain detailed documentation for software operations and interfaces with hardware/software products.
- Perform other professional duties as assigned.
Required Qualifications
- Bachelor's degree in Computer Science, Computer Engineering, or a related field.
- 5+ years of proven experience in high-reliability software development.
- 2+ years in developing concurrent and asynchronous code.
- Strong background in embedded software development, including experience with Rust or C/C++.
- Experience programming on embedded ARM cores supporting SoC architectures in Linux, RTOS, or bare-metal environments.
- Strong understanding of processor architecture, with the ability to optimize code for performance and memory usage.
- Experience with software development tools and processes, including source control, CI/CD, bug tracking, and design documentation.
Desired Qualifications
- Advanced degree in Computer Science, Computer Engineering, or related field, with 8+ years of experience.
- Comfortable working in a fast-paced and dynamic development environment.
- Familiarity with Python programming.
- Experience working within an agile development framework.
- Hands-on experience with kernel development using Yocto.
- Knowledge of Ethernet, SPI, I2C, UART, and PCIe interfaces.
- Experience developing software for autonomous, fault-critical systems.
- Experience with developing, deploying, and maintaining software product lines.
- Knowledge of dynamics and control systems.
- Flexible Vacation / Paid Time Off / Family Leave
- Medical, Dental, Vision, Life, Voluntary Life, LTD
- Vol Life, Critical Illness, Accidental, Hospital Indemnity, Pet Insurance (employee funded)
- 401(k) Plan with 3% non-elective employer contribution
- Stock Options
- Free Parking
- Free lunch in office daily
Umbra is an Equal Opportunity Employer. We do not discriminate in hiring on the basis of sex, gender identity, sexual orientation, race, color, religious creed, national origin, physical or mental disability, protected veteran status, or any other characteristic protected by federal, state, or local law.
Employment Eligibility Verification
In compliance with federal laws, all hired persons will be required to verify their identity and eligibility to work in the United States by completing the required Employment Eligibility Verification Form (I-9 Form) upon hire.
ITAR/EAR Requirements
This position may include access to technology and/or data that is subject to U.S. export controls pursuant to ITAR and EAR. To comply with federal export controls, all persons hired must be a U.S. citizen, U.S. national, U.S. lawful permanent resident, refugee or asylee as defined by 8 U.S.C. § 1324b(a)(3), or must otherwise be eligible to obtain the required authorizations from the U.S. Department of State and/or U.S. Department of Commerce as applicable.
Pay Transparency
This job posting may cover multiple career levels. To ensure greater transparency, we provide base salary ranges for all roles, regardless of location. Our standard pay ranges are based on the role’s function and level, benchmarked against similar growth-stage companies. Compensation may vary based on geographical location, as certain regions may have different cost-of-living factors. The final offer will also be influenced by the candidate's skills, responsibilities, and relevant experience.
Compensation Range
The Compensation Range for this role is $150,000 - $190,000 DOE.