Mon parcours, et ce que j'aurais fait différemment

Publié le 24 octobre 2024

Je me rapproche de la marque des 10 (DIX) ans de carrière professionnelle. Il est temps de faire le point sur ce que je ferais si je devais recommencer.

  • career
  • education

8 ans à bosser, c’est pas rien. J’en ai fait des choses !! Parfois c’est cool de se poser un peu, et de réaliser ce qui a été accompli. J’ai trouvé le métier qui me permettrait de mieux tanker la vie, j’ai rendu mes parents fiers avec un diplôme, j’ai rencontré l’amour de ma vie, je suis sorti de l’enfer du train-train quotidien pour m’installer à l’étranger pour voir des gens qui étaient à la base hors de ma portée. Sans mentir, je suis plutôt satisfait du résultat. Si j’avais l’opportunité de tout recommencer, je ferais exactement TOUT PAREIL. Sauf qu’à mes 6 ans en 2002, je serais parti investir dans l’immobilier au lieu d’apprendre à lire et à écrire…

On va se concentrer sur le côté tech, et comment j’aborderais un début de carrière aujourd’hui, en ayant toutes les informations que j’ai en tête.

Mon parcours initial

Pour donner un peu de contexte, petit récapitulatif de mon parcours. J’ai grandi dans le 93 et obtenu mon bac dans le lycée local. J’ai choisi la spé scientifique, options maths, étant un matheux de base. Mes ambitions originales tournaient autour de l’architecture ou la musique, côté ingé son. J’ai pas eu la chance d’avoir des proches pouvant m’orienter dans l’une ou l’autre direction, mais j’ai toujours eu ce truc de toujours vouloir tout faire par moi-même. J’ai fait les démarches pour commencer à poursuivre dans ces voies au lycée (inutile, fallait pas compter sur les conseillers d’orientation à l’époque), dans des salons, en allant parler à des professionnels, et ce qui en est ressorti est que j’étais bien trop pauvre pour poursuivre une voie scolaire dans ces domaines. Un autre truc cool avec moi, c’est qu’il y a toujours un plan B, voire C. Le plan B, c’était l’informatique.

J’ai fait mes recherches, parlé à mes proches qui étaient plus ou moins sensibilisés au domaine et j’ai fini par opter pour l’alternance pour un BTS SIO, option SISR (option réseaux) ; un “nouveau” diplôme à cette époque (on est en 2013). Je l’ai fait à l’ESISEE-IT (ex-ITESCIA) en alternance en tant qu’adminsys / helpdesk. J’ai dé-tes-té. Le domaine était cool, l’apprentissage aussi, l’entreprise - sur la fin - horrible, ce qui m’a un peu dégoûté de l’adminsys.

J’ai obtenu mon BTS, je me suis “réorienté” en licence MIAGE en 2015. On m’a pris en troisième année sur Amiens à l’UPJV, et c’est alors que j’ai découvert le dev. J’ai poursuivi sur le Master du même nom, en alternance, au même endroit, en visant tout ce qui pouvait me faire devenir développeur.

Théorie des systèmes d’exploitation, programmation système, programmation orientée-objet, programmation web, programmation mobile, marketing, gestion de projet, maths financières (parce que j’adore les maths ; spoiler : c’était trop naze mais des points faciles) — bref, un package de fac classique.

J’ai fait mon alternance dans une start-up parisienne, à partir de 2016 en tant que dev. Backend (Django), frontend (Angular 2+, React), devops (AWS*), database (Neo4J, MySQL)… j’ai TOUT fait chez eux. Sportif mais formateur. J’ai refusé l’offre du CDI et je suis parti dans une ESN en 2018, Zengularity, connue pour avoir créé le framework Play (Scala). J’étais hypé de rejoindre une boîte qui contribue à l’OSS avec des devs super talentueux. J’ai bossé sur beaucoup plus de frontend que de backend là-bas et ma carrière a commencé à doucement glisser vers le côté client.

J’ai quitté Zengularity (maintenant Fabernovel) une année après avoir commencé pour me lancer en freelance. Je suis resté freelance de 2019 à 2021. Beaucoup de CA, beaucoup de missions, 3 backends, 4 frontends, sur diverses technologies :

  • Django x PostgreSQL pour le back
  • Svelte, React - React Native pour le front
  • Beaucoup de dataviz (ma spécialité à l’époque), avec D3 / Highcharts.

Juin 2021, je bouge au Canada, à Toronto. Je trouve un job juste avant de partir chez Maple, une boîte de télémédecine en tant que Senior Frontend Dev, pour du React, Next, React Native. Je découvre la paie astronomique à laquelle les Américains ont droit assez tôt dans leur carrière, et je sors donc le freelance de ma tête. Je suis resté chez Maple 3 ans, sur tout un tas de missions (feature work, migration Typescript, Expo, accessibility), tout un tas de types de clients front (web, mobile ou embedded). Je découvre le côté politique du boulot. Je passe mon temps en réunion, et mon taf commence vite à shifter de “développer des trucs”, à “permettre aux gens de développer des trucs dans les meilleures conditions”, à un rythme super soutenu. Juillet 2024, je quitte Maple, le jour où mon VP m’annonce ma promotion au titre de Staff engineer 💀.

J’ai rejoint Cookin’ en août 2024, sur du Kotlin / Typescript, où je re-découvre ce qui m’avait plu le plus chez les start-ups : la capacité à itérer super rapidement, avec le moins de friction possible. Pas d’estimation, pas d’agile, un tableau kanban sur Linear, et on ship on teste on recommence à longueur de journée. La sensation d’être productif à mort m’avait manquée.

Avec des si…

Maintenant, tu sais à peu près où j’en suis. Je vais lister en vrac, deux ou trois trucs que j’aurais changés, ou fait d’une manière différente.

Esquiver les choses qui me paraissaient hors de portée, c’est mal.

Exemple : Chez Zengularity, on m’a proposé une mission où il était question de composer avec des technologies comme Akka Stream. Je suis parti lire, j’ai rien compris, et j’ai refusé. GRAVE ERREUR. Pour espérer progresser, ne JAMAIS esquiver l’adversité. C’est dans la difficulté qu’on apprend ses limites, qu’on les repousse et surtout, qu’on progresse techniquement parlant.

Avoir pris TROP de missions orientées frontend.

L’expérience et le marché de l’emploi montrent que l’avenir, l’argent, et surtout, la sécurité de l’emploi se trouvent côté back. Le pire, c’est que je suis partisan de la philosophie selon laquelle tous les devs se doivent de maîtriser la stack de bout en bout. L’appât du gain et surtout la facilité (grosse demande à mon époque) ont fait que j’ai plus souvent pris des missions frontend que backend. Si c’était à refaire, je n’aurais pris que des postes fullstack ou backend (exception faite pour le mobile, j’adore le mobile natif).

Espérer que les années d’expérience fassent monter ma valeur sur le marché automatiquement.

C’est faux. Les bouches fermées ne seront jamais nourries. Depuis mon arrivée au Canada, j’ai repris ma carrière en main et je fais en sorte que le moindre accomplissement soit connu par mes managers et les stakeholders. Être un acteur passif dans le jeu corporate, c’est vraiment à ne pas faire.

Avoir skip les cours de compilateur.

Parce qu’en fait les compilateurs c’est trop LOURD gars !!!!!!! Je rattrape le temps perdu.

Avoir peur de l’échec, de la prise de risque

Combien de fois j’ai été paralysé à l’idée de naviguer en eaux inconnues, pour que quelqu’un exécute avec succès l’idée que j’avais en tête. On ne doit pas avoir peur de se challenger, se remettre en question et surtout se tromper. Ça fait partie du processus.

Sous-estimer l’importance des fondamentaux en system design et architecture

Toutes les interviews portent sur du system design maintenant. C’est un truc qu’il faut autant bosser que la maîtrise des langages. Le but n’est pas d’avoir tout le temps raison, mais d’avoir une justification pour chaque choix technique.

C’est pas beaucoup mais je pense avoir fait le tour ! J’ai décidé d’écrire ça suite à ce tweet, je me suis dit que ça serait un bon prétexte pour foutre dans le blog mon parcours!