Umbra

Senior Flight Software Engineer (Rust)

Umbra$155K — $185K *
Aerospace & Defense
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's degree or higher in Computer Science, Computer Engineering, or a related field.
  • 5+ years of experience in high-reliability software development using Rust or Modern C/C++.
  • 4+ years of systems or embedded software development experience.
  • 2+ years developing concurrent code with asynchronous Rust.
  • Proficient in Linux, RTOS, or bare-metal environments.
  • Experience in leading software design, development, and documentation processes.
  • Familiar with building Continuous Integration (CI) pipelines and automated testing tools.

Responsibilities

  • Enhance your own and your team's software engineering skills.
  • Collaborate with cross-disciplinary engineers to create reliable flight software.
  • Architect and implement software to meet high-level system requirements.
  • Develop command and control software for spacecraft operations and electronics.
  • Lead diverse testing campaigns from unit testing to system-level validations.
  • Document software operations and interfaces comprehensively.
  • Communicate technical concepts to non-technical audiences with clarity.

Benefits

  • Flexible Time Off, Sick, Family & Medical Leave
  • Medical, Dental, Vision, Life, LTD, STD (employer funded)
  • Voluntary Life, Critical Illness, Accidental, Hospital Indemnity, Pet Insurance (employee funded)
  • 401k with a 3% non-elective company contribution
  • Stock Options
  • Free Parking
  • Free lunch daily in office
Full Job Description
About the Job

We are seeking a Senior Flight Software Engineer, with expertise in the Rust programming language, to take an active role in the development and delivery of embedded flight software specifically tailored for Umbra missions. In this pivotal role, you will be tasked with a range of critical responsibilities, including but not limited to the formulation and specification of software requirements, the comprehensive design of robust software architecture, and the actual writing and implementation of code. You will take lead responsibility for the essential processes of system integration and testing, ensuring that all components function seamlessly together.

In addition to your core development responsibilities, you will also be expected to provide expert guidance and mentorship in various aspects of software design, code development, and peer code reviews. Your role will include oversight of thorough documentation practices and the meticulous integration of the flight software with flight hardware, which encompasses conducting tests to ensure reliability and performance. The ideal candidate shows ownership, is a solution-driven problem solver, an exceptional communicator, and possesses a strong systems-thinking mindset. Your contributions will be vital to the success of our missions, driving innovation and excellence in software engineering within our team.

This position is based on-site in either our Santa Barbara/Goleta, CA office, Arlington, VA office, or Reston, VA office.

Key Responsibilities
  • Drive yourself and all of your team to become better software engineers.
  • Collaborate with a cross-disciplinary engineering team to design, develop, and maintain reliable, fault-tolerant flight and payload software.
  • Architect and implement software to meet high-level system requirements, while managing interfaces with multiple spacecraft subsystems, ground systems and hardware.
  • Develop command and control software for spacecraft flight operations, payloads, and peripheral electronics.
  • Contribute to and lead test campaigns, from unit-level testing to automated system and subsystem-level testing.
  • Create and maintain detailed documentation for software operation and interfaces with other system components.
  • Present high level technical concepts simply and clearly to non-technical audiences.
  • Take on additional professional duties as assigned.

Requirements

Required Qualifications
  • Bachelor's or higher degree in Computer Science, Computer Engineering, or a related field.
  • 5+ years of proven experience in architecting and developing high-reliability software with Rust or Modern C/C++.
  • 4+ years of systems and/or embedded software development with Rust or Modern C/C++.
  • 2+ years developing concurrent code with asynchronous Rust.
  • Proficient working within Linux, RTOS, or bare-metal environments.
  • Experience leading software design and development processes, including version control, bug tracking, and documentation.
  • Experience building and maintaining Continuous Integration (CI) pipelines, automated testing and build/release management, and static/dynamic analysis tools.
  • Comfortable working in a fast-paced, dynamic development environment.
  • Able to travel up to 15% (between Umbra's Virginia & Santa Barbara offices).


Desired Qualifications

  • 8+ years of proven experience in architecting and developing high-reliability software with Rust or C/C++.
  • 3+ years developing concurrent code with asynchronous Rust.
  • 3+ years with space systems development, including space and ground segments.
  • 3+ years with software used in autonomous, fault-critical systems.
  • Hands-on experience with kernel development using Yocto or similar.
  • Background in developing, deploying, and maintaining software product lines.
  • Familiarity with Python programming.
  • Strong understanding of processor architecture, with the ability to optimize code for performance and memory usage.
  • Knowledge of hardware interfaces such as Ethernet, SPI, I2C, UART, and PCIe.
  • Knowledge of dynamics and control systems.

Benefits
  • Flexible Time Off, Sick, Family & Medical Leave
  • Medical, Dental, Vision, Life, LTD, STD (employer funded)
  • Vol Life, Critical Illness, Accidental, Hospital Indemnity, Pet Insurance (employee funded)
  • 401k with 3% non-elective company contribution
  • Stock Options
  • Free Parking
  • Free lunch daily in office


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 $155,000 - $185,000 DOE.

About Umbra

Umbra is a computer hardware company that specializes in developing high-performance rendering software and hardware for the gaming and entertainment industries. The company was founded in 2006 and is headquartered in Ottawa, Canada. Umbra's technology is used by some of the world's leading game developers and studios to create immersive and realistic gaming experiences. The company's products include software tools for real-time rendering, as well as hardware solutions for high-performance graphics processing. Umbra's mission is to help game developers and studios create the most realistic and immersive gaming experiences possible.
Learn more about Umbra
Size
50 employees
Industry
Founded
2006

Similar Jobs

More Jobs at Umbra

More Aerospace & Defense Jobs

Find similar Senior Flight Software Engineer (Rust) jobs: