IA : quel avenir pour les développeurs ?
Depuis plusieurs dizaines d'années, les révolutions technologiques s'enchainent, et l'émergence de l'Intelligence Artificielle en est une. Au point, que nous pourrions être amenés à nous poser la question suivante : quel avenir pour les développeurs ?
La télévision, la téléphonie, l'informatique, Internet, le GPS, sont autant d'innovations qui ont eu un impact majeur sur l'Humanité et notre société. L'Intelligence Artificielle suit le même chemin, à la différence qu'elle ouvre de nouvelles portes et qu'elle fait émerger de nouvelles craintes. En effet, l'IA est capable de raisonner avec les derniers modèles de langage actuel, et peut globalement donner cette impression de réfléchir. Même si, d'un point de vue technique, ce n'est pas réellement comme cela que les choses se passent.
Ainsi, l'IA occupe déjà une place importante dans notre société et elle bouleverse de nombreux secteurs, y compris celui du développement informatique. Les professionnels du secteur, qu'ils soient freelances ou salariés dans de grandes structures comme Innowise sont susceptibles d'utiliser l'IA ou de travailler sur des projets de développement d'IA.
Dans le domaine du développement, l'IA est à l'origine d'inquiétude puisque les développeurs ont l'impression d'être remplacés. Cette sensation s'est notamment accentuée par toute la « hype » autour du domaine de l'IA, la vitesse à laquelle ce secteur progresse, mais aussi à cause de Devin. Si vous ne connaissez pas Devin, il s'agit d'un "AI Software Engineer" présenté il y a près d'un an par la société Cognition, comme étant un ingénieur autonome basé sur l'IA. De quoi faire peur aux développeurs. Pourtant, la suite de cet article va démontrer que les deux seront amenés à collaborer, plutôt qu'à rentrer en concurrence.
Sommaire
Une accélération du rythme de développement
Les développeurs peuvent s'appuyer sur différents outils pour coder plus efficacement. Nous pouvons citer GitHub Copilot de chez Microsoft, ChatGPT ou plus largement OpenAI avec ses modèles de langage optimisés pour le développement : o3-mini, par exemple, est optimisé pour le développement web. Il y a d'autres outils, beaucoup d'autres mêmes, puisque Le Chat Pro de chez Mistral AI peut aussi générer du code, tout comme l'assistant Amazon CodeWhisperer.
L'Intelligence Artificielle vise donc à automatiser certaines tâches répétitives, générer des extraits de code, et faciliter le débogage en cas d'erreurs. Ces avancées ne remplacent pas les développeurs, mais leur offrent un gain de productivité significatif. Cependant, il convient de se rendre à l'évidence : elles transforment la manière dont les développeurs travaillent et nécessitent une adaptation rapide.
D'après le Gartner Magic Quadrant for AI Code Assistants, d'ici 2028, 90 % des ingénieurs logiciels en entreprise feront appel à des assistants IA pour coder, contre moins de 14 % au début de 2024. Ce chiffre montre à quel point l'adoption sera rapide au cours des prochaines années, et nous le constatons déjà aujourd'hui.
De nouveaux défis à relever
Plutôt que de coder ligne par ligne, les développeurs peuvent collaborer avec des IA pour concevoir, optimiser et sécuriser leurs applications. Bien que la valeur ajoutée de l'IA semble évidente sur le papier, elle soulève aussi des défis majeurs. Nous pouvons citer :
- Qualité et sécurité du code :
Nous attendons d'un développeur, qui plus est expérimenté, qu'il crée un code de qualité, c'est-à-dire un code sécurisé et efficient, de façon plus rapide qu'un junior. L'IA quant à elle, et dans son état actuel, quand elle génère du code, peut produire un code fonctionnel sans réellement se soucier de la qualité et de la sécurité. Plusieurs experts du secteur mettent en garde sur ce point. La supervision, et je dirais même la révision humaine, sont indispensables.
- Obsolescence des compétences :
Chaque développeur doit continuer d'aiguiser ses compétences, à se tromper, à déboguer des bouts de code, pour ne pas créer une dépendance vis-à-vis de l'IA. Cela est également vrai, car certains langages ou techniques de développement pourraient devenir moins pertinents à l'avenir.
- Éthique et responsabilité :
L'IA ne comprend pas les implications éthiques et légales du code qu'elle produit. La vigilance des professionnels est essentielle. L'IA s'appuie sur des algorithmes et des statistiques pour générer son code (et retourner des résultats de façon générale). L'humain, quant à lui, est capable de raisonner en fonction d'un contexte, d'un projet, des contraintes, d'un historique et d'une véritable conscience.
Vers une cohabitation IA-développeurs
Loin de faire disparaître les développeurs, l’IA modifie surtout leur façon de travail et leurs missions. Plutôt que de coder mécaniquement, ils devront superviser, guider et enrichir les suggestions des IA, afin de coder plus intelligemment. L'IA pourra être utile sur les tâches à faible valeur ajoutée et qu'il est possible d'automatiser, tandis que le développeur pour se pencher sur d'autres tâches où le raisonnement est essentiel.
Qu'on aime ou qu'on n'aime pas l'intelligence artificielle, il faut se rendre à l'évidence : elle va occuper une place clé dans les cycles de développement logiciel. Les grands gagnants de cette révolution technologique seront les développeurs qui en font un usage smart, en tant que réel assistant, et non pour travailleur à leur place.
Article sponsorisé.