Jeune Société bien sous tout rapport cherche Développeur expérimenté pour relation solide et engagée. Pas sérieux s’abstenir.
C’est quoi un « dévelopeur expérimenté » ? On dit aussi « développeur sénior » en oubliant parfois de préciser « Développeur homme ou femme (H/F) ». Mais nous ne parlerons pas ici du principe de non-discrimination. Sachez qu’il existe 19 discriminations qui ne doivent pas influencer le recrutement et la carrière. Le sexe bien entendu, mais aussi l’origine, l’âge et d’autres critères à connaître. Et quand on lit parfois certaines offres d’emploi dans l’informatique… oh my god.
Mais revenons aux petits vieux. Le développeur expérimenté (que ce soit un homme ou une femme) est plus souvent qualifié de « sénior » et « expert ». Il s’agit pour moi d’une personne avec plusieurs expériences professionnelles. Certainement quelqu’un qui sait ce qu’il faut faire face à un ensemble de situations. Une personne expérimentée aura certainement rencontré plus d’obstacles et d’imprévus que vous. Elle aura une capacité acquise à réagir et à prendre les décisions.
Développeur c’est d’abord être capable d’apprendre et de trouver rapidement de l’information. Le cycle des technologies étant assez court, il est indispensable de savoir apprendre. Tout comme il est important d’avoir de bonnes bases, quitte à renforcer plus tard celles-ci si votre formation universitaire initiale n’est pas l’informatique.
Les entretiens d’embauche sans pouvoir faire de recherche sur Internet sont aussi biaisés. La réalité c’est qu’un développeur expérimenté va trouver plus vite la raison d’une erreur, qu’une personne junior. Mettez-moi devant une stack Java, et je pense que je me débrouillerai mieux qu’un débutant… car c’est la 1000 ème fois que je fais cela. Google, Stack Overflow, l’habitude d’identifier les sources fiables, bon niveau en Anglais… Etre expérimenté c’est pas forcément « savoir plus ». C’est aussi savoir trouver plus vite.
En étant plus expérimenté, on devient aussi un peu plus adepte de la simplicité. La clé d’un bon développeur, c’est de savoir faire des choses simples. Et c’est certainement le plus difficile. Nous vivons dans un univers où il semble nécessaire de faire du React, de l’Angular, des micro-services, avec dix milles lignes de code, sinon t’es un looser… Ben en fait non. Personne ne viendra te taper sur l’épaule en disant : « la vache, qu’est-ce que tu lui as mis à ce compilateur…« .
Etre expérimenté c’est aussi une résistance au stress et parfois plus de capacités à se sortir de la mierda.
Je m’explique.
Il arrive parfois de buter sur un bug.
Le genre de bug qui rend dingue. Vous avez beau mettre des System.out.println, vous n’y comprenez rien. C’est le bug qui devrait durer 10mn… mais en fait vous y passez 2h sans trop rien dire à vos collègues qui pensent que vous êtes entrain de recoder l’Etoile Noire. Vous voyez le style de moment dont je veux parler ? Genre tu veux te tester à l’injection de dépendance avec Play 2.4 et il est 17h, tu n’as rien prévu ce soir là.
Bref. Un conseil de vieux expérimenté et sénior : laissez dormir le code. Je ne compte plus le nombre de fois où j’ai résolu en 2mn le même souci, le lendemain. Le cerveau est une sacré machine.
Capable de travailler en tache de fond et de sortir l’autre façon de faire… qui vous fera avancer.
Expérimenté c’est aussi renoncer et se rendre compte que l’on ne peut pas tout savoir. Je sais que je ne sais pas, et que je ne saurai jamais. Car je n’ai pas le temps, le niveau et l’énergie pour le faire. Car j’ai d’autres priorités, donc je laisse cela à d’autres développeurs.
Expérimenté finalement, c’est quelque chose qui marque la fin d’une suite de choses auxquelles on croit, à ses débuts.
On débute par la programmation, puis l’on découvre d’autres capacités importantes de ce métier. On se découvre une passion pour l’entreprenariat, pour la gestion d’équipe, pour l’encadrement ou pour mener une équipe de développeurs.
Bon, passion n’est peut-être pas le mot. Mais reconnaissez que vous êtes passé à autre chose, après avoir épuisé votre créneau sur la programmation.
Expérimenté c’est aussi être plus sociable. Les développeurs juniors sont très tournés vers eux-mêmes, en quête d’une réalisation initiale. Avant de penser aux autres, ou à l’entreprise, ils passent d’abord par une étape de 4 à 6 ans uniquement centrée sur eux-mêmes. Et c’est très bien.
Viendra ensuite le moment où l’on prend conscience d’appartenir à une communauté (ceux qui utilisent Emacs, ceux qui utilisent un IDE, ceux qui utilisent Android, ceux qui ne vont JAMAIS aux conférences, ceux qui parlent d’un langage inconnu pour se la raconter, ceux qui pensent que Windev est un site pour adultes, etc).
Vous êtes expérimenté le jour où vous avez rencontré plus de personnes moins expérimentés que vous, et que vous leur avez transmis quelque chose. Votre super tricks sur VI pour chercher-remplacer. Ou votre façon de gérer un client difficile qui vous descend au téléphone… Tout un tas de petites occasions de montrer aux autres développeurs que vous êtes expérimenté. Et que vous êtes une personne sympa.
Sur ce, je retourne à mon code Scala. Je compte bien mettre une mine à mon compilateur et terminer ce dev.
Crédits photos : Fotolia – https://fr.fotolia.com/p/200945821
Ca me rappelle le quickie que j’ai présenté à Devoxx en 2013 : Peut on être développeur après 40 ans ?
Le problème vient le plus souvent des recruteurs, incapable d’évaluer ce genre de compétence …
Ça me parle assez tout ça! L’experience permet aussi de résonner à un niveau d’abstraction plus élevé. On ne s’arrête plus au langage, à sa syntaxe et ses spécificités. On reconnaît des patterns et des situations qu’on a déjà rencontrés ailleurs avec d’autres langages ou d’autres technologies. On crée aussi des ponts plus facilement entre les technos et leurs communautés – d’où peut-être le côté social plus développé.
+1 Damien
Je pense aussi qu’avec l’expérience, on ne s’attache plus à « LA techno top moumoute of the dead qui rox sa mère ».
On regarde, on compare avec des trucs qu’on a déjà vu, des cas qu’on a résolu avec telle ou telle techno, telle ou telle archi, on évalue en fonction de ces points positifs et négatifs évalués à l’époque si, dans la situation actuelle, ce serait adapté ou pas, et au final, on applique ou non des patterns ou des morceaux de solution qu’on a emmagasiné avec le temps dans ses bagages.
Et on regarde la petit jeune qui nous sort sa belle tirade de « ouais mais avec Symfony 3, on fait ça en 2-2 », et on souris parce qu’il y a 10-15-20 ans, on pensais pareil de Java 1.2 (si-si ! 😉 ), de Delphi 5, d’Ajax, ou de je ne sais trop quelle solution technique qu’on adulait…
Avec le temps, on s’aperçoit que les technos changent, se remplacent, mais que finalement, comme toujours, chacune a ses points forts et ses points faibles, et que notre expertise, c’est aussi de pouvoir dire : « ben non, Petit, ta techno, même si elle est extraordinaire et particulièrement adaptée au cadre de ton projet précédent, là, elle ne va pas bien coller pour telle et telle raison ».
Bravo Nicolas, c’est excellent, comme d’habitude. Voilà qui devrait parler haut et fort à tout développeur… expérimenté. Il est intéressant de noter que développeur rime toujours avec jeune, même en 2017. Il y a 10 ans, on pouvait croire qu’il n’y avait que des jeunes car le web était assez jeune en entreprise. En fait non, il y a toujours aussi peu de dév expérimentés, et donc ce momentt fatidique où vous vous rendez compte que le senior, c’est vous, arrive très tôt.
>> En fait non, il y a toujours aussi peu de dév expérimentés
Merci ! J’ai rencontré en 10 années de Web (j’ai plus de 40 ans) deux types de personnes :
– les jeunes qui n’en avaient rien à faire et essayaient tant bien que mal de recoller les bouts et les morceaux en attendant 17:30 pour partir voir Danse avec les stars devant un bon pastis (caricature à peine exagérée)
– les jeunes geeks qui, à 25 ans, étaient meilleurs que moi dans les nouvelles technologies mais ne comprenaient pas les implications d’utiliser certains principes trop complexes (impossible à leur expliquer : ça s’appelle l’expérience…)
… mais je n’ai jamais rencontré jusqu’à présent un développeur de plus de 40 ans toujours autant passionné par la technique que moi qui voulait toujours et encore essayer les nouvelles choses : faire du LUA avec Apache, des benchs personnels Nginx vs Apache, tester React et faire une appli temps réel juste « pour voir », aspirer plein de choses, les mettre dans une base pour tester le fts avec PostGRESQL, etc… « allo ? il y a quelqu’un ?? » [seul l’écho répond]……….
Quand j’arrive en entretien d’embauche (j’ai ma société, mais le stress de pas savoir ce que j’aurais dans 6 mois a presque pris le dessus et j’essaie de voir ce que je vaux encore), il se passe 3 choses (6 entretiens essayés) :
– les développeurs jeunes voient mes cheveux grisonnants, et comme je ne connais pas les options de git par coeur, je suis un dinosaure
– les développeurs vieux me voient d’un très mauvais oeil car si je suis meilleur qu’eux leur objectif sera, quitte à user de mauvaise foi flagrante, de me descendre coûte que coûte, afin que leur pseudo position de leader reste incontestée
– le chef d’entreprise voit que j’ai une entreprise et se dit « je vais pas pouvoir l’entuber en lui faisant croire que les ânes volent, car il sait vraiment comment fonctionne une société ».
Le pire que j’aie vécu ? Un entretien avec deux CTOs : la caricature extrême : le jeune qui demande à tout le monde d’utiliser les toutes dernières technologies en insistant sur le fait que Symfony c’est l’avenir, et le vieux qui connaît github par coeur et se gargarise de « hydratation de données », « code chaining », « callbacks » et autres termes qui désignent des techniques tellement vieilles qu’on a oublié qu’elles existaient et qu’on a inventé ces mots pour expliquer quelque chose qu’on croit nouveau… et qui est en fait plus vieux que tout (oui oui tout ça existe depuis le début, en C, mais pas avec ces appellations). Quand je me retrouve en face d’eux j’explique que Django + Python c’est l’avenir. Ils m’ont presque pouffé à la figure tellement j’étais mauvais en technologie… alors que je ne me suis jamais trompé en 20 ans, et là je vois quoi ? La campagne des stats 2017 sur stackoverflow, 64000 développeurs interrogés, je vous laisse lire les langages les plus payés, les plus en vogues et ceux qui progressent dea manière exponentielle. C’est toujours rageant d’avoir des crétins comme eux, car ils ne travaillent qu’avec des débutants, ou des gens pas passionnés, et ils finissent par s’auto-persuader qu’ils sont les meilleurs au monde. En plus on leur confie la tâche d’embaucher, c’est dire s’ils sont importants !
…
Bref avec du recul, il vaut mieux que je n’aie pas travaillé avec eux, je les laisse nager dans leur ego surdimensionné, c’est juste très frustrant de savoir qu’on a raison et que les 2 personnes en face de vous arrivent à en convaincre d’autres que vous n’êtes pas bon…
Bref à 43 ans il me semble impossible de se faire reconnaître en France. Les développeurs seniors semblent tellement respectés dans les autres pays… j’aimerais savoir ce qu’il en est !
Mais quand je vois « We’re hiring a Senior Python Engineer to join our team here at San Francisco » et c’est très bien payé, cela me donne vraiment envie de dire du mal de la mentalité française…
Je vais créer le clubs des « développeurs seniors toujours passionnés par la technologie et qui en sont fiers » !!!