Retours sur ma première année de directrice technique d’une startup

Après plusieurs années dans le monde des agences web comme développeuse, puis consultante (alias « pompière de la prod »), je suis aujourd’hui l’heureuse CTO d’une startup, Yelda.

Régulièrement, on me demande comment s’est déroulé ce changement de poste, et ce que cette expérience m’a appris, et c’est pourquoi j’ai pensé que cet article pourrait vous intéresser !

Lancer un projet : une question de priorités

Le volume de décisions à prendre en permanence fut probablement ce qui m’a le plus frappé au démarrage de cette aventure.

Dans une agence comme celle dans laquelle je travaillais, la priorité était dictée par le client. Nous jonglions avec les projets, et nous devions déployer de nombreuses applications dans des temps relativement courts, sans nous projeter sur le long terme.

Dans une startup qui démarre, le triptyque « qualité, coût, délai » est conservé mais les problématiques ont changé. Nous développons un seul produit, avec une vision long terme. Il faut produire vite, bien et à bas coût (au début en tout cas) parce qu’il n’y a pas de clients, et peu d’argent.
C’est le début des grands arbitrages, et c’est vous qui allez les faire !

Établir son socle technique : un choix pas si anodin

La Grande Question n’est plus « Quel est le sens de l’Univers ? » mais « quelles technologies choisir ? »

  • Des technologies adaptées à vos problématiques, que vous maîtrisez, qui permettront d’arriver à une démo au plus vite.
  • Des technologies qui plaisent (bonjour le marché ultra tendu des codeurs et codeuses 👋), mais qui sont éprouvées et survivront à l’épreuve du temps.
  • Des technologies qui permettront de monter rapidement en puissance et faire grandir l’équipe facilement.

Ce projet, c’est votre bébé. Vous participez à sa conception et chaque choix a été minutieusement pesé et réfléchi. Vous vous projetez dans l’avenir avec l’espoir de lui éviter la dette technique. Et pourtant, il faudra savoir faire de grosses concessions. Savoir coder très (trop) vite de nouvelles fonctionnalités pour ce premier client qui va peut-être signer, ou au contraire jeter de grands pans de codes car le market fit a bougé !

On dit que 80% du code sera réécrit, mais on oublie aussi que du code écrit pour une simple démonstration reste parfois en production des décennies ! Peu de décisions initiales sont fatales, mais on peut en payer le prix durant des années.

Concilier technique et business : le grand dilemme

Ça y est, le produit commence à prendre de forme. Il manque 95% des fonctionnalités, mais votre co-fondateur peut faire quelques impressions d’écran et il vend déjà des options que vous n’avez pas encore programmées.

D’ailleurs, il revient tous les trois jours d’un rendez-vous super-intéressant et révélateur : il nous faut absolument cette nouvelle fonctionnalité pour demain.
Malheureusement il n’y a que 24 h dans une journée, et vous aviez prévu d’enfin démarrer vos tests unitaires et d’automatiser cette tâche qui vous fatigue.

Encore une fois, il va falloir arbitrer entre priorités business et techniques. Vous êtes certes garant·e de la qualité, mais vous devez être honnête et vous projeter aussi dans les préoccupations de retour sur investissement de vos partenaires, qui doivent eux-même vous faire confiance.

Les choix ne sont pas simples, et il faudra parfois de longues discussions pour trancher, mais au final, cela vous aidera à affiner votre vision du produit. Quand nous n’arrivons vraiment pas à décider, nous nous posons cette question « Qu’est-ce qui va apporter le plus de valeur, compte tenu de nos priorités actuelles ? », et généralement la réponse finit par émerger !

Oui, il faut absolument que vous preniez un jour pour refactoriser une partie du code qui va devenir inmaintenable et source de bugs.
Oui, il est essentiel que cette fonctionnalité soit prête pour mardi, elle est déterminante pour vos potentiel·les investisseur·es.
Et tant pis pour cet outil qui vous tenait à cœur, ce sera pour une prochaine fois.

Monter l’équipe : une histoire de technique et de valeurs

Notre équipe est un peu originale :

  • Un développeur senior (Damien)
  • Un développeur senior non-francophone (Vishnu), basé en Inde
  • Une développeuse en alternance, présente 3 jours par semaine (Naomi)
  • Un CEO (Thomas), à cheval entre la province et Paris, et, accessoirement, père de deux jeunes enfants, de deux entreprises et de plusieurs BDs (CommitStrip)

Recruter : pensez au réseau

Vous le répétez à longueur de temps, vous avez beau faire des concessions, vous ne pouvez pas aller plus vite que la musique. Il va falloir recruter !

Coup de chance, nos trois premiers recrutements proviennent de contacts : anciens collègues et rencontres en conférences.

Damien a été recruté via une célèbre application de mise en relation d’entreprises, et de développeurs et développeuses. Bien que cette solution soit relativement efficace, elle a un coût important (environ 20% du salaire brut annuel), demande du temps et une réactivité importante, afin de ne pas laisser passer les profils intéressants.

Nous avons aussi travaillé quelques mois avec un stagiaire en reconversion. Pour moi, qui adore passer du temps à former et faire monter en compétence mes équipes, cette expérience a été douloureuse. Ce profil, bien que doué, nécessitait un suivi important que je ne pouvais pas apporter à cette époque.

Je savais déjà que le recrutement était un point clef, mais pour nous, ce furent probablement les décisions les plus structurantes.

Accueillir de nouveaux membres : une nouvelle dynamique à mettre en place

Félicitations, vous êtes maintenant CTO d’une grande équipe d’une personne ! Après avoir démarré votre projet seul·e, il va maintenant falloir avancer collectivement. Pas de grandes surprises ici (quoique).

A mes yeux, le plus gros défi est de faire le nécessaire pour que la nouvelle recrue s’approprie les méthodologies, les outils et l’ensemble du code rapidement et naturellement, tout en n’y consacrant pas trop de temps moi-même.

À notre échelle, voilà une méthode qui a bien fonctionné

  1. Classique présentation du produit, des équipes et des processus
  2. Mise à niveau technique, via le partage de mots-clefs et de documentation
  3. Présentation du projet technique, puis mise en place d’une version locale en autonomie, grâce à la documentation technique
  4. Session d’échange sur le projet : questions sur les choix technologiques et les fonctionnalités. L’occasion d’ouvrir de nouveaux tickets grâce à ce nouveau regard !
  5. Premiers commits : correction et amélioration de la documentation suite au point précédant
  6. Correction de premiers bugs simples n’impliquant qu’une seule technologie, et ayant peu d’effets de bord
  7. Développement d’une première tâche simple, avec revue de code
  8. Premières revues de code des autres développeurs et développeuses (moi inclue)
  9. Correction de bugs plus complexes
  10. Développement d’une tâche complexe
  11. Boire un verre et un café mais pas forcément dans cet ordre

Le tout en intégrant la nouvelle recrue dès le premier jour à la conception et les prises de décisions liées au produit.

Pour ma part, au-delà de l’excitation naturelle liée à l’agrandissement de l’équipe, j’ai toujours eu énormément hâte d’accueillir de nouveaux membres afin de confronter mes décisions techniques à un nouveau regard, élément qui m’a beaucoup manqué les premières semaines.

L’arrivée du premier membre expérimenté dans l’équipe a aussi été une source d’inquiétude : qu’allait-il penser du code, de sa responsable technique ? Mais au final tout s’est bien passé, notamment parce que parmi les valeurs que nous recherchons dans nos équipes, se trouvent l’assertivité, la passion et l’envie de progresser.

Construire une culture d’entreprise : une réflexion à mener

Dans une structure de cette taille, il n’y a pas de responsable des ressources humaines. C’est donc aux co-fondateurs que revient la responsabilité de définir la culture de l’entreprise.
Dès le départ, Thomas et moi avons tenu à définir les traits nous recherchions chez nos futurs recrues.

Thomas est attaché à des qualités comme le sérieux, le focus, l’excellence et le vivre ensemble.

Pour ma part, je tiens au respect, à l’humilité, à l’empathie et la solidarité. L’équipe est un tout qui doit savoir mettre de côté son ego pour avancer ensemble vers son meilleur potentiel.

C’est avec ces objectifs que nous avons accueilli nos différentes recrues et que nous leur avons fait partager notre vision.

Suivre un rythme de croisière : un quotidien pas si effrayant

Finalement, le métier de directrice technique d’une petite structure est relativement similaire à celui d’un chef d’équipe. Les responsabilités techniques et humaines sont proches, la routine aussi.

Choisir son mode d’organisation : une direction pour le futur

Comme beaucoup, nous avons adapté la méthode agile comme nous le pouvions, et nous avons nos petites particularités qui fonctionnent à notre échelle :

  • Tous nos supports de travail (maquettes, revues de code, spécifications, échanges oraux et écrits) sont en Anglais depuis le premier jour. Nous avons été contraints de prendre cette décision pour Vishnu qui ne parle pas Français, mais quand je regarde autour de moi, je constate que c’est une habitude bien plus facile à mettre en place au début de la vie d’une entreprise.
  • Étant une équipe technique, nous valorisons la concentration et évitons autant que possible les distractions non souhaitées comme les réunions inutiles ou les interruptions intempestives. Les urgences sont rares, nous ne travaillons pas tous dans les mêmes locaux et c’est donc naturellement que nous avons adopté une communication asynchrone (essentiellement messages sur slack).
  • L’écrit a ses limites : nous nous appelons tous les matins pour un “daily meeting” (en Anglais), ainsi que dès qu’une conversation écrite dépasse les 5 échanges.
  • “Un grand pouvoir implique de grandes responsabilités” : vous êtes maintenant le dernier rempart en cas de catastrophe technique majeure. J’aurais aimé vous dire que grâce à nos tests automatisés, nous sommes sûrs de ne jamais déployer de bugs, mais La Roadmap en a décidé autrement. Je rajoute de l’outillage au fur et à mesure, mais, si c’était à refaire, je pense que j’y aurais consacré plus de temps au début !
  • Je ne pense pas avoir besoin de vous vanter les mérites de la revue de code entre collègues, mais j’aimerai rappeler que déléguer et partager (cette tâche, comme d’autres) entre les membres de votre équipe vous fera gagner beaucoup de temps, et rendra vos collègues suffisamment indépendants pour que vous puissiez espérer partir en vacances !

Créer et faire tourner une entreprise : un tout autre métier

J’ai assez peu parlé d’administratif et de vente, tout simplement car ce sont des tâches que prend en charge mon co-fondateur. Il m’arrive ponctuellement d’intervenir lors de rencontres avec des fonds d’investissements afin de présenter notre feuille de route ou de détailler nos avantages technologiques, mais l’essentiel est géré par Thomas. Et bien que ne nous n’intervenions pas dans ce domaine, il fait partager tout de même à l’ensemble de l’équipe ses différentes missions, ainsi que les avancées de l’entreprise dans sa recherche de fonds.

Prendre du recul : la clef de la confiance

Démarrer un projet entrepreneurial de zéro comporte une certaine pression. Heureusement le célèbre “Fake it until you make it1 est là pour me rappeler qu’on ne peut pas toujours être sûr·e de soi, et qu’il faut aller de l’avant et saisir les opportunités.

J’ai d’ailleurs eu la chance de démarrer cette aventure avec Thomas, que je connais depuis le début de ma carrière, et aux côtés duquel j’ai pris confiance en moi et qui confirme que le choix d’un associé est essentiel. Former une équipe solide qui fonctionne, être honnête, pouvoir se faire confiance, être à l’écoute et se soutenir…ces liens sont un atout inestimable au quotidien.

Il m’a aussi initié à deux de ses méthodes de travail favorites : “Get Things Done” et le focus2. Être entrepreneur·e signifie une charge de travail importante, et il est important de s’organiser efficacement afin de ne pas se laisser dépasser. J’ai, par exemple, dû réduire le nombre de conférences auxquelles je participais, car le rythme était trop important pour moi, mais mon organisation me permet malgré tout de faire du sport trois fois par semaine.

Ainsi, il est important de bien s’entourer, et rappelez-vous que vous n’êtes pas seul·e dans cette galère : des milliers de jeunes entrepreneur·es traversent les mêmes difficultés que vous. De nombreuses ressources sont là pour vous accompagner. Par exemple, participer à des Meetups, des conférences, des Slacks dédiés, ou rejoindre un incubateur (StationF), m’ont permis de d’échanger autour de problématiques que je n’aurai probablement pas anticipées !

Maintenant je me prépare à ces nouveaux défis, et j’espère bien en profiter pour apprendre de nouvelles choses et vous les faire partager.

Bonnes fêtes et lancez-vous !