What you'll do
- Design, develop, and test applications for real-time, redundant, and critical communications satellite systems.
- Understand and analyze system requirements as input to the SW development.
- Define the software architecture in coordination with other technical subject matter experts, especially HW engineers.
- Evaluate, identify, and develop or lead the development of the software solution.
- Collaborate with Product Managers, Software Engineers and project partners to deliver SW products with quality, on time and in line with a defined scope.
- Deliver maintainable, robust, and testable code.
- Implement high-efficiency data transfer between FPGA fabric, software layers, networking, and storage peripherals.
- Adapt near real-time algorithms to embedded platforms.
- Support the production of SW documentation as needed.
- Share knowledge and collaborate with other developers and engineers across the business.
- Assist in the planning, tracking, and scheduling of software deliverables.
- Supervise subcontractors and ensure the quality of the results.
What you'll need
- BSc Degree or equivalent experience in Computer Science, Computer Engineering, or related field.
- Experience with embedded C/C++ and scripting language (bash, Python).
- Experience with reliable software development is a plus (Rust).
- Experience with Linux operating systems including real-time.
- Experience with space-qualifiable software is a plus.
- Proficient with software development tools such as git, JIRA, vscode, etc.
What will help you on the job
- Experience with SPI, UART, I2C, Ethernet, SpaceWire, Terminal Controller.
- Ability to work on projects of diverse scope.
- Experience working in Agile development environments (Scrum, Kanban, etc.)
- Ability to travel up to 10%.
