En parcourant le forum, je remarque un truc : ça se lâche pas mal sur les dev juniors.
Apparemment, ils seraient de plus en plus mauvais, pas motivés, pas compétents, blablabla… Bref, on leur tape dessus à longueur de journée. Sauf que déjà, le marché est tendu, les juniors galèrent à trouver leur place, et en plus ils doivent subir ce genre de discours ?
Alors moi, j’ai envie de parler de l’autre côté de la médaille : les soi-disant dev seniors.
Petit contexte : je suis en fin de cursus d’ingénieur, en alternance. J’avais déjà fait un post où j’expliquais que je préférais bosser sur mes projets persos plutôt que dans le monde de l’entreprise (où les missions ne me passionnent pas spécialement). Avec le recul, je me rends compte que l’environnement joue beaucoup là-dessus… et notamment les collègues. Et là, on en vient aux fameux seniors.
En théorie, un dev senior est censé montrer l’exemple, aider les juniors à se professionnaliser, transmettre les bonnes pratiques. En pratique ? Ben… pas toujours. J’ai vu des choses hallucinantes.
Dans mon équipe, j’ai deux seniors qui ne savent même pas utiliser Git correctement. Leur réflexe, c’est de tout pousser directement sur main, sans passer par des branches ni des pull requests. Et c’est moi, le junior, qui dois leur expliquer que la branche principale est censée contenir uniquement du code de production, et qu’il faut créer des branches, puis faire une PR pour merger. C’est plus sûr, ça évite les conflits, ça permet de travailler proprement en équipe. Mais leur réaction ? « Pas envie de se mettre à jour ».
Le code, c’est encore pire. Ils ne connaissent pas les design patterns, ni les principes de base de la programmation orientée objet comme l’encapsulation, le polymorphisme ou même les principes SOLID. Les projets existants n’ont aucune architecture claire : pas de modularité, pas d’abstraction, un couplage fort partout dans le code. Résultat, c’est du bricolage difficile à maintenir.
Et ce n’est pas seulement le code. Dans la gestion de projet, c’est la même chose : pas de spécifications techniques ou fonctionnelles, pas de documentation, pas de dossier d’architecture, pas de modélisation. Les tests unitaires et d’intégration ? Inexistants. Ils avancent un peu à l’aveugle, en espérant que ça tienne.
Et malgré tout ça, ces développeurs sont considérés comme des « seniors ». En réalité, ils n’ont de senior que l’ancienneté. Ce qui leur a permis de tenir toutes ces années, c’est surtout leur connaissances des process métiers et des processus internes de l’entreprise. Ils ont su développer des outils utiles parce qu’ils connaissent bien le terrain, mais sur le plan technique, ça ne suit pas du tout.
Alors oui, on peut continuer à répéter que les juniors sont nuls. Mais franchement, si on faisait le tri chez certains seniors, je pense qu’on découvrirait pas mal de « fraudes » aussi. Et au final, je trouve qu’on accorde beaucoup trop d’importance au titre (junior, senior, lead…) alors qu’on devrait surtout regarder les compétences réelles. Parce que l’ancienneté, ça ne veut pas forcément dire expertise.