Les entreprises feraient de moins en moins appel aux développeurs juniors. Cette dynamique serait le fruit de la morosité économique qui s'est installée au lendemain de la pandémie de Covid-19 et à l'essor de l'IA générative. Le développeur américain Steve Yegge a déclaré dans une récente analyse que l'IA est en passe de remplacer les développeurs juniors, car elle est rapide, infatigable et essentiellement gratuite. Ce qui n'est pas le cas des développeurs juniors. Mais ce point de vue est controversé en raison des problèmes critiques de l'IA. Et surtout, l'on se demande qui seront les experts de demain si les développeurs séniors actuels partent à la retraite.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 :
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 :
[LIST][*]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...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

Quel est votre avis sur le sujet ?