Senior Flight Software Engineer

UmbraSanta Barbara, CA
9hOnsite

About The Position

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).

Requirements

  • 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.

Nice To Haves

  • 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.

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.

Benefits

  • 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
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service