Transcription
Être moi, 42 ans, ingénieur backend senior dans une startup technologique, gagnant 165 000 $. J'y suis depuis les débuts, employé numéro huit. L'entreprise s'appelle Cascade Platform, elle construit du SaaS d'entreprise. Logiciel de gestion de projet et de collaboration pour les grandes entreprises. Trois ans à construire ce produit, enfin prêt pour le marché. 85 employés, vient de lever 8 millions de dollars en financement de série A. Un client majeur signé pour le lancement. Une entreprise du Fortune 500, contrat de 2,4 millions de dollars. Le jour du lancement est prévu pour le 15 novembre 2024. Tout est sur la bonne voie, le produit est stable, l'équipe fonctionne à plein régime. Puis le conseil d'administration a embauché une nouvelle CTO nommée Lauren, 39 ans, venue du département diversité d'une grande entreprise technologique. Pas de l'ingénierie, du côté RH de la technologie. Lors de sa première réunion générale, elle annonce sa vision. Cette entreprise construira un type de culture d'ingénierie différent. Une qui centre les femmes et élimine la culture toxique des "bros". Je suis assis là avec mon ordinateur portable, pensant, quelle culture toxique ? Nous sommes huit développeurs seniors, 12 développeurs juniors, trois ingénieurs QA. Nous travaillons dur, livrons du code, personne n'est toxique. Une femme dans l'équipe senior, Sarah, c'est une excellente architecte. Je m'apprête à voir l'intégralité de la plateforme s'effondrer parce que la nouvelle CTO confond idéologie et ingénierie. Laissez-moi vous montrer exactement comment le jour du lancement est devenu un désastre. Septembre 2023, Lauren commence en tant que CTO. L'entreprise était en bonne forme avant son arrivée. Le produit était achevé à 85 %, stable, testé. L'équipe de développement senior, huit personnes, sept hommes et une femme. Tous là depuis deux à trois ans, ont construit l'intégralité de la plateforme. Je suis l'ingénieur backend principal, je gère l'architecture API et base de données. Marcus, 44 ans, dirige l'équipe frontend, expert React. David, 41 ans, devops et infrastructure, maintient tout en marche. James, 38 ans, sécurité et systèmes d'authentification. Kevin, 43 ans, intégrations et API tierces. Ryan, 37 ans, systèmes de traitement des paiements et de facturation. Tom, 40 ans, fonctionnalités en temps réel et architecture de WebSockets. Sarah, 36 ans, architecture globale et décisions techniques. Nous connaissons tous la base de code sur le bout des doigts. Nous l'avons construite à partir de zéro, chaque ligne, chaque décision. Première semaine de Lauren, elle observe nos stand-ups. Prend des notes, ne dit pas grand-chose, elle observe. Deuxième semaine, elle commence à poser des questions. Pourquoi tous les ingénieurs seniors sont-ils des hommes sauf Sarah ? Le PDG explique, nous avons embauché les meilleurs candidats qui ont postulé. Sarah est brillante. Le genre n'a joué aucun rôle dans les embauches. Lauren, le fait que vous ne voyiez pas le problème est le problème. Troisième semaine, elle propose un audit culturel. Fait venir un consultant extérieur pour interviewer tout le monde. Le consultant pose des questions étranges sur la sécurité psychologique. Vous sentez-vous à l'aise pour contester les ingénieurs seniors ? Avez-vous vécu du "mansplaining" lors des revues de code ? Je me dis, nous sommes des ingénieurs, nous nous disputons sur le code toute la journée. C'est littéralement le travail, la résolution collaborative de problèmes. Octobre 2023, Lauren appelle pour des réunions individuelles. Elle rencontre chaque développeur senior en privé. J'entre dans son bureau, elle a un dossier avec des notes. J'ai examiné vos commentaires de revue de code. Certains de vos retours pourraient être perçus comme condescendants. Pouvez-vous me donner un exemple ? Vous avez dit à un développeur junior que sa conception d'API nécessitait une restructuration. Vous avez utilisé des phrases comme "cela ne sera pas évolutif" et "problème fondamental". Je suis confus que la conception de l'API ait eu de réels problèmes. Elle m'a demandé de la revoir, j'ai signalé des problèmes. Lauren, ce n'est pas ce que j'ai dit, c'est la façon dont je l'ai dit. Comment aurais-je dû le dire ? Plus collaborativement, moins autoritairement. Je quitte cette réunion avec un mauvais pressentiment. Je parle à Marcus, il a eu une conversation similaire. David aussi. Tous les développeurs seniors reçoivent le même message. Nos revues de code sont trop agressives. Nos normes techniques sont intimidantes. Notre expertise crée un déséquilibre de pouvoir. Sarah, la développeuse senior femme, a également eu le même discours. Elle me dit en privé, c'est de la folie. Je revois le code exactement de la même manière qu'eux. Soudain, mes commentaires sont aussi un problème. Novembre 2023, Lauren annonce une nouvelle initiative. Nous allons construire une culture d'ingénierie plus inclusive, en commençant par des sessions de responsabilisation du leadership. Tous les vendredis, les ingénieurs seniors se réunissent avec elle. Discutent de la façon dont nous nous présentons aux développeurs juniors. La première session est gênante, beaucoup de jargon RH. "Centre leurs voix, validez leurs expériences." Je suis ingénieur backend, je valide le code avec des tests. Pas sûr de savoir comment valider l'expérience de quelqu'un. Deuxième session, Lauren évoque un incident spécifique. Un développeur junior a soumis une PR avec une vulnérabilité d'injection SQL. Je l'ai rejetée immédiatement, j'ai écrit un commentaire détaillé expliquant pourquoi. Le problème de sécurité pourrait compromettre toute la base de données. Le développeur junior s'est senti attaqué par mon commentaire. Lauren, vous auriez pu être plus douce dans vos retours. Il y avait une vulnérabilité d'injection SQL, gravité neuf sur dix. C'est un problème de sécurité urgent, j'ai été appropriément ferme. Lauren, l'intention n'a pas d'importance, l'impact si. Il s'est senti diminué par votre ton. Marcus intervient. Nous sommes des ingénieurs, pas des thérapeutes. Si le code a un défaut critique, nous devons le dire clairement. Lauren écrit quelque chose dans son carnet. Je peux dire que Marcus vient de se désigner. Décembre 2023, le coup de grâce. Lauren convoque une réunion d'urgence, tous les développeurs seniors. Le PDG est là aussi, l'air mal à l'aise. Lauren présente son plan, réinitialisation de la culture d'ingénierie. Nous restructurons l'équipe d'ingénierie senior. À compter du 1er janvier, les postes actuels de développeur senior sont éliminés. De nouveaux postes seniors seront publiés, tout le monde peut postuler à nouveau. La pièce devient silencieuse. Tout le monde assimile cela. David demande, vous viriez toute l'équipe senior ? Le PDG intervient, pas de licenciement, restructuration. Tout le monde est invité à postuler pour les nouveaux postes. Lauren, nous construisons une équipe qui reflète nos valeurs. Sarah demande, quelles valeurs ? Nous avons construit toute cette plateforme. Lauren, une plateforme construite avec une culture toxique doit être reconstruite avec des fondations saines. Je n'arrive pas à croire ce que j'entends. Nous sommes à six semaines du lancement, un client majeur attend, et elle veut remplacer toute l'équipe d'ingénierie senior. La réunion se termine, nous retournons tous à nos bureaux, sous le choc. Ce week-end-là, les huit développeurs seniors ont un appel d'urgence. Nous discutons des options, de ce que cela signifie. Marcus, elle va nous remplacer par des développeurs juniors. Toutes des femmes, toutes inexpérimentées, toutes idéologiquement alignées. Sarah est d'accord. Je suis une femme et je vois ce qui se passe. Il ne s'agit pas de mérite, il s'agit de contrôle. Nous décidons d'attendre, de voir comment se déroule le processus de réapplication. Peut-être que nous nous trompons, peut-être que c'est une restructuration légitime. Janvier 2024, le processus de réapplication commence. Nous postulons tous pour les nouveaux postes seniors. Les entretiens sont bizarres, plus RH que techniques. Lauren pose des questions sur l'engagement envers une culture inclusive. Comment formeriez-vous les développeurs juniors différemment ? Que signifie la sécurité psychologique pour vous ? Presque aucune question technique. Rien sur l'architecture, l'évolutivité, la sécurité. Juste l'adéquation culturelle et l'alignement idéologique. Deux semaines plus tard, les décisions sont annoncées. Les huit développeurs seniors originaux sont rejetés. Pas un seul d'entre nous n'obtient de poste senior. Même pas Sarah, la femme qui a architecturé tout le système. Nouvelle équipe senior, six personnes, toutes des femmes, toutes de niveau junior. La plus expérimentée a trois ans d'expérience totale. Plusieurs ont moins de deux ans. Elles sont intelligentes, capables, mais elles sont juniors. Elles ne connaissent pas notre base de code, nos décisions d'architecture. Ne comprennent pas pourquoi nous avons construit les choses de certaines manières. Février 2024, l'équipe senior originale démissionne. Nous donnons deux semaines de préavis, professionnellement. Lauren semble heureuse que nous partions. Nouveau départ, nouvelle culture, meilleure fondation. Le PDG a l'air inquiet, mais ne dit rien. Il est coincé par le conseil d'administration qui a embauché Lauren. Mon dernier jour, je documente tout ce que je peux. Rédige un guide de 40 pages sur l'architecture backend, les schémas de base de données, les modèles d'API, les considérations d'évolutivité. Je le laisse dans le wiki de l'entreprise, en espérant que quelqu'un le lise. Marcus fait de même pour le frontend. David documente toute l'infrastructure devops. Nous essayons de laisser l'entreprise dans une bonne position, même si l'entreprise vient de nous arnaquer. Le jour du lancement est toujours prévu pour le 15 novembre. Neuf mois avant, la nouvelle équipe a le temps d'apprendre. Ou du moins, tout le monde l'espère. Mars 2024, je trouve immédiatement un nouvel emploi. Ingénieur backend senior dans une entreprise établie, 185 000 $. Meilleur salaire, environnement stable, pas d'idéologie. Marcus, David, Kevin, Ryan, Tom trouvent tous un emploi rapidement. Les ingénieurs seniors avec une expérience éprouvée sont embauchés rapidement. Sarah a rejoint la startup en tant que responsable de l'ingénierie. Ils sont ravis de l'avoir avec son package d'actions et tout. James va dans une entreprise de cybersécurité, Big Race. Nous allons tous bien, même mieux. Nous nous envoyons occasionnellement des mises à jour par SMS. Cascade Platform a des difficultés, nous l'entendons par l'industrie. Avril 2024, la nouvelle équipe senior apprend la base de code. Mais elle a du mal avec la complexité. L'équipe originale a construit une architecture sophistiquée. Microservices, conception pilotée par les événements, mise en cache complexe. La nouvelle équipe ne comprend pas pourquoi les choses ont été construites ainsi. Commence à faire des changements sans comprendre les implications. Mai 2024, j'ai des nouvelles d'un ancien développeur junior. Elle m'a contacté sur LinkedIn, a demandé des conseils. La nouvelle équipe senior modifie de nombreux systèmes centraux. Elles disent que l'ancienne architecture était sur-conçue. Dois-je m'inquiéter ? Je lui dis honnêtement, oui, soyez très inquiète. Cette architecture gérait l'évolutivité et la fiabilité. Si elles ne la comprennent pas, ne la modifiez pas. Elle me remercie, dit qu'elle essaiera de soulever des préoccupations. Juin 2024, un autre ancien collègue me contacte. Ingénieur QA, toujours dans l'entreprise, stressé. Le nombre de bugs explose. Le nouveau code est instable. L'équipe senior dit que ce sont des problèmes de refactoring normaux. Est-ce normal ? Je demande des précisions. Il m'envoie des rapports de bugs. Problèmes critiques, blocages de base de données, fuites de mémoire, conditions de concurrence. Ce sont des problèmes fondamentaux. L'équipe originale a passé des années à prévenir ces problèmes. La nouvelle équipe les a introduits en 4 mois. Juillet 2024, Marcus reçoit un message d'un ancien développeur frontend. Ils ont réécrit l'intégralité du système de gestion d'état. La nouvelle version est plus simple, mais elle casse sous la charge. Les tests de charge montrent des échecs à 500 utilisateurs simultanés. Le système original gérait 10 000 utilisateurs simultanés. Marcus, ils ont optimisé pour la simplicité au détriment des performances. C'est bien pour une petite application, un désastre pour une entreprise. Août 2024, le PDG contacte David. Demande s'il consulte sur les problèmes d'infrastructure. Ils ont des problèmes d'évolutivité dans l'environnement de staging. David refuse poliment. Vous m'avez remplacé par quelqu'un qui a dit que j'étais toxique. Débrouillez-vous. Septembre 2024, l'ancien responsable QA me contacte. Le lancement est toujours prévu pour le 15 novembre. La plateforme n'est pas prête, pas même proche. J'ai soulevé des préoccupations, on m'a dit que j'étais négatif. Que dois-je faire ? Je lui dis, documentez tout, couvrez-vous. S'ils n'écoutent pas, vous ne pouvez pas les forcer. Octobre 2024, 1 mois avant le lancement. J'apprends par le bouche-à-oreille que Cascade a des problèmes. Les tests de charge révèlent des problèmes majeurs. Problèmes de performance de la base de données sous charge d'entreprise. Le frontend plante avec de grands ensembles de données. Délais d'attente des API, fuites de mémoire, défaillances en cascade. La nouvelle équipe senior panique, travaille 80 heures par semaine. Essaie de tout réparer en même temps. Lauren dit à tout le monde que tout ira bien. Nervosité du jour du lancement, chaque entreprise en a. Mais les gens qui connaissent l'ingénierie voient le désastre arriver. 10 novembre, 5 jours avant le lancement. Un ancien collègue m'envoie un SMS. Ils vont de l'avant avec le lancement malgré des bugs critiques. Le PDG voulait retarder, Lauren l'a outrepassé. A dit que retarder montrerait de la faiblesse au client. Je suis désolé pour tous ceux qui sont encore là. Mais je ne suis plus impliqué, ce n'est pas mon problème. 15 novembre 2024, jour du lancement. Client majeur, entreprise de vente au détail du Fortune 500. Ils déploient la plateforme Cascade pour 12 000 employés. Remplacent leur ancien système de gestion de projet. Contrat de 2,4 millions de dollars, énorme affaire pour une startup. Ont également invité les investisseurs de la série B. Potentiel de levée de fonds de 12 millions de dollars conditionné à un lancement réussi. Membres du conseil d'administration, presse, tout le monde regarde. Je suis dans mon nouveau travail, mais je consulte Twitter occasionnellement. D'anciens collègues m'envoient des mises à jour en temps réel. 9h00, la plateforme est lancée. Première vague de connexion. 500 utilisateurs se connectent avec succès, ça a l'air bien. 9h15, 2 000 utilisateurs sont maintenant en ligne. La plateforme ralentit, les temps de réponse augmentent. 9h30, 5 000 utilisateurs essaient d'accéder. Connexions à la base de données saturées. Pool de connexions épuisé, requêtes en attente. 9h45, la plateforme est complètement non réactive. Chaque requête renvoie une erreur 504 Gateway Timeout. Base de données bloquée, nécessite une intervention manuelle. 10h00, les ingénieurs essaient de redémarrer la base de données. Défaillances en cascade à travers les microservices. Les services ne peuvent pas se reconnecter, tombent en boucle de crash. 10h30, la plateforme entière est en panne. 12 000 employés fixent des écrans d'erreur. Le CTO du client est en ligne avec le PDG de Cascade. Absolument furieux. C'est embarrassant pour eux. 11h00, les ingénieurs essaient toujours de récupérer. Chaque correction crée un nouveau problème. Ils ne comprennent pas l'architecture. Ne savent pas comment redémarrer correctement un système distribué. 11h30, quelqu'un appelle David, l'ancien responsable devops. Le suppliant d'aider, offrant de payer le tarif de consultation. David demande, où est l'ingénieur senior qui m'a remplacé ? Ils admettent qu'elle ne sait pas comment réparer. David, c'est dommage, bonne chance. Et raccroche. 12h00, la plateforme est toujours en panne, 3 heures après le lancement. Le client menace d'annuler le contrat. Les investisseurs de la série B dans la salle du conseil regardent le désastre se dérouler. Lauren essaie d'expliquer que c'est un problème d'évolutivité inattendu. Les investisseurs demandent, où est votre équipe d'ingénierie senior ? Le PDG doit expliquer qu'il les a tous virés il y a 10 mois. 13h00, ils parviennent enfin à avoir David en appel de consultation. Il accepte d'aider pour 500 $ de l'heure. Les guide à travers le processus de récupération approprié. Il faut 2 heures pour rétablir le service. 15h00, la plateforme est de retour en ligne, mais instable. Fonctionne à capacité réduite, ne peut pas gérer la pleine charge. Les employés du client renvoyés chez eux. Lancement reporté indéfiniment. 17h00, réunion d'urgence du conseil d'administration. Les investisseurs se retirent de la série B. Levée de fonds de 12 millions de dollars annulée. Le client envoie un avis de résiliation de contrat. Contrat de 2,4 millions de dollars perdu. Le conseil d'administration demande des explications à Lauren et au PDG. 16 novembre, le lendemain du désastre. Lauren est mise en congé administratif. Le PDG nomme un CTO par intérim, un ingénieur expérimenté de l'industrie. Il passe 2 jours à examiner la base de code. Son évaluation, plusieurs régressions critiques. L'équipe senior a supprimé la gestion sophistiquée des erreurs. Simplifié des systèmes qui devaient être complexes. Éliminé des couches de mise en cache qui empêchaient la surcharge de la base de données. Cette plateforme est à 6 mois d'être prête pour la production. Le conseil demande, pouvons-nous la réparer ? CTO par intérim, oui, mais il faut réembaucher des ingénieurs seniors. L'équipe actuelle est junior. Elles ne peuvent pas architecturer à cette échelle. 20 novembre, le PDG contacte tous les développeurs seniors originaux. Propose de nous réembaucher, postes seniors, augmentations significatives. Marcus répond, non merci, je suis heureux où je suis. David, vous avez fait votre choix, assumez-le. Sarah, je suis responsable de l'ingénierie maintenant, je gagne plus d'argent, j'ai des actions. Kevin, Ryan, Tom, James déclinent tous. Je décline aussi. Vous avez choisi l'idéologie plutôt que l'ingénierie. C'est ce que ce choix coûte. Décembre 2024, évaluation complète des dégâts. Perte permanente du contrat client de 2,4 millions de dollars. Perte du financement de série B de 12 millions de dollars. Les investisseurs se sont retirés. La réputation de Cascade Platform détruite dans l'industrie. Les nouvelles se sont répandues rapidement. Le désastre du jour du lancement de la startup. La presse technologique couvre l'histoire. Ce qu'ils ne rapportent pas, pourquoi l'équipe senior a été licenciée. Juste que l'équipe inexpérimentée n'a pas pu gérer l'échelle. Janvier 2025, les licenciements commencent. L'entreprise passe de 85 à 22 employés. Ne peut pas se permettre du personnel sans le financement de série B. La majeure partie de l'équipe d'ingénierie licenciée. Équipe commerciale réduite, marketing parti, support minimal. Lauren démissionne officiellement. Post sur LinkedIn, quitte Cascade pour poursuivre de nouvelles opportunités. Fière du travail de transformation culturelle. Aucune mention du désastre du lancement ou des 15 millions de dollars de pertes. Obtient un poste de consultante dans une organisation à but non lucratif. Aide les entreprises technologiques à construire des cultures d'ingénierie inclusives. Gagne probablement 120 000 $, contre un salaire de CTO de 280 000 $. Février 2025, Cascade essaie de survivre. Réduit à une équipe squelette, essaie de réparer la plateforme. Le CTO par intérim a fait venir trois ingénieurs seniors expérimentés. Tous des hommes, tous avec plus de 15 ans d'expérience. Ils reconstruisent ce que l'équipe originale a construit. Annulent les changements apportés par la nouvelle équipe. Rétablissent une architecture sophistiquée. Il faudra 8 mois pour revenir là où nous étions. Le PDG admet enfin publiquement ce qui s'est passé. Interview avec une publication technologique. Nous avons fait une erreur en privilégiant la culture sur la compétence. Remplacé une équipe expérimentée par une équipe idéologiquement alignée mais junior. La plateforme n'était pas prête. Nous le savions. Lancé quand même. Cela nous a tout coûté. L'entreprise a à peine survécu. Mars 2025, je croise Sarah lors d'une conférence technologique. Elle va très bien. Sa startup vient de lever sa série A. Nous prenons un café, parlons du désastre de Cascade. Elle dit, "Le pire n'a pas été d'être licenciée. C'est de les voir détruire ce que nous avions construit. Nous avons passé 3 ans à construire une plateforme stable. Ils l'ont cassée en 6 mois." Je suis entièrement d'accord. Nous avons construit quelque chose de bien, quelque chose de solide. Lauren l'a détruit parce que nous ne correspondions pas à sa vision. Remplacé la compétence par la conformité. Et la plateforme s'est effondrée sous la charge réelle. Nous sommes maintenant en avril 2025, 18 mois depuis que nous avons tous été licenciés. Nous allons tous mieux qu'avant. Marcus est ingénieur staff dans une grande entreprise technologique. David est VP de l'ingénierie dans une startup. Sarah est CTO de sa propre entreprise. Je suis ingénieur principal senior dirigeant l'architecture backend. Nous allons bien. Nous prospérons. Cascade Platform est à peine en vie. 22 employés, pas de financement, pas de clients majeurs. Essaie de reconstruire la crédibilité qu'ils ont détruite. Une industrie qui n'oublie pas les désastres de lancement. Je pense à ce que Lauren croyait. Qu'une équipe diversifiée serait automatiquement meilleure. Que l'idéologie comptait plus que l'expérience. Que l'on pouvait remplacer 40 ans d'expertise combinée par de nouvelles perspectives et de bonnes intentions. Elle avait tort, catastrophiquement tort. L'ingénierie ne se soucie pas de vos croyances. Le code fonctionne ou il ne fonctionne pas. Les systèmes évoluent ou ils n'évoluent pas. Les bases de données gèrent la charge ou elles ne la gèrent pas. On ne peut pas souhaiter la complexité technique. On ne peut pas remplacer l'expertise par l'enthousiasme. On ne peut pas substituer l'expérience à l'idéologie. C'est la leçon de Cascade Platform. Du désastre du jour du lancement qui a coûté 15 millions de dollars. Du licenciement de l'équipe senior qui a tout construit. De leur remplacement par une équipe junior qui a tout cassé. Du PDG qui admet maintenant que c'était une erreur. De Lauren qui consulte ailleurs. Enseignant sa philosophie à d'autres entreprises. Je me demande si elle leur parle du 15 novembre. De la plateforme qui s'est écrasée devant un client du Fortune 500. Des investisseurs qui se sont retirés avec 12 millions de dollars. Des plus de 60 personnes qui ont perdu leur emploi. Probablement pas. Elle se présente probablement comme une victime. Poussée par une industrie qui ne pouvait pas gérer le changement. C'est plus facile que d'admettre que vous avez détruit de la valeur. Plus facile que d'accepter que votre idéologie avait un prix de 15 millions de dollars. Pendant ce temps, huit ingénieurs seniors vont bien. Construisent des plateformes qui fonctionnent réellement. Dans des entreprises qui valorisent l'expertise plutôt que la pureté idéologique. C'est la vraie fin. Pas une histoire de retour. Pas un arc de rédemption. Juste la réalité.