Software Integrator
Role details
Job location
Tech stack
Job description
The Software Integrator role is critical in ensuring the seamless integration, functionality, and performance of software modules across both host machines (native on PC) and hardware platforms. Positioned at the lower part of the V-cycle, this role bridges the gap between software development and system validation, ensuring high-quality deliverables.
This role is ideal for individuals who thrive in dynamic environments, enjoy solving complex integration challenges, and are passionate about delivering high-quality software solutions.
Key Responsibilities
-
Software Integration & Validation
-
Ensure proper functioning and cohesion of software modules on host machines and hardware platforms, adhering to requirements documentation and functional interfaces ([SwRS/SwID]).
-
Verify the operational readiness of software deliveries, ensuring effective communication between functionalities.
-
Evaluate overall software maturity before official configuration and release.
-
Platform Expertise
-
Develop a deep understanding of the platform, including hardware, software, and external peripherals.
-
Master platform configuration and peripheral setup, including the preparation of parameter files.
-
Participate in platform integrations with external peripherals.
-
Communicate with the platform stakeholders (MooN), particularly regarding integration, as well as issue reporting and tracking tickets.
-
Release Management
-
Produce target executables for design and official releases, including release notes, production manuals, user manuals, and configuration documentation.
-
Support & Collaboration
-
Assist software developers during designer tests on host/target platforms and analyze validation and verification feedback.
-
Manage the inventory of platforms available for software developers.
-
Collaborate with design teams to execute functional, endurance, and cybersecurity tests.
-
Performance Measurement & Automation
-
Implement injection or measurement points at function interfaces based on documentation.
-
Automate and produce performance measurements for:
-
Embedded functionalities (e.g., reaction times).
-
Hardware resources (e.g., memory usage, CPU utilization).
-
Critically analyze performance metrics to identify areas for improvement.
-
Software Maintenance
-
Merge developed software functionalities or support developers in this task.
-
Implement minor software corrections for integrated functions, as needed.
Interfaces
-
Collaborate with:
-
Software Developers
-
Systems Engineers, Validators, Safety & Cybersecurity Teams
-
Parameterization Teams
-
Tools & Simulators Teams
-
Platform Vendors
Requirements
Education: Master degree, + Configuration Management: GitLab
- Scripting: Python, Lua, Bash (for automated test creation and maintenance), Make, Makefiles
- Programming Languages: C, C++, ADA (depending on the project)
- Virtualization: VirtualBox, Docker
- Operating Systems: Linux
- Optional:
- Communication Protocols: Ethernet
- Databases: SQL (optional)
- Test Frameworks: AUnit
Behavioral Skills
- Proficiency English. (French is an asset)
- Strong organizational skills and multitasking ability.
- Excellent communication skills to collaborate effectively with internal and external teams.
- Ability to build and maintain a network of knowledgeable colleagues.
- Analytical mindset with the ability to step back and assess the overall product.
- Autonomous and independent, with a proactive approach to problem-solving.