Faut-il se lancer dans une carrière de dev aujourd'hui ?
“Devenir dev ?”
Cette semaine, sur le chemin du poké à la pause déjeuner, un collègue – coucou Fabien 👋 – m’a posé la question : “Si demain un petit jeune – collège, lycée, ou étudiant souhaitant réorienter ses études – te dit qu’il songe à se lancer dans l’informatique, notamment dans le dev, que lui répondrais-tu ? L’encouragerais-tu ?”
Ma réponse immédiate et franche fut de lui dire “non”.
“Non !”
Avant le Covid déjà, j’avais acquis un regard critique sur la multiplication des organismes de formation et de cursus courts (3 à 18 mois) qui promettaient de devenir un dev accompli et de toucher assurément le pactole. Je sentais venir le vent de la concurrence à outrance, pour des profils tous identiques – React / Symfony / WordPress – concentrés sur une stack, sans vraiment de fondamentaux théoriques, conceptuels, historiques ou pratiques.
Avec l’arrivée du Covid et l’éclatement du full-remote, l’ouverture sur le monde et tous les autres pays producteurs de code a rendu la concurrence encore plus féroce. Puis il y a eu l’apparition et l’explosion des outils low-code / no-code. Et depuis novembre 2022, l’IA qui ravage tout l’écosystème. Chacun de ces phénomènes, pris individuellement, aurait suffi à redessiner le marché. Combinés, ils l’ont transformé en profondeur.
Dès 2020, j’ai commencé à accompagner régulièrement en tant que mentor bénévole des personnes en reconversion ou en décrochage vers l’informatique (coucou Daviani, Pomme et les autres 👋). J’ai pu assister aux difficultés qu’ils rencontraient pour décrocher et conserver un premier poste – le fameux sésame qui leur permet ensuite d’être bankable pour l’industrie. De ce que j’ai observé (une dizaine de personnes), la plupart présentaient des manquements techniques évidents. Mais au-delà de ça, c’étaient aussi beaucoup de difficultés d’approche d’ingénierie : comprendre le problème, élaborer une solution adaptée, parvenir à la déployer de façon professionnelle. Il y avait aussi des questions de posture et d’attitude ou de communication, dans le monde de la tech.
Beaucoup voyaient le dev d’abord comme l’opportunité de meilleures conditions de vie. Ce qui n’est pas infondé. La vérité, c’est que le dev est énormément un métier dit “passion” – avec tout ce que ça comporte de bullshit et de dérives. C’est un métier qui demande une veille technique (théorique et pratique) constante et une remise en question permanente de ses connaissances. C’est un métier que l’on emporte avec soi, même une fois l’heure et la porte de l’entreprise passées. Tout le monde n’est pas obligé de charbonner comme un damné soirs et week-ends – encore heureux ! Et j’essaye au maximum que ce ne soit pas le cas dans mes équipes. Mais c’est un métier qui requiert malgré tout un engagement – en temps, concentration, énergie et courage – supérieur à beaucoup d’autres.
Former un dev est un investissement important pour une entreprise. J’estime qu’il faut compter 18 mois avec le bon environnement et le bon encadrement pour obtenir un dev correctement autonome et productif sur un périmètre confortable et intéressant. À côté de ça, une IA peut comprendre un contexte et fournir des réponses appropriées, critiques, qui débloquent des situations, en moins de 10 minutes, pour quasiment 0 €. Autant je suis fasciné par tout ça – ces nouveaux outils, ce nouveau pouvoir. Pour un dev sénior qui a des bases et une expérience solides, c’est un game changer qui permet de faire x3 à x10 en productivité, avec un niveau de qualité et de correspondance aux attentes souvent même supérieur. Autant j’ai beaucoup de craintes pour les nouveaux venus, à qui on ne laisse(ra) pas la même chance d’apprendre et de progresser.
C’est pour toutes ces réflexions que ma position aujourd’hui est plutôt négative à conseiller à quelqu’un de se lancer dans le dev. Un peu comme j’aurais des réticences à lui conseiller d’être prof, soignant, avocat ou conseiller social. Ce sont des métiers passionnants, riches, avec une portée supérieure en termes de sens, mais les conditions actuelles dans lesquelles ils s’exercent me paraissent de plus en plus difficiles. Au passage, ce sont autant de métiers eux aussi fortement menacés par l’IA.
“Quoique…”
En poursuivant ma réflexion, j’ai apporté une seconde réponse à Fabien. Plus nuancée. Plus optimiste aussi.
Si la personne est vraiment motivée, et qu’elle ou il possède des facultés de logique, de la rigueur, un attrait pour l’application de règles dans des environnements à contrainte, et qu’il est bosseur, il y a vraiment moyen qu’il ou elle s’éclate et ait toute sa place dans ce milieu qui constitue ma vie depuis plus de 20 ans.
Après tout, les algos et avancées en informatique ne se sont – pour le moment – encore jamais faits seuls. Il y a des hommes et des femmes derrière les modèles et leurs applications. Il en faudra encore pour les corriger, maintenir, optimiser et continuer d’inventer des façons de faire.
Avec le temps, je considère de plus en plus que l’informatique est un métier d’abord et avant tout humain. Notre rôle en tant qu’informaticien est de traduire la réalité – problèmes et solutions – en langage machine, à plus ou moins bas niveau. Plus l’industrie devient mature et moins la part de code devient importante dans le quotidien et la mission des développeurs. Avant l’avènement de l’IA, je commençais à penser et clamer que “l’écriture” de code – rédiger des lignes d’instructions, prod ou test – ne représentait déjà que 20 % du temps d’un dev. Aujourd’hui, avec l’IA, j’estime que c’est désormais à peine 5 % du quotidien. Et ce n’est pas grave.
En réfléchissant bien, c’est rarement la partie réellement la plus marrante. Oui, je trouve une forme de sérénité divine lorsque j’atteins un état de flow grâce à la rédaction de code. Et oui, c’est hautement satisfaisant de cracher des lignes et de voir qu’on n’a pas fâché le compilateur – aucun symbole ou pixel rouge, jaune, grisâtre dans l’IDE. Mais le shoot de dopamine le plus important vient rarement de la saisie des caractères, lesquels forment des mots-clés, des variables, des fonctions, des instructions, des blocs. Il provient du moment où on exécute le programme et que l’on obtient un résultat qui fait exactement ce qu’on avait visé, espéré, au problème qu’on nous a exposé. Et ce sentiment ne va pas disparaître avec l’IA. Au contraire, avec elle, il est potentiellement même beaucoup plus fréquent et puissant.
À l’heure où j’écris ces lignes, mon fils aîné a 12 ans. Ce matin, il était fier et impatient de me montrer le programme Minecraft qu’il a commencé à développer sur sa calculette ces derniers jours – ce qui lui a valu de se faire rejeter d’un groupe à l’école pour son côté “trop geek” 😥. Je me suis revu exactement à son âge, à faire les mêmes choses et connaître mes premières joies de développement – NDLA : à la différence que je n’avais aucun talent et que je me contentais de recopier les trucs que je voyais dans les magazines ou chez les copains (coucou Stéphane et les potes de Sainte-Geneviève 👋). Il est évident qu’il a le potentiel et toutes les qualités pour s’épanouir dans une activité d’ingénieur. Après, informatique, logiciel ou autre, ce sera à lui de voir.
Conclusion
La mondialisation, l’IA, le low-code / no-code, les tensions et crises économiques, politiques ou même écologiques, ainsi que l’avènement de la robotique – nous ne sommes pas prêts pour 2027, cf. mon article sur ai-PULSE – sont autant d’éléments qui ont déjà bouleversé et vont continuer de changer en profondeur l’informatique dans les années à venir.
Mais il faudra toujours des ingénieurs. Des personnes capables de comprendre et d’interagir avec des situations, des environnements, des contextes et des systèmes – mais surtout avec d’autres personnes.
Et pour peu qu’il y ait la flamme de transformer du physique ou de l’intellectuel en virtuel, et de s’enthousiasmer de voir le résultat et l’impact sur le réel, alors oui, le métier de développeur a un avenir. De même que celui ou celle qui s’y lance.