The main responsibility of the Senior Core Software Engineer is to act as a subject matter expert in NASA core flight system (cFS) services and application development for mission-critical space robotics. They will lead cFS development efforts and mentor engineers on cFS best practices, ensuring the system meets stringent real-time, safety, and reliability requirements for crewed and autonomous space operations.
Key Responsibilities:
- Design, develop, and maintain embedded and flight software for real-time systems
- Implement software on RTOS-based platforms (e.g., VxWorks, RTEMS, or similar)
- Support development of flight software applications, including command/telemetry handling and system control logic
- Develop and integrate device drivers and hardware abstraction layers
- Collaborate with hardware and systems engineers to integrate software with embedded platforms
- Assist with system integration, testing, and validation, including simulation and hardware-in-the-loop environments
- Debug and troubleshoot issues related to performance, timing, and system interaction
- Contribute to documentation, including design descriptions and test procedures
Required Qualifications:
- Bachelor's degree in computer or electrical engineering or related field
- 3+ years in embedded software or avionics systems for space or mission-critical robotics applications
- Experience with RTOS-based systems (e.g., VxWorks, FreeRTOS, RTEMS, or similar)
- Understanding of real-time systems concepts (task scheduling, interrupts, memory constraints)
- Experience with
software integration and testing on hardware platforms
- Proficiency in C for embedded systems
- Experience with flight software frameworks such as NASA cFS or similar architectures
- Familiarity with spacecraft data handling, telemetry/command processing, and
networking
- Experience with robotics platforms for planetary exploration, surface mobility, or space station operations
- Self-motivated, focused, and driven to meet critical deadlines
- Excellent organization and time management skills
- Excellent written and oral communication skills
Preferred Qualifications:
- Experience with device driver development or board support packages (BSPs)
- Experience working with simulation tools or hardware-in-the-loop testing
- Knowledge of fault-tolerant or safety-critical software design principles
- Experience with GNC software integration in robotic or spacecraft systems
- Prior work with crewed vehicle avionics architecture or planetary robotics
- Experience mentoring junior engineers and task planning