Elca informatique SA
Pully
Il y a 12 heures
Stage : Tester les migrations de données avec des données synthétiques : approche alimentée par l'IA
- 02 mai 2026
- 100%
- Pully
Résumé de l'emploi
Rejoignez notre équipe pour un stage passionnant en migration de données. Vous aurez l'opportunité de travailler dans un environnement dynamique et collaboratif.
Tâches
- Concevoir un système de génération de données de test réalistes.
- Implémenter une preuve de concept pour tester des scripts de migration.
- Développer une méthodologie d'évaluation pour mesurer l'efficacité.
Compétences
- Expérience en Python, SQL et compréhension des bases de données relationnelles.
- Compétences en anonymisation et sécurité des données.
- Capacité à résoudre des problèmes avec des exigences ambiguës.
Est-ce utile ?
À propos de cette offre
Description
Les migrations de plateformes de données sont courantes dans les environnements d'entreprise, passant de systèmes hérités à une infrastructure moderne tout en préservant la logique métier. Le défi technique ne se limite pas à la traduction syntaxique ; il s'agit de validation. Lorsque les développeurs migrent des scripts SQL ou des pipelines de données entre plateformes, ils font face à des environnements d'exécution différents, des permissions d'accès aux données modifiées, et aucune méthode sûre pour tester avec des données de production.
Ce stage aborde la génération de données synthétiques pour le test des scripts de migration. Vous concevrez et mettrez en œuvre un système qui génère des jeux de données de test réalistes reflétant la structure et le comportement de la production sans exposer d'informations sensibles. Il existe différentes approches, cela peut être un petit jeu de données vivant dans un dépôt git, ou un entrepôt de données synthétiques complet. Cependant, les données doivent être suffisamment réalistes pour détecter de vrais bugs.
Le défi va au-delà de la simple simulation de données. Vous devrez décider s'il faut générer à partir de données réelles (risques d'anonymisation), uniquement à partir de l'analyse des requêtes (nécessite une bonne documentation), ou des approches hybrides. Les valeurs catégoriques doivent-elles correspondre exactement à la production ou peut-on les substituer et adapter les scripts ? Peut-on étendre les tests unitaires aux tests de bout en bout, et quelles seraient les propriétés requises du jeu de données ?
Une partie du travail consiste à établir une méthodologie d'évaluation — potentiellement en collectant un ensemble de référence de scripts de migration et leurs comportements attendus pour mesurer l'efficacité des différentes approches de données synthétiques à détecter de vrais problèmes. Il y a un potentiel d'exploration d'architectures multi-agents où des agents spécialisés gèrent différents aspects : analyse de schéma, extraction de contraintes, génération de données, vérification d'anonymisation, et validation des tests. Il s'agit de recherche appliquée avec un impact immédiat en production.
Objectifs
- Concevoir une stratégie de test des scripts de migration qui équilibre réalisme, anonymisation et contraintes pratiques
- Implémenter un système de preuve de concept qui génère des jeux de données de test à partir de la documentation du schéma, des requêtes existantes, ou de données de production (échantillonnées avec précaution)
- Définir des stratégies de test : tests unitaires vs tests de bout en bout, tailles minimales viables des données, etc.
- Développer une méthodologie d'évaluation pour mesurer l'efficacité des différentes approches de génération de données synthétiques
- Explorer des architectures multi-agents pour décomposer la chaîne de génération en composants spécialisés (analyse de schéma, satisfaction des contraintes, validation)
Notre offre
- Un environnement de travail dynamique et collaboratif avec une équipe multiculturelle et internationale très motivée
- La chance de faire une différence dans la vie des gens en construisant des solutions innovantes
- Différents événements internes de codage (Hackathon, Brownbags), consultez notre blog technique
- After-Works mensuels organisés par site
Compétences requises
- Solide programmation Python : traitement des données, modèles de test, intégration CI/CD
- Compréhension des bases de données relationnelles, SQL et concepts de modélisation des données
- Expérience avec les LLMs et systèmes agentiques : prompting, utilisation d'outils, orchestration multi-agents
- Familiarité avec la sécurité des données et les concepts d'anonymisation des données
- Esprit de résolution de problèmes : à l'aise avec des exigences ambiguës et capable de faire des compromis techniques justifiés
- Compétences claires en rédaction technique et documentation