AL
Job Description
- Collaborate with the Software Architect to define and elaborate software specifications and architecture.
- Lead design and development of software modules, including detailed design, coding, and setting up the development toolchain.
- Prepare and execute thorough software module tests and verifications ('Designer' tests) before formal validation by V&V teams, according to Safety Integrity Level (SIL) requirements.
- Manage software work products under configuration management according to the product's Configuration Management Plan.
- Support software-to-software (Sw/Sw) and hardware-to-software (Hw/Sw) integration alongside hardware designers.
- Sustain and maintain software products throughout their lifecycle.
- Keep abreast of technological advancements through continuous techno watch activities.
- Contribute to TIS standardization by reusing existing solutions or implementing reusable software components.
- Maintain close collaboration with software architects, hardware designers, RAMS, and V&V departments throughout the software design cycle.
- Apply organizational processes and standards consistently.
- Drive continuous improvement initiatives based on Return on Experience (RoE) and process optimization.
Behavioral Competencies
- Excellent communication skills with the ability to guide, influence, and convince stakeholders in a matrix organization.
- Proven technical leadership with a track record of managing multiple software projects towards successful delivery.
- Innovative mindset, promoting creation of reference libraries, reusable codes, and model-based development.
- Effective team player; prior experience working with European customers is a plus but not mandatory.
Technical Competencies & Experience
- Experience: 12+ years in embedded product development and architectural design.
- Strong skills in design evaluation and architectural decision-making.
- Proven ability to lead and mentor software development teams.
- Excellent problem-solving skills, particularly in identifying and addressing technical challenges.
- Proficient programming skills in Python, C, Linux, and Object-Oriented Analysis and Design (OOAD).
- Solid knowledge of networking and cybersecurity concepts.
- Hands-on experience with communication protocols including Ethernet, serial, and wireless.
- Familiarity with network analysis tools like Wireshark or equivalents.
- Exposure to version control systems such as GIT.
- Understanding of Continuous Integration / Continuous Deployment (CI/CD) pipelines.
- Experience deploying and testing applications within containerized environments.
Educational Qualifications
- Bachelor's degree in Engineering (Information Technology, Computer Science, Electronics & Communication, Electrical & Electronics, or equivalent).
Technical Skills
- Programming Languages: C, C++, Python, scripting languages, OOAD
- Multi-core and multi-threading programming concepts
- Protocols: TCP/IP, UDP
- Standards: CENELEC SIL4 (Safety Integrity Level 4), DO178A/B (aerospace software safety standards)