We are looking for a hands-on Software Engineer with strong experience in hardware/software integration and system-level testing to design and operate a Hardware-in-the-Loop (HIL) integration and test facility for an advanced optical space payload.
This is not a pure software role — you will work directly with real, flight-like hardware in a lab environment, building tools and infrastructure to validate system behavior, performance, and reliability.
🚀 Your Role
You will be at the heart of payload integration, developing software that interacts with real hardware to enable end-to-end system validation.
Design and develop software for a HW/SW integration test facility (HIL environment)
Build tools in Python (primary) and C/C++ (secondary) to control and monitor hardware
Develop and maintain telemetry/telecommand (TM/TC) handling and validation tools
Create automated test frameworks for integration, regression, and release validation
Interface with real hardware: sensors, subsystems, and payload components
Analyze and monitor CAN bus and other hardware communication protocols
Develop data acquisition, measurement, and visualization tools for high-speed data streams
Support firmware and FPGA validation (e.g., image updates, functional checks)
Perform debugging and troubleshooting in a lab environment (hardware-in-the-loop)
Contribute to test bench setup, system architecture, and integration strategy
Participate in failure injection and recovery testing
Produce clear technical documentation for tools and systems
Profile / Requirements :
🧠 What We're Looking For
We are specifically looking for engineers who are comfortable working close to hardware, not just writing software.
Must-have experience
5–7 years of experience in:
Embedded systems, system integration, or hardware/software testing
Strong proficiency in Python (automation, tooling, scripting)
Experience working in hardware-in-the-loop (HIL) or lab environments
Solid understanding of hardware communication protocols:
CAN, I2C, SPI, UART, Ethernet (TCP/UDP)
Strong debugging and problem-solving skills across software and hardware boundaries
Experience with system-level testing, not just unit/software testing
⭐ Nice to Have
Experience in space, aerospace, automotive, robotics, or defense systems
Familiarity with CAN tools (e.g., Vector) and CANOpen
Experience with C++ (e.g., for performance tools or GUIs)
Experience with GUI frameworks (Qt, wxWidgets) or dashboards
Knowledge of data visualization and time-synchronized data analysis
Experience validating firmware or FPGA-based systems
Familiarity with Linux environments and Git workflows
Understanding of signal processing or control systems
Exposure to Go is a plus