Embedded Software Engineer - Landers & Spacecraft

Pittsburgh, PA

Astrobotic Technology, Inc. is a space robotics company that seeks to make space accessible to the world.  The company’s suite of lunar landers delivers payloads to the Moon for companies, governments, universities, non-profits, and individuals.  The company is also developing advanced space robotics capabilities such as terrain relative navigation, mobile robotics for lunar surface operations, and reliable computing systems for mission-critical applications.  Originally spun out of Carnegie Mellon University in 2007, Astrobotic is pioneering affordable planetary access that promises to spark a new era of exploration, science, tourism, resource utilization, and mining.  Astrobotic’s headquarters is in Pittsburgh, Pennsylvania, with a second location in Mojave, California.

Astrobotic wants you to design, develop, verify, and deploy software code for our lunar landers. You will be responsible for developing unique drivers for flight hardware components, maturing current design, assessing risk and reliability, and working with other subsystem leads to maintain hardware/software compatibility. You will integrate and test with ground and flight systems hardware-in-the-loop environments, write and present technical reports, regularly reporting to the Mission Software Lead on progress.

Note: This position may be filled at multiple levels, including Engineer II, Senior, Principal, etc. depending on the candidate’s experience. 

Required Skills & Qualifications:

  • B.S. Electrical Engineering, Computer Engineering, Computer Science or related field
  • Minimum 4 years of experience (or 2 years with a master's degree) in development of software drivers
  • Programming in C, C++, and Python (or similar scripting languages)
  • Developing, testing, and debugging embedded software
  • Performing software integration and testing, including writing and running unit test code
  • Real time deterministic systems in an embedded environment
  • Using multiple operating systems and development environments including Windows and Linux
  • Full software development life cycle for complex systems
  • Working with configuration management tools
  • Working within an agile development framework

Desired Skills & Qualifications

  • Knowledgeable in Failure Detection and Isolation Recovery or fault-tolerant designs
  • Experience with communication or I/O protocols, such as CAN bus, RS-232 / RS-422, TCP/IP, or any spacecraft communication protocols
  • Experience working with Git
  • Experience with containers (e.g. Docker, Kubernetes) and virtual machines (e.g. QEMU)
  • Experience developing hardware and systems for space applications
  • Experience developing embedded software and instrumentation for spacecraft systems

The base salary range represents the low and high end of the anticipated salary range for this position. The actual base salary offered for this position will depend on numerous factors including individual performance, business objectives, and the candidates professional experience.  Base salary is just one component of Astrobotic’s competitive total rewards strategy.

To conform to U.S. Government space technology export regulations, including the International Traffic in Arms Regulations (ITAR) you must be a U.S. citizen, lawful permanent resident of the U.S., protected individual as defined by 8 U.S.C. 1324b(a)(3), or eligible to obtain the required authorizations from the U.S. Department of State.

Astrobotic Technology, Inc. does not discriminate in employment on the basis of race, color, religion, sex (including pregnancy and gender identity), national origin, political affiliation, sexual orientation, marital status, disability, genetic information, age, membership in an employee organization, retaliation, parental status, military service, or other non-merit factor.

If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request to contact@astrobotic.com.