Stage de fin d’études en ingénierie logicielle et IA appliquée aux tests automobiles

Lucid Motors

Location
Toulouse, 31
Employment type
unknown
Posted
Posted
  • Software

About the role

About Lucid At Lucid, we are creating exceptional mobility experiences through innovation to drive the world forward. Built on Lucid’s proprietary technology and software-defined vehicle architecture, our award-winning vehicles bring our “Compromise Nothing™” approach to the global automotive market. That means refusing to choose between performance and sustainability, design and engineering, ambition and integrity. In Lucid Air and Lucid Gravity, we have designed and built vehicles that have redefined their segments, combining exceptional range, performance, design, and expansive space in a single experience. We achieve this through deep vertical integration, with design, engineering, and production happening in-house across our global offices and manufacturing facilities. Our teams come from industries around the world, united by a shared commitment to excellence. By refusing to settle, you can help redefine what’s possible and shape the future of mobility. Stage de fin d’études en ingénierie logicielle et IA appliquée aux tests automobiles Chez Lucid Motors, la qualité logicielle est essentielle pour offrir une expérience exceptionnelle à bord de véhicules de plus en plus sophistiqués et largement définis par le logiciel. En rejoignant notre équipe Software Engineering basée à Toulouse, vous intégrerez nos activités dédiées à la qualité et à l’automatisation des logiciels d’infodivertissement. Vous travaillerez sur un projet concret situé à la croisée de plusieurs domaines particulièrement recherchés : développement logiciel ; automatisation des tests ; analyse de données techniques ; débogage de systèmes complexes ; Machine Learning et intelligence artificielle générative ; systèmes embarqués et logiciels automobiles. Les plateformes modernes d’infodivertissement exécutent des milliers de tests automatisés sur différentes versions, configurations et couches logicielles. Lorsque ces tests échouent, les équipes d’ingénierie doivent rapidement comprendre ce qui s’est passé : Quelle fonction a échoué ? Quelle est la cause probable de l’échec ? S’agit-il d’un défaut du produit, d’un problème d’infrastructure ou d’une anomalie déjà connue ? Un problème similaire a-t-il déjà été identifié ? Quelle équipe ou quel composant logiciel doit être analysé ? Votre objectif sera de concevoir une solution capable d’automatiser une partie de cette analyse et de fournir aux ingénieurs des informations fiables pour accélérer l’identification des causes racines. Votre mission Vous concevrez et développerez un prototype permettant d’analyser, regrouper et catégoriser automatiquement les défaillances issues de campagnes de tests d’infodivertissement automobile . La solution exploitera les résultats de tests, les journaux d’exécution, les traces système et différentes données de diagnostic. Elle pourra également intégrer des techniques de Machine Learning et d’intelligence artificielle générative afin de suggérer des causes potentielles ou de retrouver des incidents similaires. Analyser automatiquement les résultats de tests Vous serez notamment amené à : analyser les résultats produits par des campagnes de tests automatisés ; développer des composants logiciels permettant de collecter et de traiter les résultats, journaux d’exécution, traces, rapports de crash et données de diagnostic ; détecter des schémas de défaillance récurrents ; associer les anomalies aux cas de test, composants logiciels, configurations et contextes d’exécution concernés ; distinguer les défauts potentiels du produit des problèmes liés aux tests, à l’infrastructure ou à l’environnement d’exécution. Classer et regrouper les défaillances Vous contribuerez à : développer des algorithmes capables de regrouper et de classer des défaillances similaires ; identifier les anomalies récurrentes ou dupliquées entre plusieurs campagnes de tests ; extraire des signatures pertinentes à partir des logs, messages d’erreur, événements système et stack traces ; associer une défaillance à un domaine ou à un composant logiciel potentiel ; générer un résumé clair de chaque anomalie avec les éléments de diagnostic utiles ; proposer un niveau de confiance permettant de différencier les classifications fiables des cas nécessitant une analyse humaine. Explorer l’IA appliquée à l’analyse des causes racines Vous explorerez également l’utilisation du Machine Learning et de l’intelligence artificielle générative pour : réaliser une analyse sémantique des logs et des informations de diagnostic ; comparer une nouvelle défaillance avec des incidents précédemment analysés ; suggérer des causes potentielles ou des domaines d’investigation ; retrouver des incidents historiques similaires ; évaluer l’utilisation de technologies comme les LLM, les embeddings, la recherche sémantique ou la génération augmentée par récupération, ou RAG ; mesurer la pertinence des recommandations produites en les comparant à l’analyse d’ingénieurs expérimentés. L’objectif ne sera pas de remplacer l’expertise des ingénieurs, mais de réduire les analyses répétitives et de leur fournir plus rapidement des informations utiles et structurées. Intégrer la solution aux outils d’automatisation Vous participerez à l’intégration du prototype dans un environnement existant de tests automatisés et de CI/CD. Vous pourrez notamment : déclencher automatiquement l’analyse à la fin d’une campagne de tests ; produire des rapports structurés présentant les catégories, groupes de défaillances et éléments de diagnostic ; définir des indicateurs permettant de mesurer la précision et l’efficacité du triage automatisé ; documenter l’architecture, les choix techniques et les limites de la solution ; créer un démonstrateur utilisable dans les activités quotidiennes de validation logicielle. Le résultat attendu À l’issue du stage, vous aurez développé un démonstrateur fonctionnel reposant sur un processus comparable au suivant : Exécution automatisée des tests → Détection des échecs → Collecte des logs et diagnostics → Extraction des signatures → Regroupement et classification → Analyse assistée par IA → Rapport de triage → Investigation par les ingénieurs Le démonstrateur devra permettre d’évaluer comment l’automatisation et l’intelligence artificielle peuvent : réduire le temps consacré à l’analyse des défaillances ; identifier plus rapidement les problèmes récurrents ; repérer les anomalies dupliquées ; orienter les investigations vers les composants les plus probablement concernés ; raccourcir la boucle de retour entre les tests et le développement logiciel ; améliorer la qualité et l’efficacité des activités de validation. Le profil que nous recherchons Vous préparez un diplôme de niveau Bac+5 , en dernière année d’école d’ingénieurs ou en Master 2, avec une spécialisation en : informatique ; génie logiciel ; systèmes embarqués ; intelligence artificielle ; Data Science ; ou dans un domaine technique connexe. Vous disposez idéalement des compétences suivantes : de bonnes compétences en programmation en Python ; une bonne connaissance des environnements Linux ; un intérêt marqué pour les tests logiciels, le débogage et l’analyse de systèmes complexes ; une compréhension des principes de traitement et d’analyse de données ; une première connaissance de Git et des pipelines CI/CD ; un esprit analytique et une approche structurée de la résolution de problèmes ; de la curiosité, de l’autonomie et l’envie d’expérimenter. Les connaissances suivantes constitueront des atouts, sans être toutes indispensables : C ou C++ ; bibliothèques Python d’analyse de données ; Machine Learning et classification de données ; LLM, embeddings, recherche sémantique ou RAG ; automatisation de tests ; analyse de logs et de stack traces ; Android ou Android Automotive ; systèmes embarqués ; architecture logicielle automobile. Nous ne recherchons pas une personne maîtrisant déjà toutes ces technologies. Nous accordons une grande importance à votre capacité d’apprentissage, à votre curiosité technique et à votre envie de résoudre des problèmes complexes. Langues Un niveau d’anglais courant, à l’oral comme à l’écrit, est indispensable pour ce stage. Vous utiliserez régulièrement l’anglais afin de : collaborer avec nos équipes d’ingénierie basées aux États-Unis ; participer à des réunions techniques internationales ; comprendre et produire de la documentation logicielle ; présenter vos résultats et recommandations à différents interlocuteurs. Ce

More at Lucid Motors

Listed via greenhouse. JobForge is not the employer and does not process applications; apply on the company's own site.