Software Integration & Test Engineer at Astrobotic Technology Inc
Pittsburgh, Pennsylvania, USA -
Full Time


Start Date

Immediate

Expiry Date

08 Oct, 25

Salary

85000.0

Posted On

09 Jul, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Scripting Languages, Software Integration, Virtual Machines, C++, Embedded Systems, Communication Protocols, Linux, Test Equipment, Embedded Operating Systems, Ipc, C, Testing, Python, Writing, Computer Science, Complex Systems, Power Systems, Operating Systems

Industry

Computer Software/Engineering

Description

Astrobotic is at the forefront of advancing space exploration and technology development. Our expertise spans from lunar rovers, landers, and infrastructure to spacecraft navigation, machine vision, and computing systems for in-space robotic applications. To date, the company has been contracted for two lunar missions, and has won more than 60 National Aeronautics and Space Administration (NASA), Department of Defense (DoD), and commercial technology contracts worth more than $600 million.
We recently launched and operated the first American lunar lander mission since the Apollo Program. Beyond helping lead America back to the Moon, Astrobotic developed and operates reusable vertical takeoff, vertical landing (VTVL) rockets and continues to advance next-generation VTVL capabilities and advanced rocket engines. Established in 2007, Astrobotic is headquartered in Pittsburgh, PA, with a propulsion and test campus in Mojave, CA.
Astrobotic is looking for a Software Integration and Test Engineer to help with the planning and execution of the software integration and test program for our lunar landers. Candidates should be effective self-starters who are detail-oriented and can work in a fast-paced, collaborative environment. As part of Astrobotic’s Software & Controls Team, you will literally be creating history as we define the benchmark for commercial delivery of payloads to the Moon and beyond.

REQUIRED SKILLS & QUALIFICATIONS:

  • Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field
  • Minimum of 4 years of experience in software driver development (or 2 years with a Master’s degree)
  • Proficient in C, C++, and Python (or similar scripting languages)
  • Hands-on experience developing, testing, and debugging embedded software
  • Skilled in software integration and testing, including writing and executing unit tests
  • Experience with real-time, deterministic embedded systems
  • Comfortable working across multiple operating systems and development environments, including Windows and Linux
  • Demonstrated experience with the full software development lifecycle for complex systems
  • Familiarity with configuration management tools
  • Experience working within an Agile development framework

DESIRED SKILLS & QUALIFICATIONS:

  • Knowledge of formal software V&V processes
  • Proficiency with software configuration management tools (e.g. git)
  • Experience with containers (e.g. Docker) and virtual machines (e.g. QEMU)
  • Experience with Linux and other embedded operating systems
  • Familiarity with coding safety standards (e.g. MISRA-C)
  • Familiarity with communication protocols (e.g. CCSDS, Ethernet, RS-422, TCP/IP, I2C, QAM, RS-232, Spacewire, CAN, GPIO, IPC, MIL1553, RS-485)
  • Familiarity with electronic test equipment including oscilloscopes, multimeters, and logic analyzers
  • Familiarity with electrical circuit dynamics
  • Familiarity with environmental testing (e.g. EMC/EMI, thermal-vacuum testing)
  • Familiarity with some of the systems that the software system is driving including multi-DOF spacecraft controls, thermal systems, RF communications systems, avionics systems, and power systems
    Note: This position may be filled at various levels (Engineer I, Engineer II, Engineer III, Senior Engineer, or Principal Engineer) based on your experience and qualifications.
Responsibilities
  • Design test plans and test procedures to validate and verify spacecraft software and hardware, including rocket engines, inertial measurement units, star trackers, radar systems, sun sensors, thermal controllers, lidar, and guidance, navigation and control algorithms designed to autonomously navigate a spacecraft to the moon and land on it
  • Develop software testing infrastructure and tests within it that facilitate easily verifying that spacecraft systems function the same across platforms with varying combinations of simulators and actual spacecraft hardware
  • Improve the capabilities of software testing infrastructure to support both developer and automated testing needs, enabling tighter integration between developers and testers
  • Execute test procedures manually in cases where multi-million dollar spacecraft hardware is involved, and report regressions. Ideally develop the automated system so that manual testing follows automated testing closely
  • Expand tests that run autonomously on a nightly basis against a continuous integration pipeline across different hardware platforms, for greater test coverage across more systems
  • Write bug tickets when software issues are incurred as part of our verification process
  • Develop automatic reporting tools and mechanisms to improve understanding of how failed and passed tests map to subsystem-level requirements
  • Benchmark and analyze spacecraft system performance across all flight modes
  • Help identify and resolve anomalous software behavior
  • Work with a small team of developers, engineers and technicians to proactively solve problems found through testing the spacecraft software system
  • Manage and schedule test regressions and test resources
  • Manage test software repositories for multiple projects
  • Perform acceptance tests and trace tested features back to requirements
  • Collect, analyze and present test metrics
Loading...