Développeur… voilà un métier qui traîne pas mal de préjugés : un geek dans le noir, voire dans son grenier, cheveux longs (mais jamais une femme), casque sur les oreilles, devant un écran, voire plusieurs écrans (pas si cliché que ça finalement), et dont les interactions sociales se résument à des raids sur World Of Warcraft. Il frappe des lignes de codes sur son clavier sans trop réfléchir… Et voilà un site internet ! Mouais…Pas très flatteur tout ça…
Je collabore avec des développeurs depuis maintenant 3 ans et demi, et il n’y a rien de plus éloigné de la réalité que ces clichés et cette caricature. Le métier de développeur est bien plus riche et social qu’il n’y paraît. Décryptage.
« Ah bon ! les développeurs aiment les gens ? «
Et oui, c’est possible… Le développeur aime à la fois le code et les gens. A la différence d’autres professionnels qui mettent en avant leur aisance relationnelle ou le « j’aime le contact avec les gens », le développeur ne s’en vante pas. Les clichés sont malheureusement perpétués dans les procédures de recrutement qui dans de nombreux cas excluent l’un ou l’autre des aspects : code et pratique sociale. Or qu’on soit développeur Back-End, Front-End ou Fullstack, on ne code pas seul dans sa cave. Un développeur sait développer un logiciel, un site internet, une app mobile mais également des relations enrichissantes avec les autres.
Le développeur n’est pas seulement un expert technique dépourvu de capacité à dialoguer. Lorsqu’on recrute un développeur, on recherche un profil orienté métier avec des qualités humaines, capable de recueillir et comprendre le besoin des futurs utilisateurs tout en produisant un code clair, synthétique et bien commenté – ou simplement à comprendre celui des autres.
Le métier de développeur est une pratique sociale, puisqu’il collabore avec différents type de métiers :
– L’architecte informatique qui fait l’analyse technique du besoin et fixe les contraintes techniques que le développeur doit respecter.
– L’UI/UX designer chargé de créer un design plaisant et pratique pour les utilisateurs. Les maquettes sont ensuite intégrées par les développeurs.
– La chefferie de projet détenant le savoir business du client et manageant le planning.
– L’administrateur système qui gère le serveur sur lequel est hébergé le projet. En tant que développeurs, nous sommes chargés de lui indiquer quels outils sont nécessaires au bon fonctionnement de l’application.
– Et enfin, les autres développeurs intervenant sur d’autres fonctionnalités de l’application.
« Les développeurs sont surtout bons à taper du code sans trop réfléchir… »
Détrompez-vous ! L’écriture de code est une tâche complexe et même intellectuelle. Devenir un bon développeur et produire du code de qualité est d’autant plus complexe. Complexe, car il existe des centaines de manière de coder une fonctionnalité d’un site, d’une application ou d’un logiciel. Être un bon développeur, c’est savoir choisir la meilleure façon de faire et ne pas se contenter « de pisser du code » comme on dit dans le milieu.
Le métier de développeur requiert rigueur et méthode. En effet, savoir coder c’est bien mais encore faut-il être en mesure de respecter les contraintes du projet et réaliser l’ensemble des tâches dans le temps imparti.
Par ailleurs, dans des structures plus à taille humaine comme ARCA Computing, le développeur peut être amené à porter plusieurs casquettes. Il est donc nécessaire d’acquérir des connaissances sur les différents corps de métier qui composent la profession.
Il arrive qu’on demande à un développeur d’estimer lui-même le temps de développement nécessaire pour répondre aux demandes du client et faire des recommandations sur les meilleurs outils pour répondre aux besoins. Chez ARCA Computing, nous intégrons facilement les développeurs dans la phase commerciale, lors des rendez-vous avec les clients que ce soit pour recueillir leurs besoins ou leur faire une démo de la solution développée.
Enfin, on attend d’un développeur qu’il soit curieux. Il est en effet indispensable de faire de la veille technologique afin de maintenir ses connaissances techniques à jour et d’être au fait des nouveautés. Cette veille est d’autant plus importante qu’elle peut servir pour les recommandations faites aux clients.
Réfléchir, chercher à s’améliorer constamment, recommander, respecter les délais et les contraintes en tenant compte des nouveautés techniques et de l’évolution des outils, collaborer avec l’équipe et les clients… Voilà tout ce que peut faire un développeur ! Alors c’est qui le geek ?