De startup à entreprise rentable : quel chemin pour la tech ?

Le 26 Mai 2023, j’ai eu la chance de participer comme tous les ans au Devfest de Lille. Fini le Kinépolis, le Devfest a déménagé à Lille Grand Palais. Un super endroit, professionnel, accessible en transport, avec un espace partenaire immense ! On s’est senti à l’aise, et je ne doute pas que ça va donner des idées aux organisateurs pour les futures éditions. Une démarche éco-responsable, sans accroc, vraiment toutes mes félicitations aux organisateurs, c’est toujours un plaisir de retrouver l’écosystème Lillois.

Et cette année, pour la première fois, j’y étais présent en tant que conférencier.

J’ai pu partager un retour d’expérience sur ces dernières années chez Karnott, l’écosystème des startups, et les difficultés organisationnelles que nous avons pu rencontrer dans un contexte de rentabilité. L’occasion de raconter ce que nous avons collectivement mis en place, et j’espère de fournir quelques ressources utiles.

Mes slides : https://blog.bodul.fr/wp-content/uploads/2023/05/De-startup-a-entreprise-rentable-quel-chemin-pour-la-tech.pdf

Et peut-être le plus important, les ressources qui m’ont permis de l’écrire :

Merci encore pour ces belles rencontres et ces sourires.

La vie en ESN versus la vie en Startup : le revers de la médaille

Fin avril, avec Hubert Sablonnière, nous avons eu la chance d’être conviés par Cyril Lakech et Damien Cavaillès dans les bureaux de nos amis de WeLoveDevs pour deux heures de discussion. Pendant ces deux heures, avec Hubert nous avons retracé nos parcours en société de service, ce qu’elles nous ont apportés dans nos carrières, et ce qu’on a mis en place pour tenter de nous différencier et de progresser.

Deux heures, c’est long ! Si vous aimez les podcasts, écoutez nous en version audio 😉

Dans cet univers assez lisse que sont les sociétés de service, il s’agit bien de trouver un vecteur de différenciation pour faire son trou (vous faites partie « des devs »). Pour Hubert, c’est passé par l’expertise technique et son succès en tant que speaker reconnu. Pour moi c’est passé par mon travail dans les communautés tech par lesquelles je suis passé, et plus particulièrement le GDG Lille. Et c’est là qu’il y a débat : ça nous a demandé beaucoup de travail personnel sur notre temps libre, même si nos ESN respectives nous ont soutenues comme elles pouvaient, que ce soit en temps disponible (« non facturé ») ou en sponsoring… Bien entendu elles y ont gagné en visibilité et en image developer friendly. Bref, le débat n’est pas clos, n’étant pas tous égaux devant l’investissement personnel que chacun peut mettre en dehors des heures de bureau.

Au final avec Hubert nous étions d’accord sur les raisons qui nous ont fait changer de parcours. Nous voulions choisir les structures dans lesquelles nous travaillons, des structures avec un impact concret sur ses utilisateurs, conformes à nos valeurs. Et surtout, nous voulions nous sentir vraiment utiles à nos entreprises.

La recette du bonheur est bien entendu plus complexe…

Je tenais à mesurer un peu mes propos. Oui, j’aime mon job, mes collègues, mon impact dans l’entreprise et ce que nous faisons tous les jours. Cela dit, parlons un peu plus des différences entre mon ancienne vie de développeur en ESN et ma vie actuelle en startup.

Je parle des sociétés de service, parce que c’est mon expérience. Mais concrètement, la vie du développeur en société de service se résume beaucoup à la vie chez son client. Et statistiquement, vous avez plus de chance de travailler en sous traitance pour des grands comptes que pour une PME. Et c’est là un point important : mon article devrait sans doute s’appeler Grand Compte versus PME, quelles différences pour un développeur ?

Travailler en mode Projet

Je n’ai compris que très récemment à quel point l’équipe technique était une entité bien à part dans une grande structure.
Oui une équipe technique sur un projet peut avoir une pression folle, un management toxique, le projet peut-être compliqué et n’avoir aucun sens ni technique, ni produit, ni rien. On est tous d’accord. Mais mon propos est tout autre : la mission de l’équipe se résume souvent à réaliser un service bien défini.

Un input : le besoin, un output : le produit conçu

Bon, dans la vraie vie de la grosse entreprise ce n’est pas aussi binaire bien entendu. Votre projet évolue dans un environnement complexe, qui vous dépasse. D’un côté vous avez les moyens d’agir, la main d’œuvre, les outils. D’un autre côté, beaucoup de décisions sont prises à l’échelle de l’entreprise, et votre équipe ne pourra que les subir. Vous avez envie de faire bouger les lignes ? Il faudra vous confronter à une inertie très forte. Convaincre, sortir des KPI, construire sa roadmap autour de convictions fortes, et puis du jour au lendemain, non. Maintenant chez <GRAND_GROUPE> on fait comme ça et pas autrement. Ce manque de sens, d’autonomie et cette incapacité à changer les choses m’ont fait migrer vers la startup.

Et travailler en mode…. Startup ?

Quand j’ai rejoint Karnott, j’ai surtout rejoint deux personnes qui avaient une idée et la vision d’une agriculture connectée au service de l’agriculteur. Il faut se rendre compte qu’un « founder » en startup, c’est quelqu’un qui croit dur comme fer en son idée et qui met toute l’énergie pour y arriver. Et il en faut de l’énergie pour tracter tout le monde. De mon point de vue c’est un mélange d’enthousiasme, de force de persuasion, d’énergie, d’insouciance et de sentiment d’invincibilité. Soyons réalistes, je ne coche pas toutes les cases et je ne me lancerai jamais seul 🙂

La première conséquence de travailler avec des entrepreneurs, c’est qu’ils se réveillent souvent le matin avec une nouvelle idée. Un problème ne reste jamais longtemps un problème, ça se transforme en idée, voire en opportunité.

J’ai essayé de lister quelques difficultés courantes auxquelles il est difficile d’échapper dans une jeune startup. Peut-être que certains points sont communs avec les grosses entreprises mais je pense que ça sera toujours exacerbé par le contexte startup.

Premier point : ambitions, vélocité d’équipe et réaction face à l’échec

Les ambitions sont toujours énormes. On va bouleverser le marché, aller plus vite que les autres, faire les choses mieux avec une expérience utilisateur incroyable. On fait du LEAN, on sort un MVP, on trouve nos premiers utilisateurs, on se sent fort. On a de la traction (croissance), et maintenant il faut convertir. Faire de son MVP un produit qui a de la gueule… Il n’empêche qu’on est toujours 3 développeurs, que les stories s’allongent à l’infini, et que les idées arrivent toujours en nombre.

Viennent aussi les premières désillusions commerciales. Il faut changer de fusil d’épaule, alors qu’on avait entamé le super chantier tech dont on parlait depuis des mois. Hop, on met tout ce travail dans un tiroir, et on repart d’une feuille blanche. Moralement, techniquement, c’est dur.

Les équipes techniques ont besoin de stabilité et de sérénité : ce n’est pas l’apanage d’une startup.

Second point : la variété de sujets à traiter

Cette capacité à mettre son travail en suspens pour travailler sur autre chose, ça n’est pas lié qu’au produit. Une startup, c’est une entreprise complète avec son équipe commerciale, sa compta, sa gestion du support, son comité de pilotage… Une startup, c’est une seule équipe dont vous faites partie. Et cette équipe, pour avancer sur plein de sujets, elle a besoin de vous. Vous n’aimez pas faire du support ? Le marketing / SEO n’est pas votre panacée ? Faire des tableaux de bord de suivi ne vous intéresse pas vraiment ? Et quid de la facturation ? Pourtant on a vraiment besoin de vous, et c’est toujours urgent. Alors il faut être malin, trouver les solutions les plus efficaces pour mettre tout en place à moindre coût. D’ailleurs ce n’est pas pour rien que beaucoup de solutions no-code émergent ! Objectif : réduire la frustration des différentes personnes de la startup en les autonomisant, et permettre à l’équipe produit de se concentrer sur… le produit.

Chez Karnott, nous sommes friands de plein de SaaS pour ne pas avoir à tout faire nous-même, mais ce n’est pas magique. Et quand quelqu’un à côté de vous a besoin d’aide sur un sujet hors de votre scope principal, et bien vous l’aidez, c’est normal.

Troisième point : la charge mentale

Si vous êtes l’archétype du développeur le casque vissé sur la tête qui ne supporte pas être dérangé tant qu’il n’a pas fini sa tâche, je doute qu’une jeune startup soit faite pour vous. On peut vite être noyé par une myriade de demandes en tout genre, autour du produit mais pas que, et urgentes mais pas que. On s’implique sur nos tâches en cours et on essaie de bien les faire. Ça, ma carrière en ESN m’a appris à gérer la chose à-peu-près correctement. Mais par dessus tout ça, il y a la vie de la startup, les réflexions sur le produit, les défaites et les victoires de chacun, les changements de cap, les implications financières, les perspectives et les imprévus. Je vois ça comme un carrefour permanent, et on doit choisir le meilleur chemin : un océan de possibilités dans lequel il est possible de se noyer à tout moment.

Une autre pression permanente est celle de la réussite. Vous êtes peu nombreux, pressés, et vous devez sortir un produit de qualité. Vous savez que ces trois ingrédients ne font jamais bon ménage. Pouvoir mettre en production n’importe quand ne veut pas dire proder n’importe quoi : personne d’autre que vous ne sera là pour réparer une bêtise à 2 heures du matin si toute l’infra tombe. Vos actions ont un impact sur vos clients, mais aussi sur vos collègues. C’est un point totalement sous estimé par tout le monde, jusqu’au jour où rien ne se passe comme prévu.

Mais alors comment gérer tout ça ? On m’aurait menti, c’est tout nul la startup ?

Cet article n’est pas un article contre les startups, c’est une mise en garde. Je n’ai jamais entendu parler d’une réussite incroyable en startup où le chemin a été tout tracé, sans que les équipes n’aient douté, ou galéré à un moment.

Lorsque Damien Cavaillès nous demande l’ingrédient du bonheur, je réponds « avoir un travail où on peut avoir de l’impact », et je le pense toujours. Être confronté tous les jours à un océan de possibilités, c’est difficile, mais c’est aussi la chance de faire de vrais choix, pour le meilleur ou pour le pire.

Quelques conseils, pour ce que ça vaut :

  • Prenez soin les uns des autres. La charge mentale n’est pas une invention, ça peut être vraiment difficile. Je pense qu’un élément de toxicité, c’est de penser que la personne à côté de vous peut tout encaisser.
  • On foire ensemble, on réussit ensemble. Autonomisez les équipes, ne cherchez pas à tout contrôler. Quand tout le monde est dans son rôle et se sent libre de ses choix, la personne avancera sans contrainte et sera plus efficace. Et puis si vous êtes son manager, cela vous déchargera d’un poids. L’échec ne sera pas son échec, et la réussite ne sera pas la votre. On vit l’aventure ensemble. L’équilibre est à trouver. En tant que CTO, je cherche à distiller la bonne quantité d’information pour rendre les équipes autonomes sans pour autant les surcharger mentalement. Exercice de funambule.
  • Identifiez bien les rôles de chacun. Pour que le point précédent réussisse, il me paraît important que chacun sache exactement quelle est sa place dans l’entreprise. Ne nous marchons pas sur les pieds…

Conclusion

J’adore les gens avec qui je bosse, j’adore mon job. En 2021, en tant que développeur, nous avons le luxe de pouvoir choisir dans quel contexte travailler. Une ESN n’est pas un mauvais choix, une grosse entreprise non plus, tout comme la startup. C’est juste différent, et il est important d’avoir toutes les clés en main pour choisir.

Il reste une dernière catégorie, l’entreprise de taille moyenne (50+) avec une belle équipe technique. Sur le papier, j’ai l’impression que cette typologie apporte une certaine stabilité dans l’équipe tout en donnant les moyens d’agir à son échelle. Prochaine étape pour Karnott?

L.B.

CTO chez Karnott, une 3ème année dont je me souviendrai

Tous les ans, je fais un petit article résumant mon expérience chez Karnott, année après année. En toute logique j’aurais du rédiger mon article cet été, mais avec ce premier semestre si éprouvant, je n’ai pas eu le courage de mettre tout ça par écrit.

Dernier bilan: septembre 2019. Nous avions créé un début de plateforme technique (qui s’est avéré plutôt payant), mais nous nous posions beaucoup de questions autour de la création produit, de la cible cliente, de la complexité applicative, et un poste de Product Owner / Product Manager était ouvert pour nous aider. La bonne nouvelle, c’est que nous avons trouvé la bonne personne (Coucou Sarah!). La mauvaise, c’est qu’elle est arrivée début 2020, et pour un rôle aussi transverse, elle aurait pu être plus chanceuse sans un violent confinement et une situation économique proche du flou total.

Concrètement, dans une startup de moins de 5 ans, comment gérer une situation comme ce que nous avons vécu cette année ?

Début 2020, nous avions de belles ambitions en terme d’investissement. Je m’imaginais déjà avec une équipe incroyable de plusieurs dizaines de personnes dans tous les domaines hype, un pôle R&D à la pointe, et des claviers mécaniques pour tout le monde (ou pas 🤓 ). Mais voilà, lors de cette soirée si marquante de Mars 2020, après ce discours très dur du président, tout s’arrête, et tout le monde se regarde en chien de faïence.
Très vite, nos deux fondateurs prennent une décision capitale : il faut réduire la voilure. On doit dépenser le moins possible, ou tout du moins le plus raisonnablement possible, ne sachant pas de quoi demain sera fait.

Il est l’or ! L’or de se réveiller !

La suite leur aura clairement donné raison, c’était la bonne chose à faire au bon moment.

Le mot d’ordre pour toute l’entreprise : serrons les dents ensemble, et soyons malin.

Je ne parlerai pas de stratégie commerciale, mais en résumé, nous avons tout fait pour sortir de nouveaux produits rapidement, nous ouvrant d’autres marchés qui n’étaient pas forcément prévus initialement. Mais encore faut-il être en capacité de sortir de nouveaux produits, n’est-ce pas? Alors, quels ont été les faits marquants ?

Le télétravail

Vous l’avez tous plus ou moins vécu : se retrouver du jour au lendemain à devoir travailler de chez soi, sans l’équipement adéquat mais avec les enfants sur les genoux! J’ai personnellement de la chance habitant une maison avec un endroit où pouvoir m’isoler. De toute façon, travailler avec un enfant dans les parages, c’est vraiment impossible! J’ai très vite cherché à m’équiper d’un micro pratique, d’une Webcam (malgré l’incroyable pénurie), et dernièrement d’un vrai fauteuil. Double chance pour nous, toute l’équipe pouvait travailler dans de bonnes conditions. Nous avons juste réquisitionné nos écrans du bureau, et voilà.

Le chat, cet assistant indispensable au télétravail. Il a même sa propre chaine twitch !

Et maintenant, nos outils :
Discord est devenu un élément central de l’équipe. Ce que nous apprécions, c’est le fait de pouvoir rester dans un canal, et si quelqu’un veut venir discuter, il peut. On est un peu comme dans un bureau virtuel, sans avoir à payer le prix démesuré de Sococo.
Google Meet pour les réunions avec quelqu’un d’extérieur à l’entreprise, ou avec caméra / partage d’écran. Même en payant, j’ai toujours trouvé la qualité de Discord en retrait pour vraiment faire du partage d’écran de qualité.
Metroretro est un outil génial pour faire ses rétrospectives d’équipe en remote. C’est simple, intuitif et ludique.
VSCode Live Share que nous avons utilisé plusieurs fois pour faire du pair programming. Etant le seul à utiliser IntelliJ pour le backend dans l’équipe, je n’ai malheureusement pas pu expérimenter leur nouveau plugin autant que je l’aurais souhaité.

Pas mal d’entreprises ont fait preuve de solidarité et ont partagé leurs retours d’expérience tout au long de l’année. On remerciera par exemple Zenika qui a maintenu à jour de précieuses ressources.

Même pendant le déconfinement, nous avons fait le choix fort de continuer en télétravail. Nous y avons trouvé plusieurs avantages inattendus pour l’équipe et l’entreprise.
En premier lieu, nous avons découvert à nos dépens à quel point nous manquions de rituels d’entreprise planifiés et nous avons tâchés d’y remédier. Oui les discussions autour d’une machine à café, c’est chouette et il s’y dit souvent beaucoup de choses, mais ça a l’inconvénient d’être impromptu et « éphémère ». Dorénavant, chaque pôle (Technique, CSM, Sales…) se parlent et échangent de façon ritualisée toutes les semaines.
Nous avons aussi compris qu’une culture de la documentation, dans une entreprise, ne s’improvise pas. Toutes ces discussions informelles méritaient d’être tracées, des comptes rendus rédigés. Ce serait mentir de dire que ce point est complètement résolu, mais nous faisons de notre mieux. Entre autres choses, le concept d’ADR (Architecture Decision Record) m’intrigue et m’attire, mais je reste circonspect sur la bonne façon de l’implémenter (où ? comment ?).

Une difficulté liée au télétravail, c’est la perte d’unité entre les membres de l’entreprise. Autant l’équipe tech se parle tous les jours, autant les autres membres du bureau nous manquent. Comment garder un esprit d’entreprise au delà de son équipe ? Nous avons mis en place des visios journalières pour discuter et échanger, mais il manque quelque chose. C’est clairement un point à améliorer…

Malgré tout cela, je prends le pari de continuer sur ce chemin. Je suis d’ailleurs ravi de voir l’équipe tech grandir en 2021 avec des recrutements déjà bouclés, dont un non Lillois !

Le rôle de CTO dans ce contexte

Cette année, j’ai découvert la communauté Tech Rocks (dont je conseille chaudement le podcast) et j’ai accepté quelque chose de fondamental : le métier de tech leader, ou de CTO, est quelque chose qui dépend profondément du contexte dans lequel vous évoluez. Attention, je n’ai pas du tout la prétention d’avoir le même métier que le CTO de Criteo, Leboncoin ou même des entreprises bien plus modestes.

Quand on démarre une startup, on est avant tout un développeur à tout faire. Et puis on recrute, on devient un peu manager. Et puis l’entreprise grossit, on devient ambassadeur du produit auprès des autres pôles, on défend nos choix, on trouve des compromis. Un métier de diplomate en quelque sorte, où on défend l’équipe technique, tout en cherchant le bénéfice de tous.

Alors dans ce contexte, il a fallu se battre pour que l’équipe ait toutes les cartes en main pour produire de la valeur malgré la situation. Et tout le monde a joué le jeu (merci mille fois) j’ai la chance d’être hyper bien entouré. L’un des changements opéré, c’est d’avoir proposé en tant que manager des entretiens individuels à tout le monde de façon plus régulière. Nous ne le faisions pas, et je pense qu’avec la distanciation c’est devenu indispensable. C’est un chouette moment d’échange.

Il y a beaucoup de points que je souhaite améliorer pour 2021 dans mon rôle de CTO :
– Donner une meilleure visibilité dans le temps sur ce que nous produisons et allons sortir, c’est indispensable, malgré ma profonde réticence. Dans un environnement mouvant comme une startup, avec une quantité de tâches en parallèles où les devs doivent aider (support / facturation / marketing…), nous avons du mal à connaître à l’avance le temps dédié au développement produit. Comment estimer quoi que ce soit dans ces conditions ? Nous devrons trouver des solutions.
– Mieux structurer l’emploi du temps de chacun pour donner une véritable place à la R&D. Sans innovation point de salut.
– L’agriculture met un point d’honneur à apporter une traçabilité bien documentée à son travail, je dois m’en inspirer.

Et d’un point de vue perso ?

Quoi qu’il se passe en 2021, on peut se douter 2020 aura été une année charnière pour tous. Ceux qui me connaissent savent que je ne suis pas adepte d’un positivisme à outrance, mais j’ai quand même essayé de tirer quelque chose de cette année.

Tout d’abord, j’ai pris soin de moi. Finie la junk food d’Euratechnologies ! (Adieu Pick it up et les food trucks!). Quitte à être chez moi, et avoir une douche à disposition, j’ai décidé de faire du footing à mon rythme de sportif du dimanche, et de manger plus sainement. Le bilan ?
Plus de 600 km parcours en footing depuis Mars, et 15 Kgs perdus. J’en suis plutôt fier.

Faites du footing, 1km autour de chez vous, moins de 20minutes !
Des hauts et des bas, mais la tendance est là…

Mais c’était aussi l’occasion de passer du temps avec ma fille de 3 ans comme jamais, de la voir progresser tous les jours et de se nourrir de son innocence. Pour elle, rien d’anormal à ce que nous avons vécu, et ça faisait franchement du bien au moral.

Qui a dit que c’était un poids sur les épaules ?

Cela peut paraitre aussi plus anecdotique, mais j’en ai profité pour me désintoxiquer de Twitter ou des réseaux sociaux en général. Nous pourrions beaucoup discuter de ce sujet, mais je suis maintenant persuadé que ce lieu d’échange n’a malheureusement plus grand chose à apporter au débat public.

Conclusion

J’écris ces mots le 21 décembre après une année délirante. Chez Karnott, ce sont des milliers de balises vendus, plus de 10 Millions de kms parcourus cette année par nos clients et plus de 2 Millions d’Hectares travaillés. Beaucoup de discussions formelles et informelles, des visios qui foirent, des soucis d’internet, des rigolades et quelques moments très difficiles. Ce n’était pas gagné d’avance…
Alors pas de longue conclusion, juste un petit conseil : Sachez vous adapter, ensemble.

Prenez soin de vous et de vos proches !
A l’an prochain,
LB

L’évolution de carrière dans l’informatique

toulouseLe week-end dernier, j’étais à Toulouse, retour dans mon ancienne vie, mes anciens collègues, aujourd’hui mes amis. C’était bien entendu l’occasion de parler potins, ragots, évolutions, savoir qui a démissionné et où chacun est parti.  C’était aussi l’occasion de remettre un débat sur le tapis : pour nous, développeurs, quelles possibilités d’évolution de carrière ? Mais au fait, qu’est ce que c’est l’évolution de carrière ? Comment ça se mesure ?
Continuer la lecture de « L’évolution de carrière dans l’informatique »