J'analyse mon propre profil de développeur.

Dans ce bonus, je vais faire un petit bilan personnel sur mes différentes compétences suite au quiz de Neil on Software, que je vous recommande vivement de faire si ce n’est pas encore le cas, déjà parce que c’est fun, mais surtout super instructif !

Dans mon article, j’avais parlé de chaque type en expliquant la valeur qu’ils peuvent apporter à une équipe. Mais dans la réalité, personne n’est uniquement un seul type, et on est tous plus ou moins dans toutes les cases.

Et justement, j’aimerais vous partager ici quelques réflexions et anecdotes personnelles concernant chacun de ces types, comment j’ai réussi à les utiliser avec succès dans des projets professionnels, et au contraire, les moments où ils m’ont fait défaut.

Bref, sans plus de transition, voici mes résultats :

Version interactive ici.

Assassin

Contrairement à ce que je peux parfois laisser supposer (par mégarde), je ne suis pas un assassin, voir même pas du tout. La raison est que je suis énormément attaché à la rigueur et au travail bien fait, quitte à perdre en rapidité.

En effet, je suis le genre de personne qui aime bien prendre tout le temps qu’il lui est accordé. À l’école, j’étais tout le temps le dernier à rendre ma copie, car j’arrivais toujours à rentabiliser chaque seconde, là où un assassin pouvait finir au bout de 10m.

Mais attention, s’il y a une deadline, je la respecte, même si ça me fait un peu mal au cloaque de me dire que j’aurais pu faire mieux si j’avais eu le temps.

Actuellement, je ne suis pas en train de m’entraîner pour devenir assassin, car j’estime que ma priorité est ailleurs, notamment sur la qualité. Est-ce que je m’entraînerais un jour ? Sûrement, mais pour l’instant, je préfère mettre mes priorités sur autre chose, notamment sur le prochain point de cette liste.


Télépathe

Ma plus grande déception, et un de mes plus gros point faible de manière général. La raison pour laquelle je suis si peu télépathe vient surtout du fait que je ne suis pas le genre de personne à m’affirmer dans les réunions, mais plutôt à écouter patiemment et à prendre des notes.

Mais c’est en train de changer, car je suis pro-activement en train de m’entraîner sur cette compétence, et je progresse de semaines en semaines.

Pour l’anecdote, je travaille actuellement sur un projet d’application de gestion très technique et interne à l’entreprise dans laquelle je travaille. Et un des soucis principaux est que le chef de produit (PM pour Product Manager) est le genre de personne qui fait toujours en sorte de me donner le minimum d’information possible.

Vous savez, le genre de type qui vous appelle tous les 4 matins en disant “à oui au fait, j’avais oublié de te dire [insérer un détail décisif qui oblige les développeurs à changer tout ce qu’ils ont fait]”. Vraiment, c’est limite du sport à ce stade.

Et comme je suis la personne qui gère les réunions d’avancement du projet, cette personne me force à creuser le cahier des charges un maximum et à poser énormément de questions, chose que je n’avais absolument pas l’habitude de faire auparavant.

En quelque sorte, même si ce PM est ultra-frustrant et m’a fait perdre un temps monstrueux, il est devenu sans le savoir une sorte de coach avec lequel j’entraîne ma compétence de télépathe. C’est un mal pour un bien, en quelque sorte 🤔


Tank

Le tank n’est pas vraiment une compétence en sois, mais plutôt un état d’esprit qui apporte beaucoup de bien aux autres développeurs.

Je n’ai pas toujours été comme ça, en particulier à mes débuts. La raison pour laquelle j’ai changé, c’est que pendant très longtemps, j’ai tenu un poste dans un service informatique où j’étais plus support technique que développeur.

Du coup, j’ai souvent été amené à travailler sur des projets de développement sur lesquels je ne pouvais pas m’investir à 100% comme les autres membres de l’équipe, étant donné que j’avais beaucoup de trucs à faire à côté.

Donc comme je n’avais pas vraiment le temps pour faire de la création de fonctionnalités, et bien je faisais tout le reste afin que les autres puissent travailler tranquillement.

À noter que je n’étais pas obligé de faire ça. À la base, j’étais juste là en temps que support afin que le projet avance un peu plus vite. J’aurais pu coder, tester ou faire le café, j’aurais été payé pareil, mais je pense que c’était la meilleure chose sur laquelle je pouvais contribuer étant donné ma maigre présence.

Et au fur et à mesure, j’ai commencé à adopter cet état d’esprit, et c’est comme ça que je suis devenu tank. C’est tout bête, mais c’est littéralement ce qui m’a fait passer de 0% à 80%.


Chasseur

Voici un point sur lequel je me suis pas mal amélioré, bien que je n’en ferais pas ma spécialité non plus. Encore une fois, c’est lié au fait que j’aime le travail bien fait et livrer des fonctionnalités stables, mais je ne suis pas un traqueur de bug non plus. Je suis même surpris que d’avoir scoré aussi haut (je ne le mérite pas).

D’ailleurs, je vais vous faire une petite confidence : je ne sais pas tester correctement une application ☹️

Mais genre vraiment, je suis nul. Si vous travaillez un jour avec moi, ne me confiez jamais ce genre de tâche !

Pour faire des tests unitaires, aucun souci, je peux même faire du TDD. Mais les tests d’intégration, je trouve ça d’une galère pas possible, et à part cliquer partout ou défoncer mon clavier à coup de rouleau à pâtisserie, je suis absolument inutile.

Du coup, ce n’est pas une compétence qui détient toute ma priorité. Je pense être assez bon aujourd’hui pour faire ce que j’ai à faire, mais je ne cherche pas vraiment à aller plus loin pour le moment.


Magicien

Mon premier 100% de la liste et pas des moindres ! Et sans vouloir exploser mes chevilles, ça ne m’étonne pas vraiment.

J’ai toujours eu un bon esprit de logique dans ma vie, que ce soit à l’école où j’étais très bon en maths, physique et mécanique, alors que j’étais une quiche lorraine dans toutes les matières qui demandaient d’avoir un peu de mémoire. Pour vous dire, encore aujourd’hui, je ne connais même pas un quart des départements français 😕

Du coup, l’informatique pour moi, c’était un rêve ! Il faut être logique, méthodique et aimer se creuser la tête. D’autant plus que je ne suis pas très bon dans grand-chose, et je suis un mauvais perdant qui se frustre pour un rien. Mais quand je fais de l’informatique, la roue tourne, je peux enfin être au sommet de mes capacités et impressionner tout le monde 😀

Donc faite que le grand effondrement n’arrive pas trop vite, que je puisse coder encore un peu avant que le métier ne disparaisse et que je sois obligé de me reconvertir en un berger de Haute-Savoie (quoi que ça serait un peu cool en vrai !).


Ranger

Ma seconde plus grosse déception de cette liste. Là où le télépathe m’a mis un bon coup de poing dans la figure, le ranger me finis à coups de pied dans les côtes.

La raison, c’est que je suis fanatique de veille technologique, et j’adore chercher, tester et expérimenter des nouveaux trucs !

Par exemple, il n’y a pas longtemps, j’ai intégré le logiciel DocFX (dont on reparlera sur ce blog) dans mon entreprise, afin que les développeurs puissent générer automatiquement la documentation technique de leurs applications, et donc gagner beaucoup de temps sur le court et long terme. Si vous ne comprenez rien à ce que je viens de dire, je vous renvoie vers cet article.

Et pas plus tard qu’il y a deux semaines, j’ai fait toute une étude sur Azure DevOps afin de permettre aux développeurs de tester et de mettre en production leurs applications simplement et semi-automatiquement, le tout de manière super sécurisée.

Donc ouais, je kiffe vraiment faire de la R&D. D’ailleurs, certains de mes articles, comme celui sur Bridge.NET ou celui sur Sass, sont juste le résultat de mes délires de veilleur où je me mets au défi d’apprendre une techno en une semaine et d’en faire un article.

Pour détailler un petit peu ce (piètre) résultat, il y a en fait 2 causes : la première est que je ne suis pas forcément à jour sur toutes les nouvelles sorties, et la seconde est que je suis assez précipité et j’ai tendance à recommander une technologie un peu trop rapidement sans avoir objectivement assez de recul (c’est pas bien).

Mais ce sont deux problèmes que je suis en train de résoudre, et d’ici un an, j’espère enfin pouvoir être un full ranger, un vrai de vrai !


Guérisseur

Aaaah, le réusinage. J’adore ça et je pourrais en faire toute la journée si le temps ne jouais pas contre moi.

C’est d’autant plus pertinent que dans mon entreprise, je travaille régulièrement avec des logiciels vieux de plus de 10 ans qui ont vu défiler 40 développeurs (dont 60% de stagiaires). Donc ouais, il y a un peu de boulot.

Le gros souci avec ça, c’est que j’ai tendance à être trop perfectionniste, et comme un fumeur de crack, je lutte souvent pour ne pas passer trop de temps à faire du réusinage et me concentrer plutôt sur des choses à plus grande valeur ajoutée. Je n’exagère absolument pas.

Mais je pense que le problème du perfectionnisme dans le monde du développement mérite son propre article, et avec moi en tant que rédacteur, vous allez avoir une belle étude de cas.


Mécanicien

Ma 3ème et dernière compétence à 100%, et pas des moindres puisque c’est littéralement le sujet de mon blog : construire les méthodes de travail les mieux huilées possibles afin de vous permettre de développer ultra-efficacement.

Car le mécanicien n’est pas qu’un simple bricoleur d’outils sur-mesure, c’est avant tout un amoureux du travail efficace qui va certes construire des frameworks et des bibliothèques, mais aussi mettre au point des nouvelles manières de travailler et de s’organiser. Bref, c’est tout moi ça !

Sur ces 12 types, c’est clairement celui qui me représente le plus, et le voir à 100%, ça fait vraiment plaisir.


Fantôme

Bien que je n’ai pas la concentration légendaire du fantôme, il y a quelques éléments que je reprends dans ma méthode de travail.

Par exemple, j’ai régulièrement tendance à planifier toutes mes tâches et à tout faire d’un bloc, sans avoir besoins faire des réunions toutes des demi-heures. D’autant plus qu’étant magicien à 100%, je me retrouve rarement bloqué, car je trouve toujours des solutions à mes problèmes.

La stratégie, que j’applique dans tous mes projet, c’est de faire une réunion par semaine avec le PM, le reste de l’équipe, voir les parties prenantes, et de récupérer une quantité d’information suffisante pour que je puisse travailler en autonomie jusqu’à la prochaine réunion, sans avoir besoin de recontacter qui que ce soit. D’où mon entraînement de télépathe intensif.


Métamorphe

L’histoire de ma compétence de métamorphe est à peu près la même que celle du tank.

À la base, ce n’était pas du tout quelque chose de naturel chez moi, mais comme j’ai longtemps travaillé dans un service informatique, j’ai eu l’occasion de faire beaucoup de support technique et de travailler sur plein de choses différentes. Et en conséquence, j’ai petit à petit développé un panel de compétences bien plus large que mes collègues purs développeurs.

Là où ça joue en ma faveur, c’est que comme je suis aujourd’hui amené à travailler dans des équipes très petites, où on est 4 grand max, ma polyvalence m’aide énormément à pouvoir être efficace sur tous les fronts.

C’est un peu une compétence que j’ai développée malgré moi, mais qui m’aura au final bien servi is dans ma carrière.

Note : si vous recherchez un stage ou un apprentissage, je vous recommande vivement de le faire dans un service informatique avec des missions de développement. Vous allez apprendre plein de choses et vous épanouir dans plein de domaines, là où vous allez plus vous spécialiser dans un seul domaine, voir une seule technologie dans une startup ou une ESN. Bref, c’est parfait si vous êtes encore étudiant.


Sage

Bon, évidemment, étant encore développeur junior, il n’y a pas de secret de ce coté-là. C’est vraiment une compétence qui se forge avec le temps et l’expérience, et pour l’instant, je ne suis encore qu’un petit jeunot qui continue à apprendre tous les jours de ses mentors.

Et pour avoir travaillé (et encore aujourd’hui) avec un proche collègue sage, je peux vous dire que c’est une des choses qui m’a le plus aidé durant ma carrière. Donc mon conseil si vous êtes développeur junior, c’est de mettre votre ego de coté et de trouver impérativement cette personne, qui, en quelques jours, vous apportera bien plus qu’un cours complet sur Open Classroom.

Et si vous êtes étudiant, profitez de vos stages et apprentissages pour apprendre de votre tuteur. C’est le plus important !


Scélérat

Si vous avez déjà travaillé avec des parties prenantes et des PM qui n’ont absolument aucune notion de technique, d’ergonomie ou de design, alors vous avez deux solutions : soit vous vous pliez à leurs demandes distordues, soit vous passez du côté obscure et vous devenez scélérat.

La vérité, c’est que ce n’est pas vraiment dans ma nature de m’opposer à ce qu’on me demande, c’est mon travail après tout. Mais s’il y a une chose qui m’énerve, c’est de travailler délibérément sur des fonctionnalités qui n’ont aucun sens, alors qu’elles peuvent être objectivement mieux faites.

Et c’est comme ça que je suis devenu scélérat petit à petit, et vous savez quoi ? Ça marche.

Pour reprendre le fameux PM de tout à l’heure, il m’est arrivé plusieurs fois de lui proposer une vision alternative de ce qu’il avait imaginé au départ. Et ça à payé puisqu’il, et les utilisateurs finaux, ont toujours été agréablement surpris par le résultat.

Je pense qu’il y a un sérieux complexe autour du rôle de scélérat (d’où le nom), et beaucoup le jugent comme rien d’autre qu’un rebelle qui s’oppose aux tâches qu’on lui donne.

Mais un scélérat avec de la jugeote, et qui pèse correctement le poids de ses actions, est un atout incroyable pour un projet, capable de changer une bouillie informe conçue simplement dans le but de satisfaire un client aux décisions douteuses, en une application surprenamment excellente qui va rendre le client fou de joie.


Et vous ? Quels types êtes-vous ? N’hésitez pas à faire le test et à envoyer vos réponses sur Twitter à @ITExpertFR afin qu’on puisse en débattre tous ensemble ! Ça va être fun, et vous pourriez peut-être bien apprendre des choses sur vous-même !