Our client is recruiting an experienced and motivated Software Engineer to join their flight software team.
- Development and architectural design activities for the flight software on satellites:
- Derive and maintain software requirements, define software solutions and system architectures.
- Define ICDs, development and verification plans.
- Design, develop, and validate spacecraft flight software, ground software, and simulation software.
- Coordinate with other teams at sub-system and system level to identify software needs and solutions.
- Support definition and generation of ConOps.
- Perform Flight Software verification, validation and integration.
- Participate in Mission System Test and Simulation campaigns.
- Support knowledge transfer from teams globally and provide technical review inputs to projects across the organisation.
- Bachelor or master’s degree in computer science, software engineering or relevant engineering / science discipline.
- 3+ years of commercial experience in flight software development for satellites.
- Experience with embedded systems programming (C/C++).
- Knowledge of software development methodologies & embedded software engineering.
- Experience in using and modifying Board Support Packages.
- Familiarity with UML and SysML.
- Familiarity with commonly used protocols and standards for spacecraft communications, such as CCSDS, CAN, Spacewire.
- Experience of implementing real-time systems and software solutions on spacecraft missions.
- Experience in developing and implementing test plans for spacecraft.
- Proactive and self-managing, able to plan and effectively lead areas of responsibility whilst contributing collaboratively within a close-knit team.
- Familiarity with Agile / Scrum software development practices.
- Experience of all stages of mission design lifecycle from initial concept to design, test, and operations.
- Knowledge of cFE and cFS flight software.
- Knowledge of ground segment architectures.
- Basic Linux system administration, shell scripts, make, etc.
- Development on Linux systems.
- Knowledge of scripting languages (e.g. Python, Matlab, bash).
- Knowledge of assembler for microcontrollers.
Please apply NOW for more information!