Description de la mission
La fiabilité de nos logiciels est essentielle en raison de la nature des systèmes qu'ils contrôlent. Nous travaillons habituellement avec les langages C et C++, mais ils sont intrinsèquement porteur de problèmes de programmation (pointeurs erratiques, aliasing des données, ). Ces problèmes, pour être limités, nécessitent des développeurs hautement compétents et des méthodologies de travail rigoureuses. En réponse, le langage Rust a été créé.
L'objectif du stage est d'évaluer le langage Rust pour nos besoins. L'approche retenue est de réimplémenter un composant critique de nos logiciels en Rust, de valider cette réécriture et enfin de procéder à une analyse quantitative et qualitative du logiciel réécrit par rapport à celui existant écrit en C++.
La mission se décline selon les objectifs suivants :
Prendre connaissance du routeur de messagerie de notre bus logiciel artillerie
De le réécrire en Rust
De le valider
De comparer les résultats pour vérifier l'iso fonctionnalité des deux versions
De comparer les performances relatives des deux versions
D'évaluer les autres paramètres : vitesse de programmation, maintenabilité, intégrabilité, intérêt pour les différents interlocuteurs du développement logiciel (Développeurs, architectes, SdF, )
De fournir un catalogue de ressources pour le développement en Rust (guide de bonnes pratiques, librairies, outils d'analyse statique, outils de test, )
D'en tirer des conclusions objectives et de les présenter
Profil / Compétences requises
Le stagiaire, de niveau Bac dans le domaine du développement des logiciels, devra avoir une connaissance élémentaire des langages C++ et Rust. Une bonne capacité de dialogue est attendue pour échanger avec l'architecte logiciel en charge de l'évaluation ainsi qu'avec l'ensemble de l'équipe et des interlocuteurs externes.
Type de contrat
Stage
Durée du contrat
6 mois
En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.