AAUT-26-ST-CDLE-1301 - Stage : Concepteur développeur logiciel embarqué H/F - ACTIA
CDI
ACTIA Automotive est une entreprise du groupe ACTIA, ETI Française spécialisée en systèmes électroniques embarqués, dont la mission est de concevoir, de fabriquer et de mettre en œuvre une électronique orientée services pour une mobilité durable afin de gérer les systèmes avec des normes de qualité, de sécurité et de sûreté garanties. Votre environnement : L'industrie automobile et le secteur des systèmes embarqués s’intéressent de près au langage Rust, réputé pour sa gestion sécurisée de la mémoire sans "garbage collector". Au sein du département Logiciels Embarqués et de notre équipe Temps réel, votre rôle sera d'évaluer la faisabilité et les performances de Rust face au C traditionnel sur nos calculateurs embarqués (ECU). Vos missions : Votre mission consistera à porter un sous-ensemble de notre plateforme logicielle en Rust, à l'intégrer avec le code C existant et à mesurer rigoureusement son comportement temps réel, son empreinte mémoire et sa sa réactivité face aux contraintes de l'embarqué automobile. Le stage s'articulera autour de 6 grandes étapes : Découverte & Outillage : Prise en main de l'architecture logicielle C et montée en compétences sur l'écosystème Rust embarqué (no_std, embedded-hal, RTIC, Embassy, outils de mise au point). Vous analyserez la maturité des chaînes de compilation et les aspects de qualification automobile (Ferrocene, normes de sécurité). Intégration C/Rust : Définition de la stratégie d'interopérabilité (interfaçage FFI, bindings, scripts d'édition de liens) et intégration du build Rust dans notre chaîne existante. Vous porterez les premiers modules obligatoires (startup, pilotes GPIO/timer/ADC, machine d'états) en garantissant la compatibilité avec le C. Benchmark d'ordonnancement : Comparaison des modèles d'exécution en Rust (RTIC, exécuteur asynchrone Embassy, tâche RTOS ou bare-metal) face à l'ordonnanceur C. Vous mesurerez la latence d'interruption, le gigotage (jitter) et le temps de changement de contexte à l'aide d'instruments de mesure physiques. Développement du package E/S temps réel : Implémentation d'un module d'E/S en Rust gérant des signaux réels (entrées numériques/analogiques, sorties PWM, ponts en H, diagnostics de court-circuit). Vous comparerez l'empreinte mémoire (RAM/Flash) et la charge CPU avec l'équivalent en C. Analyse d'impact & Recommandations : Identification des verrous techniques (sûreté de fonctionnement ISO 26262, politiques d'usage d'outils, processus CI/CD, courbe d'apprentissage) et proposition d'une feuille de route pour l'adoption industrielle de Rust. Documentation & Restitution : Rédaction des rapports techniques, présentation des résultats de mesure et démonstration fonctionnelle du banc d'essai devant l'équipe d'architecture logicielle.