Embedded Software Engineer
Umbra builds next-generation space systems that observe the Earth in unprecedented fidelity.
Our mission: Deliver global omniscience.
To stay ahead of climate change, geopolitical risk, and other major crises and issues, we need a global understanding of what is changing, where, and how fast. Umbra provides easy access to the highest quality commercial satellite data available, which is an indispensable tool for the growing number of organizations monitoring the Earth. We empower our customers to create the solutions that inform, inspire, and address our planet’s most pressing needs. We’re helping to create a brand new industry that has never meaningfully existed before. We are a bold, experienced team of developers, engineers, product specialists, and other professionals working to aggressively expand the state-of-the-art for commercial remote sensing.
We are looking for an experienced embedded software engineer to contribute to the delivery of software/firmware in support of Umbra missions. The Embedded Software Engineer will be responsible for requirement development, software architecture and design, code development, system integration, and testing. The Embedded Software Engineer will also provide expertise in software design, code development, peer review, documentation, and integration with flight hardware.
- Collaborate with a multi-disciplinary engineering team to design, develop, and maintain reliable, and fault tolerant software
- Implement software to meet requirements while managing interfaces with multiple spacecrafts subsystems and ground systems hardware
- Develop command and control software for spacecraft flight and payload electronics
- Develop and participate in test campaigns ranging from unit-level to automated testing at the subsystem and system-level
- Develop documentation for operation and interface with software products
- An engineering degree in computer science, computer engineering, or equivalent
- 3+ years of demonstrated applicable experience in high reliability software development
- Developing concurrent code with asynchronous Rust
- Software development experience in embedded environments, working with: Rust, C, C++
- Experience programing on embedded ARM cores supporting SoC architectures and working in a Linux or bare-metal environment
- Understanding of processor architecture and writing code to optimize for speed and size
- Experience with software development processes including: source control, bug tracking, and design documentation
- Comfortable working in a dynamic and fast-paced development environment
- Advanced degree in Software Engineering, Computer Engineering, or equivalent and 5+ years experience
- Expertise writing Python
- Experience working within an agile framework
- Knowledge of Ethernet, SPI, I2C, UART, and PCIe interfaces
- Experience with software running in autonomous, fault critical systems
- Experience developing, deploying and maintaining software product lines
- Background in dynamics and control systems
- Flexible Vacation / Paid Sick Time/ Family Leave
- Medical, Dental, Vision, Life, Voluntary Life, LTD
- 401(k) Plan with 3% non-elective employer contribution
- Stock Options
Umbra is an Equal Opportunity Employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics.
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.
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.
This job posting may span more than one career level. To provide greater transparency to candidates, we share base ranges for all job postings regardless of state. We set standard base pay ranges for all roles based on function and level benchmarked against similar stage growth companies. Final offer amounts are determined by skills, responsibilities and relevant work experience.