🎯 Responsabilités
Au sein d’une équipe multidisciplinaire dédiée au développement de logiciels embarqués critiques, vous serez impliqué dans différentes phases du cycle de vie logiciel :
Contribution aux activités du projet
Participer à la planification des objectifs, à l’organisation des tâches et à l’identification des risques techniques.
Apporter un support au coordinateur de projet et au référent technique.
Développement & Conception
Concevoir le design détaillé des composants logiciels et produire les spécifications de classes C++.
Développer des modèles comportementaux via des outils de model-based design (SCADE Suite / SCADE Display).
Implémenter des fonctionnalités en C++ conformément au design établi et aux exigences de bas niveau.
Rédiger les spécifications de test et réaliser les tests associés.
Support technique transversal
Contribuer à la définition des besoins et à la rédaction d’exigences logicielles de haut niveau.
Participer à la conception d’API et à l’architecture logicielle globale.
Comprendre l’intégration de vos modules dans le système complet.
Qualité, collaboration et amélioration continue
Suivre les objectifs fixés, documenter les résultats et rapporter les indicateurs d’avancement.
Respecter les standards, normes et processus internes.
Contribuer activement à l’amélioration continue de l’équipe.
Travailler de manière collaborative et instaurer un climat de confiance au sein du groupe.
🎓 Qualifications
Master ou bachelier en informatique, électronique ou discipline équivalente.
Expérience confirmée en développement de logiciels embarqués critiques (safety-critical).
Excellente maîtrise du C/C++ et environnement Linux.
Connaissance des méthodes de développement en cycle en V, gestion des exigences, gestion des problèmes et du changement.
Très bonne maîtrise de l’anglais (niveau B2 minimum).
🛠 Compétences techniques recherchées
Minimum 4 années d’expérience en développement logiciel embarqué ou temps réel.
Expertise en C++ (ou excellente maîtrise du C et d’un langage orienté objet).
Solide expérience des environnements Linux-based : bash, git, make/cmake, toolchains, VM, gestion mémoire, I/O, scheduling, etc.
Connaissance de la programmation événementielle.
Compréhension des protocoles et couches réseau (Ethernet, TCP/IP/UDP, RTP, IPsec, DDS, etc.).
Compétences en rédaction et gestion d’exigences.
Intérêt pour la conception d’architecture logicielle.
Atouts appréciés
Connaissance d’outils de model-based design (SCADE, Simulink).
Connaissances en développement sur microcontrôleurs.
Maîtrise d’un langage de script (Python, Perl, Tcl…).
Expérience avec des outils de gestion de problèmes/changements (Redmine, Mantis, Bugzilla…).
Familiarité avec : Qt, Yocto, OpenGL (un plus mais pas obligatoire).
Plage de rémunération et package de compensation : A négocier