The role
03As part of the specialized resource pool, you will provide flight software and software systems engineering expertise across multiple ETH Zurich space projects. You will contribute from early mission formulation and software architecture through implementation, integration, verification, launch preparation, and operations.
01Take technical ownership of assigned flight software developments and act as the primary software interface to systems engineering, avionics, payload teams, mission operations, and external platform providers.
02Translate mission concept of operations into spacecraft behaviors and define flight software architectures and functional decompositions.
03Allocate hardware-software functions, and define associated software requirements and interfaces.
04Translate mission and system requirements into software specifications, interface control documents, operational concepts, and verification plans.
05Develop embedded flight software in C and C++ and supporting tools and test scripts (e.g., Python), including device drivers, telemetry and telecommand handling, onboard data management, application software, and fault-management functions.
06Integrate flight software with onboard computers, sensors, actuators, payload electronics, communication interfaces, ground systems, and externally supplied spacecraft platforms.
07Set up and maintain flat-sat flight software testbeds.
08Perform software-related trade studies covering processing capacity, memory, timing, bandwidth, autonomy, reliability, and fault tolerance.
09Develop real-time, event-driven, autonomous, synchronization, and GNC-related software functions where required.
10Establish and maintain software baselines, configuration control, versioning, build automation, continuous integration, release management, and requirements traceability.
11Develop and execute flight software unit tests, conduct integration, software-in-the-loop, processor-in-the-loop, hardware-in-the-loop, and system-level verification and validation activities.
12Support software risk management, anomaly investigation, non-conformance handling, and technical review boards.
13Support spacecraft and payload assembly, integration, and test activities, commissioning, in-flight software updates, telemetry analysis, and mission operations.
14Contribute to technical reviews, early-stage mission concepts, proposals, and software feasibility studies.
15Provide technical guidance to junior engineers, researchers, and student teams.