Taking software requirements for a complete subsystem (e.g. motor driver or communication system), and designing and building software to meet those requirements
Writing documentation covering the architecture, design, APIs, protocols, and implementation.
Build unit tests, integration tests, subsystem tests, and full-system tests. This will include writing system and subsystem test scripts. It will also include writing and executing manual testing plans.
Mentoring members of the team, sharing your knowledge and experience.
Peer review of design and code in line with Agile PR practices.
Requirements & Skills:
Developing in C/C++ for embedded Real Time Operating Systems (RTOS);
Experience with hardware level communication protocols (e.g. I2C, UART or RS-485/422);
Ability to understand electronics schematics and device datasheets.
Experience with Slack, Jira, and Google Workspace as productivity tools.
Demonstrable experience working across the full software lifetime development cycle.
Working knowledge of the space industry and European space standards.
Knowledge of Agile and Waterfall working practices.
Experience with UML.
Use of Python 3 for test scripts and data analysis.