Les entreprises se tourneraient vers l'IA au détriment des développeurs juniors
La question de savoir si l'IA serait un jour capable de remplacer les programmeurs n'est pas nouvelle. Mais le débat s'est intensifié avec l'arrivée de l'IA générative, en particulier des outils d'IA de génération de code informatique. Selon certains acteurs du milieu, dont le développeur américain Steve Yegge, l'IA est déjà en train de faire barrage à l'embauche des développeurs juniors. Yegge va même jusqu'à déclarer que le développeur junior est mort. Selon lui, l'IA s'acquitte si bien des tâches habituellement confiées aux développeurs juniors que les entreprises préfèrent maintenant la technologie aux jeunes diplômés.
Généralement, le but derrière l'embauche de développeurs juniors est d'attirer les meilleurs talents qui viennent d'arriver sur le marché. Certains d'entre eux sont parfois encore à l'université et travaillent pour les entreprises entre les cours et les examens. Il arrive que certains évoluent rapidement et commencent très vite à apporter une valeur ajoutée à l'entreprise et au client. Toutefois, Yegge voit cette époque disparaître dans les prochaines années. Examinons quelques tâches typiques d'un développeur junior :
- écrire du code : mise en œuvre de fonctionnalités ou de composants simples sur la base de spécifications détaillées ;
- correction de bogues : identifier et résoudre les problèmes dans le code existant avec l'aide de développeurs expérimentés ;
- tests : rédaction et exécution de tests pour garantir la qualité et la fonctionnalité du code ;
- examens du code : participer à des revues de code afin d'apprendre les meilleures pratiques et d'améliorer les compétences en matière de codage ;
- documentation : créer et mettre à jour la documentation technique pour les composants logiciels sur lesquels ils travaillent.
Selon Yegge, au lieu de confier ces tâches à un développeur junior, de nombreux développeurs séniors les confient aujourd'hui à ChatGPT ou à un chatbot similaire. Il appelle ce processus : « la programmation basée sur le chat (Chat Oriented Programming - CHOP) ». Il a déclaré que la programmation basée sur le chat a pris son véritable envol avec le lancement de GPT-4o à la mi-mai, ce qui a éliminé le besoin de développeur junior pour accomplir les tâches susmentionnées.
Dans son analyste, l'ancien ingénieur de Google écrit : « cette forme de programmation est en passe de représenter un ordre de grandeur d'accélération par rapport à la programmation basée sur les achèvements. Une amélioration de 10 fois peut sembler exagérée. Mais nous venons de voir des exemples de pratiques juridiques, d'édition et de science des données dans le même ordre de grandeur, avec des accélérations de 5 à 30 fois pour certains types de tâches, et des estimations d'au moins 2 à 3 fois pour l'augmentation globale de la productivité ».
Que feront les entreprises lorsque les développeurs séniors partiront à la retraite ?
À en croire Yegge, les entreprises n'ont besoin maintenant que de développeurs séniors, qui (a) décrivent les tâches à accomplir (ou écrivent les messages-guides pour l'IA) et (b) examinent le travail résultant pour en vérifier l'exactitude et la justesse. Les actions des jeunes collaborateurs sont en baisse et l'on craint un effondrement du marché. Cela pose un problème sérieux pour les nouveaux venus dans ces domaines. Que faire ? Comment apprendre les ficelles du métier, sans parler de trouver un emploi rémunérateur ? Quelles sont les ficelles du métier aujourd'hui ? Ces questions restent sans réponse, mais Yegge écrit :
Envoyé par Steve Yegge
Et que feront les entreprises lorsque leurs séniors partiront à la retraite ? À ce moment-là, qui sera chargé d'examiner le travail de l'IA pour en vérifier l'exactitude et la justesse ? Actuellement, aucune des personnes qui prédisent que l'IA remplacera les programmeurs (et écrira jusqu'à 80 % du code informatique à l'avenir) n'a aucune réponse à ces questions. Ce qui laisse penser en effet que ces prédictions relèvent plus du battage médiatique que de la réalité.
Yegge estime que les entreprises pourraient se retrouver dans la même situation que le monde COBOL, qui connaît une crise mondiale, parce qu'il n'y a pas de jeunes développeurs COBOL pour remplacer ceux qui sont partis à la retraite. Paradoxalement, ces grandes entreprises héritées du passé seront probablement celles qui encourageront le plus les modèles à écrire tout leur code. Et les modèles futurs ? Seront-ils entraînés sur du code généré par l'IA elle-même ?
Des études mettent en garde contre cette évolution qui pourrait se solder par un effondrement de l'ingénierie logicielle. Selon certains critiques, l'industrie risque de s'effondrer en raison d'un manque d'innovation parce qu'ils n'ont pas réussi à faire fonctionner l'IA aussi bien qu'ils l'espéraient avant la disparition des séniors. Le manque flagrant d'évaluation des risques est stupéfiant. Par exemple, le marché ne fait rien pour l'instant pour se prémunir contre ses paris sur l'IA.
L'IA représente un dilemme important pour le secteur de l'ingénierie logicielle
À court terme, il est peu probable que l'IA remplace les développeurs séniors. Mais elle est susceptible d'augmenter leur productivité suffisamment pour qu'ils n'aient pas besoin d'embaucher des développeurs juniors. Toutefois, la plupart des dirigeants qui prévoient de remplacer les développeurs juniors par l'IA semblent oublier que les développeurs séniors ne tombent pas du ciel. Ils semblent oublier que ce sont les juniors qui finissent par devenir des séniors en acquérant de l'expérience à travers l'exécution des tâches susmentionnées et la participation aux grands projets de développement au sein de l'entreprise.
« Les LLM, c'est un peu comme Google et Stack Overflows sur les stéroïdes. Lorsque vous rencontrez un problème, vous pouvez obtenir une réponse rapide et une description étape par étape d'à peu près n'importe quoi. C'est excellent ! Mais il n'y a pas encore de véritable baguette magique. Je pense que les modèles de langage sont un outil formidable, mais ils sont limités, ils ne peuvent pas résoudre des problèmes entièrement nouveaux à partir de rien, et cela reste du domaine des humains. Il est peu probable que l'IA y parvienne un jour », a souligné un autre critique. Voici quelques-unes des limites de l'IA :
- manque d'innovation : l'IA est incapable de faire preuve d'esprit critique et de générer de nouvelles idées ; elle ne peut que répéter des idées basées sur les données sur lesquelles elle a été formée. L'esprit critique et la résolution de problèmes sont des compétences de programmation importantes que l'IA ne peut pas reproduire ;
- un code inexact : l'IA étant sujette aux hallucinations, un outil d'IA peut produire un code inexact. Cela peut être particulièrement vrai pour les demandes plus complexes ;
- risques pour la sécurité : l'IA peut apprendre à partir des données fournies par l'utilisateur et stocker des données, en les utilisant pour améliorer les résultats futurs. Avant d'utiliser une IA, il est important de connaître les modalités de stockage et d'utilisation des données du système afin d'éviter les problèmes de sécurité ;
- droits d'auteur et propriété intellectuelle : tout comme l'IA peut stocker et utiliser vos données, elle peut également apprendre à partir de données protégées par le droit d'auteur d'autres utilisateurs. Si vous utilisez l'IA pour des tâches de programmation commerciale, il est utile de savoir sur quoi l'IA a été formée afin d'éviter toute violation accidentelle.
« Les choses évoluent rapidement. Je suis optimiste et je pense généralement, ou du moins j'espère, qu'à mesure que les entreprises deviendront plus productives dans les mois et les années à venir, elles deviendront tout simplement plus ambitieuses. Tout le monde devra prendre beaucoup plus au sérieux les tests et la révision du code. Les développeurs séniors pourraient devenir des réviseurs à plein temps et les développeurs juniors pourraient guider les LLM, peut-être ? Cela ne doit pas nécessairement se terminer par un désert post-apocalyptique pour les jeunes diplômés en informatique », a déclaré Yegge.
Cependant, il serait difficile pour les développeurs juniors sans expérience de guider les modèles. « Si l'on coupe les racines d'un arbre, il n'y aura plus d'arbre. Si une université n'avait plus d'étudiants de première année, elle ne serait plus qu'un bâtiment vide. Une industrie du logiciel sans juniors est aussi bien qu'une université qui s'est vidée après que tous les étudiants ont été diplômés parce qu'elle a cessé d'accueillir des étudiants de première année », note un critique.
En somme, il apparaît que les nouveaux développeurs juniors sans expérience auront beaucoup plus de mal à entrer sur le marché du travail. Un diplôme seul ou des connaissances purement théoriques ne suffiront pas. Selon certains critiques, les employeurs prêteront encore plus d'attention aux compétences interpersonnelles et aux projets et à la proactivité des développeurs juniors. Leur référentiel sur GitHub sera encore plus important qu'auparavant.
La connaissance d'outils tels que ChatGPT pourrait être un atout. Si les jeunes talents savent utiliser ces outils, connaissent les bases du ML et du DevOps et pas seulement le développement logiciel pur, il leur sera plus facile de trouver leur voie dans des équipes informatiques de plus en plus pluridisciplinaires.
Source : billet de blogue
Et vous ?
Quel est votre avis sur le sujet ?
Êtes d'avis que l'IA générative a sonné la fin des développeurs juniors ?
Le recours à l'IA est-il plus sûr et plus bénéfique que l'embauche de développeurs juniors ?
Que feront les entreprises lorsque les développeurs séniors partiront à la retraite ?
Qui sera chargé de guider l'IA si les entreprises se débarrassent de tous leurs développeurs ?
Ces prédictions sont-elles réalistes ? À quoi ressemblera l'industrie si les développeurs juniors disparaissent ?
Selon vous, le secteur du génie logiciel peut-il survivre à long terme sans les développeurs juniors ? Pourquoi ?
Voir aussi
Les enfants devraient-ils encore apprendre à coder à l'ère de l'IA ? Des experts affirment que l'enseignement de l'informatique est plus important que jamais, s'opposant ainsi au battage médiatique sur l'IA
La pénurie de talents reste le principal défi pour les développeurs en 2023, alors que près de 43,4 % du temps d'un développeur est consacré au codage, selon une enquête de Reveal
« Apprendre à programmer sera inutile à l'avenir », d'après le PDG de Nvidia, selon lequel l'intelligence artificielle fera de tous des programmeurs au travers du langage naturel