Comment les développeurs codent à l'ère de l'IA

par Julien Faixo - Développeur senior et formateur Software Craftsmanship – Sopra Steria
par Théo Violleau - Développeur full-stack – Sopra SteriaCaroline Boyer, Technical Manager et spécialiste IA - Sopra Steria Next
| minutes de lecture

GitHub Copilot, ChatGPT : en quelques mois, l'IA générative a débarqué dans les IDE des développeurs. Révolution ou simple évolution des pratiques ?

Pour le savoir, nous avons interrogé trois profils chez Sopra Steria : Julien Faixo, développeur senior et formateur Software Craftsmanship, Théo Violleau, 24 ans, développeur full-stack depuis deux ans, et Caroline Boyer, Technical Manager et spécialiste IA du côté de Sopra Steria Next. Leurs témoignages dessinent une cartographie précise mais en perpétuelle évolution des nouveaux enjeux du développement logiciel.

L'IA comme nouvel assistant : révolution ou évolution ?

"Ce n'est pas une révolution au sens propre", estime Julien Faixo. "En informatique, tout évolue très vite. La moitié des outils que j'utilise aujourd'hui n'existaient pas il y a dix ans." Pour ce développeur expérimenté, l'IA représente avant tout "un assistant augmenté" qui s'inscrit dans la continuité des outils d'aide au développement.

Cette perspective trouve un écho chez Théo Violleau. À 24 ans, ce développeur full-stack a découvert ChatGPT en fin d'alternance : "Avant, je passais beaucoup de temps à regarder des exemples de code sur Stack Overflow. Maintenant, c'est Copilot qui me fait des suggestions et me propose plusieurs choix."

Du côté de l'expertise IA, Caroline Boyer observe ces transformations avec attention : "Il faut toujours comprendre ce qu'on fait ou ce qu'on demande à la machine. L'IA peut produire un code syntaxiquement correct, mais cela ne garantit pas qu'il résolve correctement le problème."

Gains de productivité : entre promesses et réalités

"Aucun modèle d'IA aujourd'hui ne résout les problèmes difficiles, ceux qui nécessitent une réflexion complexe. Même les meilleurs modèles atteignent 53% de réussite sur les problèmes moyens, poursuit l’experte. En revanche, sur les exercices 'faciles', ils s'en sortent très bien”.

Les témoignages des professionnels du code confirment certains gains tangibles. "Sur des tâches répétitives, il excelle", confirme Julien Faixo. "S'il a quinze exemples de tests unitaires à côté, écrire un seizième test globalement identique mais avec quelques paramètres différents est un exercice qu'il effectuera très bien."

Cette observation trouve une résonance concrète dans l'expérience de Théo : "Les gains principaux se situent sur la génération de classes standards, les tests unitaires, et surtout la résolution de bugs. Je peux donner l'erreur et en quelques secondes l'assistant m'explique d'où vient l'erreur, alors qu'avant je pouvais chercher la réponse sur Stack Overflow pendant pas mal de temps."

Mais attention aux effets de bord. "Chaque fois qu'on s'arrête, il va écrire quelque chose", prévient Julien Faixo. "Le piège, c'est de tout lire tout le temps. Si on se met à lire tout ce qu'il propose, on va beaucoup moins vite que si on l'écrit soi-même. Et l'utilisation de l'IA devient une perte de temps."

La qualité à l'épreuve de l'automatisation

La question de la qualité cristallise les débats.  "J'utilise plus l'IA pour des parties de génération de fonctions répétitives, sans complexité trop élevée”, précise ainsi Théo Violleau. “Quand on rentre dans des questions complexes, l'outil peut se perdre et produire quelque chose qui ne fonctionne pas vraiment, ou qui est loin d'être optimisé."

 "Quand l'IA fournit du code, c'est comme copier-coller depuis Stack Overflow : si on ne réfléchit pas, on peut introduire des vulnérabilités, abonde Caroline Boyer. “Il faut traiter l'outil comme on traiterait le code d'un développeur junior."

"Pour moi, ça reste un outil", souligne Julien Faixo. "Si un développeur s'en sert mal, il va produire un code de mauvaise qualité. S'il n'y a pas de contexte ou s'il y a déjà du mauvais code, il génère du mauvais code. Finalement, c'est comme si on avait un enfant de 8 ans très rapide et débrouillard à ses côtés".

Un enfant hyperactif qu’il faut canaliser et surtout intégrer correctement à l’organisation. "Au début, ces outils n'étaient pas autorisés car ils n'étaient pas considérés comme confidentiels", raconte Théo, qui travaille pour la douane française. "Aujourd'hui, Copilot est directement intégré dans notre environnement."

Cette évolution pose la question de la responsabilité en cas de pépins. "Lors des 'merge requests', on peut tracer l'intervention de l'IA", précise Caroline Boyer. "Cette traçabilité permet, en cas de bug en production, de savoir que cela peut venir de tel bout de code généré par IA."

"Utiliser l'IA comme un levier, pas comme une béquille"

Voilà pour l’aval. En amont, c’est la formation des futures générations de développeurs qui préoccupe nos trois experts. "Heureusement que l'IA arrivait à la fin de notre formation", témoigne Théo Violleau, "parce que pendant toute notre formation on a pu se casser la tête à chercher les solutions, ce qui me semble avec le recul être le plus formateur."

"Il faut savoir faire pour être pertinent techniquement", abonde Julien Faixo. "Si tu n'as jamais manipulé ou si tu n'as fait que lire de la documentation, tu ne seras pas capable de challenger la faisabilité."

Ces préoccupations nécessitent une adaptation des méthodes. "Il faut repenser nos recrutements, nos entretiens techniques", estime Caroline Boyer. "Plus question de demander 'codez-moi ça'. Ce qui sera intéressant, c'est la réflexion, la façon dont une personne réfléchit et se sert des outils."

Face à ces mutations, quelles compétences cultiver ? "L'IA ne pourra pas remplacer la communication, le travail en équipe, la compréhension du besoin utilisateur. Il faut utiliser l'IA comme un levier, pas comme une béquille”, estime Caroline Boyer.

Pour Julien Faixo, la réponse est claire : "L'expertise technique, la hauteur de vue, la compréhension du fonctionnement des systèmes. L'IA va rendre ces systèmes encore plus complexes. On va avoir besoin d'experts."

Mais malgré les progrès visibles et à venir, un consensus émerge autour de l'indispensabilité humaine. "Il faut garder un esprit critique sur tout ce que génère l'IA", insiste Théo Violleau : "On reste responsables de notre code."

"Il y a, et il y aura toujours besoin d'un humain dans la boucle", conclut Julien Faixo.

Search

data

artificial-intelligence

Contenus associés

ADEO reshapes its Data Platform with Cloud-based technologies

To sustain its strong growth, the company has laid the extension of its business on a Platform and Data strategy. To propel this ambitious plan, ADEO has decided to migrate its entire IT system into Google Cloud, applying a datacenterless strategy.

SSH, la solution cloud de maintenance à distance de symmedia

Comment une solution basée sur le cloud de maintenance à distance a dynamisé l’activité de services industriels de symmedia. 

 

Arkema rocks its unified end-to-end Business Processes Data into the Cloud

To boost its product innovation and customer programs, Arkema decided to reshape the management of its data challenged by numerous systems. This transformational data project allows to unify data from its CRM, SRM and ERP systems into a Master Data Management (MDM) platform.