IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

L'IA divise par deux le temps de migration de code chez Google
Les Googlers soulignent toutefois que les LLM doivent être considérés comme complémentaires des techniques de migration traditionnelles

Le , par Stéphane le calme

245PARTAGES

6  0 
L'IA divise par deux le temps de migration de code chez Google, ouvrant la voie à une nouvelle ère technologique.
Toutefois, les Googlers soulignent que les LLM doivent être considérés comme complémentaires des techniques de migration traditionnelles

L’intelligence artificielle (IA) continue de transformer les pratiques informatiques à un rythme effréné, et Google, un pionnier de l’innovation technologique, en est un parfait exemple. Récemment, la multinationale a annoncé avoir drastiquement réduit le temps nécessaire pour migrer du code grâce à l’utilisation de systèmes d’IA avancés. Ce développement représente une étape majeure dans la gestion des projets logiciels complexes et soulève des questions fondamentales sur l’avenir du développement informatique.

Contexte

Google a introduit l’utilisation d’une IA basée sur des modèles avancés de traitement du langage naturel (NLP) et d’apprentissage machine. Ces outils sont capables d’analyser, de comprendre et de convertir des bases de code. L’intégration de ces outils a permis à Google de diviser par deux le temps nécessaire à certaines migrations de code. Par exemple, un projet nécessitant traditionnellement un an de travail peut désormais être achevé en six mois, voire moins. Cela n’affecte pas seulement la vitesse, mais également la qualité : les erreurs humaines sont réduites, et les développeurs peuvent se concentrer sur des tâches plus stratégiques.

L'importance de l'IA pour Google

Lors de l'annonce des résultats financiers du troisième trimestre 2024, Sundar Pichai, PDG de Google, a dévoilé une information marquante : plus de 25 % du nouveau code produit par Google est désormais généré par l'intelligence artificielle (IA).

Pichai a déclaré que l'utilisation de l'IA pour le codage permettait de « stimuler la productivité et l'efficacité » au sein de Google. Une fois le code généré, il est ensuite vérifié et revu par les employés, a-t-il ajouté. « Cela permet à nos ingénieurs d'en faire plus et d'aller plus vite », a déclaré Pichai. « Je suis enthousiasmé par nos progrès et les opportunités qui s'offrent à nous, et nous continuons à nous concentrer sur la création de produits de qualité. »

Il s'agit d'une étape importante qui montre à quel point l'IA est importante pour l'entreprise.

Les défis de la migration de code

La migration de code, essentielle dans le cadre de l’évolution technologique des entreprises, consiste à adapter et transférer des bases de code d’une infrastructure ou d’un langage vers un autre. Cela peut être dû à divers facteurs tels que des mises à jour technologiques, des changements dans les environnements de développement, ou encore le besoin de moderniser des applications vieillissantes.

Ce processus est souvent long, coûteux et sujet à des erreurs, impliquant des centaines de développeurs qui doivent comprendre, traduire et tester des milliers de lignes de code. La complexité augmente lorsque des systèmes hérités doivent être intégrés avec des solutions modernes. Des mois, voire des années, peuvent être nécessaires pour compléter une migration.

Comment Google utilise-t-il l'IA pour les migrations de code interne ?

Google, qui vend des logiciels d'intelligence artificielle avec autant d'enthousiasme que Microsoft, rapporte avoir testé sa propre concoction d'intelligence artificielle et avoir obtenu des résultats prometteurs. Dans un article, les informaticiens de Google Stoyan Nikolov, Daniele Codecasa, Anna Sjovall, Maxim Tabachnyk, Satish Chandra, Siddharth Taneja et Celal Ziftci répondent à la question posée par le titre de l'article : « Comment Google utilise-t-il l'IA pour les migrations de code interne ? » Les esprits curieux veulent savoir, en particulier après qu'Amazon a affirmé avoir utilisé son assistant de codage Q Developer AI pour économiser des centaines de millions en migrant les applications Java 8 vers Java 17.

Les ingénieurs logiciels de la Chocolate Factory susmentionnés tentent de satisfaire cette curiosité en racontant comment ils ont appliqué de grands modèles de langage (LLM) (l'IA dans le langage courant) pour accélérer le processus de migration du code d'un environnement à l'autre.

« Nous constatons que l'utilisation de LLM peut réduire de manière significative le temps nécessaire aux migrations, ainsi que les obstacles au démarrage et à l'achèvement des programmes de migration », observent les auteurs dans leur article.

Ils se concentrent sur les outils d'IA sur mesure développés pour des domaines de produits spécifiques, tels que Google Ads, Google Search, Google Workspace et YouTube, plutôt que sur les outils d'IA génériques qui fournissent des services largement applicables tels que l'achèvement du code, l'examen du code et la réponse aux questions.

Les migrations de code de Google ont consisté à remplacer les identifiants 32 bits de la base de code de plus de 500 millions de lignes pour Google Ads par des identifiants 64 bits, à convertir son ancienne bibliothèque de test JUnit3 en JUnit4 et à remplacer la bibliothèque temporelle Joda par le package standard java.time de Java.

La migration de int32 à int64, expliquent les Googlers, n'était pas triviale car les identifiants étaient souvent définis de manière générique (int32_t en C++ ou Integer en Java) et n'étaient pas facilement consultables. Ils existaient dans des dizaines de milliers d'emplacements de code dans des milliers de fichiers. Les modifications devaient être suivies par plusieurs équipes et les changements apportés aux interfaces des classes devaient être pris en compte dans plusieurs fichiers.

« L'ensemble de l'effort, s'il était réalisé manuellement, devait nécessiter des centaines d'années d'ingénierie logicielle et une coordination transversale complexe », expliquent les auteurs.

Le temps nécessaire pour achever la migration a été réduit de 50 %

Pour leur flux de travail basé sur le LLM, les ingénieurs logiciels de Google ont mis en œuvre le processus suivant.

Un ingénieur d'Ads identifiait un identifiant nécessitant une migration en utilisant une combinaison de recherche de code, Kythe et des scripts personnalisés.

Ensuite, une boîte à outils de migration basée sur le LLM, déclenchée par une personne connaissant bien l'art, a été exécutée pour générer des changements vérifiés contenant du code qui a passé les tests unitaires. Ces modifications sont vérifiées manuellement par le même ingénieur et éventuellement corrigées.

Ensuite, les modifications de code sont envoyées à plusieurs réviseurs responsables de la partie de la base de code affectée par les modifications.

Il en est ressorti que 80 % des modifications de code figurant dans les listes de modifications étaient purement le fruit de l'IA, le reste étant constitué de suggestions d'IA rédigées ou modifiées par l'homme.

« Nous avons découvert que dans la plupart des cas, l'homme devait revenir sur au moins quelques modifications apportées par le modèle qui étaient soit incorrectes, soit inutiles », observent les auteurs. « Compte tenu de la complexité et de la nature sensible du code modifié, des efforts doivent être déployés pour que chaque modification soit appliquée avec soin aux utilisateurs ».

Sur la base de ce constat, Google a entrepris des travaux supplémentaires sur la vérification pilotée par LLM afin de réduire la nécessité d'un examen détaillé.

Même s'il est nécessaire de revérifier le travail du LLM, les auteurs estiment que le temps nécessaire pour achever la migration a été réduit de 50 %.

Avec l'aide du LLM, il n'a fallu que trois mois pour migrer 5 359 fichiers et modifier 149 000 lignes de code pour achever la transition JUnit3-JUnit4. Environ 87 % du code généré par l'IA a fini par être validé sans aucune modification.

En ce qui concerne le changement de framework temporel Joda-Java, les auteurs estiment un gain de temps de 89 % par rapport au temps de changement manuel prévu, bien qu'aucune spécification n'ait été fournie pour étayer cette affirmation.

« Les LLM offrent une opportunité significative d'assister, de moderniser et de mettre à jour de grandes bases de code », concluent les auteurs. « Ils s'accompagnent d'une grande flexibilité et, par conséquent, une variété de tâches de transformation de code peuvent être encadrées dans un flux de travail similaire et être couronnées de succès. Cette approche a le potentiel de changer radicalement la façon dont le code est maintenu dans les grandes entreprises ».


Les LLM doivent être considérés comme complémentaires des techniques de migration traditionnelles

Les Googlers soulignent également que les LLM doivent être considérés comme complémentaires des techniques de migration traditionnelles qui reposent sur les arbres syntaxiques abstraits (AST) et les recherches de type grep. Ils notent que des outils supplémentaires peuvent être nécessaires pour éviter que le processus d'examen humain ne devienne un goulot d'étranglement.

Une autre raison pour laquelle les LLM devraient être utilisés en conjonction avec d'autres outils est qu'ils peuvent être coûteux - il est donc préférable de ne pas les utiliser inutilement.

« Bien que le coût par jeton pour les prédictions ait régulièrement diminué, les migrations nécessitent souvent de toucher des milliers de fichiers et les coûts peuvent rapidement s'accumuler », notent les auteurs.

Malgré cela, il ne fait aucun doute que l'IA a profondément modifié la manière dont Google développe ses logiciels internes. Selon l'article, « la quantité de caractères dans le code qui sont complétés avec l'aide de l'IA est maintenant plus élevée que celle tapée manuellement par les développeurs ».

Implications pour l’industrie : avantages et préoccupations

Cette avancée ne se limite pas à Google. Elle pourrait remodeler l’ensemble de l’industrie technologique de plusieurs façons :
  • Réduction des coûts : Les entreprises économiseront des millions en ressources humaines et en heures de travail.
  • Démocratisation de l’innovation : Les petites entreprises auront accès à des outils leur permettant de rivaliser avec les géants de la tech en modernisant plus rapidement leurs infrastructures.
  • Amélioration continue : Grâce à l’apprentissage machine, ces outils deviendront de plus en plus performants au fil du temps, s’adaptant à des environnements de plus en plus variés.

Malgré les avantages, l’utilisation de l’IA dans la migration de code soulève des préoccupations. La dépendance à l’IA pourrait :
  • Réduire les opportunités pour les développeurs juniors d’apprendre en manipulant du code complexe.
  • Poser des questions sur la sécurité des données, notamment si des bases de code sensibles sont analysées par des modèles d’IA.
  • Accroître les risques de bogues subtils, difficiles à détecter même avec des tests automatisés.

L’avenir de la migration de code

En automatisant et en accélérant ce qui était autrefois une tâche ardue, l’IA ouvre la voie à un avenir où les équipes de développement peuvent se concentrer sur l’innovation plutôt que sur la maintenance. Cependant, il sera crucial de trouver un équilibre entre l’automatisation et la supervision humaine afin de minimiser les risques et maximiser les avantages.

Google a démontré que l’IA pouvait transformer la migration de code, un domaine longtemps perçu comme l’un des plus fastidieux du développement logiciel. Cette avancée pourrait marquer le début d’une nouvelle ère pour l’ingénierie informatique, où rapidité, précision et efficacité deviendront les maîtres mots.

Sources : How is Google using AI for internal code migrations?, Kythe

Et vous ?

Quels autres secteurs du développement logiciel pourraient bénéficier d'une automatisation similaire grâce à l'IA ?

Les outils d’IA actuels pour la migration de code sont-ils suffisamment fiables pour être utilisés dans des systèmes critiques, comme les logiciels médicaux ou bancaires ?

Comment l’IA pourrait-elle gérer des migrations impliquant des technologies très anciennes ou des langages peu documentés ?

La réduction du temps de migration pourrait-elle entraîner une diminution des emplois dans l’industrie du développement logiciel ?

L’automatisation par l’IA pourrait-elle réduire les opportunités pour les développeurs juniors d’acquérir de l’expérience sur des projets complexes ?

Avec l’essor des outils d’IA, quels nouveaux rôles ou compétences seront nécessaires pour les développeurs dans les prochaines années ?
Vous avez lu gratuitement 2 977 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de kain_tn
Expert éminent https://www.developpez.com
Le 29/05/2026 à 10:53
Citation Envoyé par d_d_v Voir le message
Les affirmations d'Eric Schmidt s'appliquent à certains types de code source, bien structurés et avec des tests unitaires. Dans mon code legacy C++ de 3 millions de lignes de code avec des fonctions de plusieurs milliers de lignes et des dizaines de paramètres, des macros dans tous les sens, sans doc, sans tests unitaires (et impossible à faire), même insérer quelques bouts de code au bon endroit, github copilot se plante lamentablement
Normal, Éric Schmidt ne fait plus rien de technique depuis des décennies. Par contre, c'est un multi-milliardaire ultralibéral, et son patrimoine a certainement tout intérêt à ce que la bulle de l'IA dure le plus longtemps possible, pour qu'il continue d'engranger des fortunes..

C'est juste un autre Bozo qui vient ajouter à la hype. Circulez, il n'y a rien à voir.
5  0 
Avatar de doriphore4545
Nouveau Candidat au Club https://www.developpez.com
Le 28/05/2026 à 16:22
Citation Envoyé par abrillant Voir le message
Je pense qu'il y a un gros risque à terme de voir le métier de développeur "à la main" effectivement tendre à disparaître. Mais la question que je me pose c'est quel est alors la plus-value d'un dév si c'est pour "prompter" et "cliquer" ? Y a plus vraiment besoin de diplôme car tout le monde peux le faire ? Donc on pourrait dire que c'est un métier qui tend à disparaître. Le coup de je vais orchestrer des agents... si c'est pour partir là dessus, l'équipe qui gère le fonctionnel peut parfaitement le faire....
le développeur n'est pas un pisseur de code
il doit comprendre le métier, comprendre le client, il peut aussi prioriser, couper si nécessaire, discuter, persuader, préparer des réunions et y participer (et oui ...)
il doit mettre en place les tests de regressions, et les pipelines associés, sans oublier la doc, et peut etre même le training des utilisateurs, etc, etc, etc
le codage c'est 10 à 20% du métier, tout au plus
4  0 
Avatar de Anselme45
Membre extrêmement actif https://www.developpez.com
Le 01/06/2026 à 20:22
Le Eric ferait bien de sortir de sa tour d'ivoire... Parce que je ne crois pas qu'il y ait beaucoup de développeurs à croire que l'IA est leur "ami"...

Un "ami", c'est quelqu'un qui vous veut du bien... Je ne crois pas que "vous orienter vers la porte de sortie" relève de "l'amitié"
3  0 
Avatar de abrillant
Membre averti https://www.developpez.com
Le 29/05/2026 à 9:27
Citation Envoyé par foetus Voir le message

  • *il doit comprendre le métier, comprendre le client, il peut aussi prioriser, couper si nécessaire, discuter, persuader* job du MOA et du Product Owner, pas du développeur
  • *préparer des réunions et y participer (et oui ...)* job du Happiness Manager, pas du développeur
  • *il doit mettre en place les tests de regressions* job du AMOA, pas du développeur. D'après 2 - 3 retours, l'IA sait très bien le faire.
  • *le training des utilisateurs* job d'1 formateur produit interne ou éventuellement de la hotline, pas du développeur
  • *les pipelines associés* ce n'est pas au développeur de donner le jeu de données réelles (et d'ailleurs est-ce qu'il peut le faire ?)
  • *sans oublier la doc* en entreprise personne ne fait la documentation ni UML. Peut-être que l'IA peut la faire.

Donc avec les outils de génération de code, oui le développeur est menacé pour son job

C'est pour cela qu'actuellement les emplois se portent plus sur du senior **expert** en IA: 1 personne qui sait gérer 1 équipe, qui sait faire le cahier des charges, qui sait piloter l'IA et peut réagir rapidement en cas de problèmes.
Oui complètement d'accord, doriphore4545 ne parle pas du métier de dév, j'ai fait 30 ans de dév, oui 30 ans.... et mon métier cela été toujours surtout de la technique quelque soit les entreprises, 95% du temps du dév et des briques à mettre en place pour résoudre des besoins métiers que l'on m'indiquait et que je n'avais pas besoin de comprendre. Par exemple, quand on me demandait de gérer des analyses de labo, je ne comprenais pas à quoi cela correspondait, on me donnait juste les seuils et les messages d'alerte à indiquer, je mettais alors tout en place pour que cela soit dispo/évolutif et adapté au cadre d'usage et déjà c'était déjà beaucoup de boulot. Mais c'était ce qui me passionnait, créer du code et tout ce qui va avec côté créativité : l'architecture/les outils connexes, gérer la maintenance, etc etc.... Je suis triste de voir l'évolution avec l'IA Tout ce qui me passionnait a disparu, prompter cela n'a rien de passionnant. Je vais me limiter à du jardinage maintenant....
2  0 
Avatar de d_d_v
Membre expérimenté https://www.developpez.com
Le 29/05/2026 à 9:47
Les affirmations d'Eric Schmidt s'appliquent à certains types de code source, bien structurés et avec des tests unitaires. Dans mon code legacy C++ de 3 millions de lignes de code avec des fonctions de plusieurs milliers de lignes et des dizaines de paramètres, des macros dans tous les sens, sans doc, sans tests unitaires (et impossible à faire), même insérer quelques bouts de code au bon endroit, github copilot se plante lamentablement
2  0 
Avatar de GLDavid
Expert confirmé https://www.developpez.com
Le 04/06/2026 à 14:11
Bonjour

Je crois que c'est une tendance chez les décideurs d'entreprises.
Avant, on voulait "monter en compétences" et c'était reconnu comme bénéfique.
Aujourd'hui, on nous explique qu'il faut laisser faire le dieu IA et contribuer à sa grandeur.
OK, l'IA peut être pratique. Mais faire tapis absolu là dessus me semble une grande erreur !
Même dans ma boîte, l'un de nos objectifs est d'utiliser les IAs maisons pour les "valoriser" (comprenez les faire apprendre car là, on a peu de données). Depuis quand utiliser une IA est elle un objectif corporate ?
On aura toujours besoin de dev à l'ancienne. Ne serait-ce que pour corriger les hallu de l'IA ou reprendre la main sur un projet qui fait fausse route.
Ce ne sera que question de temps.

@++
2  0 
Avatar de totozor
Expert confirmé https://www.developpez.com
Le 05/06/2026 à 7:45
Citation Envoyé par GLDavid Voir le message
Même dans ma boîte, l'un de nos objectifs est d'utiliser les IAs maisons pour les "valoriser" (comprenez les faire apprendre car là, on a peu de données)
On vous demande de creuser votre propre tombe... Et vous avez deux choix : le faire ou démissionner/vous faire licencier (c'est en tout cas le "contrat" que fait un pote avec son entreprise...)

Chez nous on a lancer une IA maison, on est à la 3eme version.
Celle qui commence à m'intéresser, on me demande de la tester. Mon retour : réponse partielle alors que l'info complète est disponible, hallucination critique (qui peut m'envoyer en prison si j'obéi), contre vérité.
Retour de l'équipe : Si tu poses mal les questions tu as la mauvaise réponse.
Je suis leurs instructions pour poser des "bonnes questions", conclusion : les réponses aux questions générales s'améliorent, celles aux question précises ce dégradent de façon alarmante dont hallucination qui entraine des blessures graves (amputation) voir la mort.
Retour de l'équipe : l'IA répond mal parce que tu as mal défini tes objectifs au départ (sous entendu "donnes nous les questions et on s'assurera qu'elle y réponde bien, pour les autres...") mais peux tu faire la promo de notre IA à ta direction?
Je ne suis pas sûr qu'ils veuillent que je le fasse
2  0 
Avatar de abrillant
Membre averti https://www.developpez.com
Le 28/05/2026 à 16:16
La fin du métier de dév tel que je l'ai connu... on nous promet un renouveau, je demande à voir....
1  0 
Avatar de ovh
Rédacteur https://www.developpez.com
Le 11/06/2026 à 16:24
Citation Envoyé par Psycrow Voir le message
Intense utilisateur de l'IA depuis maintenant quelques mois pour le développement Java backend et frontend, le témoignage de cette développeuse qui code à la main aussi vite et bien que l'IA me laisse rêveur ; de deux choses l'une :
  • Elle est une mutante et peut faire bouger ses doigts sur un clavier à des vitesses quantiques, 24/7, avec un taux d'attention constant et une capacité de parallélisation encore inconnue chez l'humain ;
  • Elle se compare à une IA non agentique, manuelle, non intégré à son IDE, qui requière des cliques de souris pour validation de chaque étape prise, via des modèles anciens, voir même locaux à sa machine sans GPU ; plus une touche de mauvaise foi pour faire le buzz...


Pour prendre un exemple super simple, générer une API ReST depuis un backend Java qui manipule un schema de données existant prend environs 5 min avec Kiro. Je mets ma main à couper qu'aucun humain ne peut aller plus vite, et pas de quelques minutes ni heures, mais de jours entiers. Je ne compte même pas l’écriture des tests, de la doc, de sa publication sur un web serveur, ni de son export automatique sur un page Confluence ou wiki équivalent...

L'IA aujourd'hui, malgré ses très mauvais côtés et impacts sur notre environnement, nos emplois, l'éthique, etc., surclasse déjà de très loin les meilleurs développeurs, d'un facteur de plusieurs centaines aujourd'hui et bien plus demain. Si l'on peut encore trouver des cas pour lesquels l'IA fait moins bien que l'humain, la progression vertigineuse actuelle en fera un souvenir dans un futur proche.
Certes, mais le code généré est-il propre, sécurisé et apte à tenir une charge de production ?...
Car, oui, l'IA génère du code ultra-vite, ça c'est sûr; mais la véritable question est : de quelle qualité...
2  1 
Avatar de escartefigue
Modérateur https://www.developpez.com
Le 12/06/2026 à 10:07
Citation Envoyé par Anthony Voir le message
Une ingénieure logiciel obtient une exemption religieuse pour ne pas utiliser l'IA au travail, invoquant l'impact environnemental de l'IA et les risques de chômage : elle écrit désormais son code à la main
Au travail, c'est le droit du travail et le règlement intérieur de l'établissement qui s'appliquent. Les convictions religieuses ou de toute autre nature n'ont pas voix au chapitre.
1  1