CFS SOFTWARE DEVELOPER

MCSG TechnologiesGreenbelt, MD
$90,000 - $120,000Hybrid

About The Position

The cFS Software Developer (Mid-Level) will support the NASA Goddard Space Flight Center (GSFC) Flight Software Systems Branch on the Early Career Initiative (ECI) Lunar Precision Clock Project. The ECI is a competitive NASA research and development program that advances innovative technologies while developing the next generation of NASA engineers. This project supports NASA's Artemis Program and future lunar exploration by developing a precision clock instrument capable of accurately measuring and maintaining time on the lunar surface. The technology addresses critical positioning, navigation, communications, and autonomous operations requirements while contributing to the establishment of a future Coordinated Lunar Time (LTC) standard. The Software Developer will support the development, integration, testing, and sustainment of reusable NASA core Flight System (cFS) applications, software libraries, and interfaces. Working under the guidance of senior engineers, the successful candidate will participate in software requirements analysis, software design, coding, testing, integration, and documentation supporting embedded flight software systems. The position will collaborate with software, systems, hardware, and algorithm engineers to integrate advanced timing algorithms, develop OpenC3 COSMOS command and telemetry capabilities, support embedded hardware integration on Xilinx PicoZed platforms, and participate in laboratory demonstrations and hardware-in-the-loop testing. Location: Goddard Space Flight Center (GSFC), Greenbelt, MD. This position is a hybrid role requiring on-site attendance every Wednesday, with additional on-site support as required.

Requirements

  • Experience developing software throughout the software development lifecycle.
  • Experience programming in C, C++, and Python.
  • Experience developing embedded software applications.
  • Familiarity with NASA core Flight System (cFS) and OSAL.
  • Experience with Linux development environments.
  • Familiarity with Real-Time Operating Systems (RTOS).
  • Experience using Git and GitLab.
  • Familiarity with Docker and OpenC3 COSMOS.
  • Experience integrating software with embedded hardware.
  • Strong analytical, debugging, and communication skills.
  • 3 years of professional software development experience developing embedded, real-time, or mission-critical software systems.
  • Experience supporting software requirements, implementation, testing, and maintenance activities.
  • Experience working within collaborative software development teams.
  • Bachelor's degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, Aerospace Engineering, or a related STEM discipline.
  • Must be a U.S. Citizen and able to pass NASA badging and onboarding requirements in accordance with applicable federal security policies.

Nice To Haves

  • Experience with Xilinx Zynq or PicoZed platforms.
  • Experience implementing Kalman Filters or GEONS estimation algorithms.
  • Familiarity with Fault Detection, Isolation, and Recovery (FDIR).
  • Familiarity with time-transfer or clock-steering algorithms.
  • Experience supporting hardware-in-the-loop testing.
  • Experience supporting NASA, DoD, aerospace, or other government software development.
  • NASA or aerospace software development experience is desirable.

Responsibilities

  • Support software systems engineering activities throughout the software development lifecycle.
  • Assist in analyzing software requirements and translating them into software designs and implementations.
  • Participate in software architecture discussions and design reviews.
  • Support maintenance and enhancement of reusable flight software components.
  • Develop, modify, test, and maintain reusable NASA core Flight System (cFS) applications, interfaces, and software libraries.
  • Implement software using C, C++, and Python in embedded real-time environments.
  • Participate in software implementation, unit testing, debugging, and integration activities.
  • Support development of reusable software components for future NASA missions.
  • Assist with integration of Kalman Filters, GEONS estimation algorithms, clock steering controllers, time-transfer algorithms, and related software into the cFS environment.
  • Support validation of algorithm performance during software integration and testing.
  • Work with systems and algorithm engineers to resolve software integration issues.
  • Develop and maintain OpenC3 COSMOS command and telemetry interfaces.
  • Support command dictionaries, telemetry displays, and scripting development.
  • Assist with software demonstrations and customer support activities.
  • Develop and execute unit, integration, and system-level software tests.
  • Support software integration on Xilinx Zynq/PicoZed embedded hardware.
  • Participate in laboratory integration activities and hardware-in-the-loop testing.
  • Troubleshoot software defects and support corrective actions.
  • Maintain software and documentation within GitLab repositories.
  • Support Git-based configuration management practices.
  • Utilize Docker-based development environments.
  • Participate in CI/CD pipeline activities.
  • Prepare software design documentation.
  • Develop Interface Control Documents (ICDs).
  • Support preparation of software test procedures.
  • Maintain documentation consistent with NASA software engineering processes.

Benefits

  • Medical, dental, vision, life insurance, short-term disability, long-term disability, 401(k) match, flexible spending accounts, EAP, parental leave, paid time off, holidays and more.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service