XLR8@Cdiscount : de la release hebdo au changement toutes les 7 min
Lors du Comptoir OCTO du 18/03/2021, nous avons eu le plaisir d'accueillir Christophe Samson, DSI de Cdiscount, qui nous a partagé son retour d'expérience sur l'application du framework Accelerate et son rôle dans l'amélioration de la performance de l'entreprise.
Comment passer d'une release hebdomadaire à un changement en production toutes les 7 minutes ? Lorsqu'on est un géant de l'e-commerce français qui compte pas moins de 800 ingénieurs opérant sur une plateforme qui reçoit près de 2,5 millions de visites par jour et jusqu'à 8 millions pendant le Black Friday, le pari semble impossible ! C'est pourtant bien ce qu'a réussi à faire Cdiscount sur l'impulsion de son DSI, Christophe Samson.
Une prise de conscience salutaire
Jusqu’à début 2020, le comité de direction du SI pense que leur organisation est rapide. Après tout, leurs features teams agiles livrent toutes les semaines de nouvelles fonctionnalités. Mais les équipes ne sont pas du même avis. Lors d'un Health check¹, le couperet tombe : l'ambiance est bonne, les ingénieurs apprécient leur travail et leurs équipes mais le processus de livraison est lent et particulièrement pénible ! Loin d'être un caprice de geek, le constat est même partagé par le business qui insiste pour accélérer et se donner les moyens d'aller plus vite.
Alors, croyance ou réalité ?
Le débat est vite tranché lorsque le CoDSI (comité de Direction du SI) re-parcours le DORA² de 2019 : pour les entreprises du retail, la vitesse et la stabilité du software delivery est une condition de survie. Seules celles capables d’atteindre un haut niveau d’excellence survivront (“excel or die”).
Une nouvelle question se pose alors, comment accélérer tout en continuant d’avancer ? Comment réinventer le SI tout en délivrant de nouvelles fonctionnalités ?
Etape 1 : les bases de la transformation
Pour répondre à cette question, le CoDSI décide de s’inspirer de l’étude Accelerate menée par Nicole Forsgren, Jez Humble et Gene Kim. Tout dans ce livre résonne avec l’ADN de Cdiscount, une entreprise résolument tech obsédée par la mesure, la vitesse, le devops, l’agilité, etc.
Accelerate, une étude qui correspond à leur ADN
Cette étude, menée sur plusieurs milliers d’entreprises, mesure leur performance grâce à 4 indicateurs :
- 2 KPI de vitesse :
- Le deployment frequency : la fréquence à laquelle l’organisation déploie son code en production ou le livre à ses clients
- Le lead time for changes : le délai entre le premier commit de code et la mise en production
- 2 KPI de stabilité :
- Le mean time to recovery : le temps nécessaire pour corriger un incident
- Le change failure rate : le pourcentage de changements en production qui ne fonctionnent pas
L’étude organise également ces entreprises en 4 catégories de performances économiques : low performers, medium performers, high performers et élite.
Grâce à cette classification et à ces 4 KPI, l’étude montre une forte corrélation entre vitesse et performance économique ainsi qu’entre vitesse et stabilité.
A partir de cette étude, le CoDSI s’est demandé où l’entreprise se situait par rapport à ces différents indicateurs et voici le résultat :
A ce moment-là, Cdiscount a identifié une grande marge de progression. Pour rejoindre l’élite, Christophe va prendre en compte 2 principes : le supplice de Deming et la Gamification.
Le supplice de Deming
Le premier principe est le suivant : la roue de Deming, la méthode de gestion de la qualité PDCA (Plan - Do - Check - Act), fonctionne bien pour faire de l’amélioration continue mais, comme le dit Christophe Samson, “Deming a oublié de nous dire que la roue était sur une pente”. En effet, on observe en pratique que, tant qu’il y a une vision claire, la mise en place de formations et de la motivation pour faire avancer la roue, tout fonctionne bien. Malheureusement, dès qu’un ou plusieurs de ces éléments font défaut, la roue descend la pente. C’est ce qu’il appelle le “supplice de Deming”.
Pour ancrer les actions d’amélioration et stabiliser la roue, il faut mettre en place des actions telles que des bonnes pratiques, des outils, des mesures et des communautés de pratiques. Il sera important de garder cela en tête lors de la transformation.
La gamification
Il est toujours difficile de motiver les équipes sur les chantiers techniques de fond en plus de leurs activités habituelles. Chez Cdiscount, la solution a été trouvée par la Gamification. Tous les trimestres, un défi est lancé pour améliorer la performance du SI avec une compétition entre les équipes à qui aura le plus d'impact, le plus de points et le droit d'arborer sur son PC les autocollants loufoques créés pour les vainqueurs. Amélioration de la performance des bases de données, de la rapidité d'affichage, de la disponibilité du site, etc. Aucun challenge n'est trop élevé, même le découplage du monolithe historique, et ça fonctionne ! Il en sera de même pour le premier pas de Cdiscount vers Accelerate.
Etape 2 : l'automatisation des mesures
Pour le Challenge du 3ème trimestre 2020, le sujet est tout trouvé : automatiser le monitoring des 4 mesures Accelerate sur tous les assets de Cdiscount !
Le défi est de taille car la DSI utilisent de nombreuses technologies différentes mais à force de persévérance et pour le plaisir du jeu, les équipes ont réussi à automatiser les mesures :
Le principal apprentissage de ce défi est que les questions qui émergeaient n’étaient pas toujours les bonnes. Par exemple : il arrive qu’il y ait un défaut qui a mis 3 mois à être détecté, faut-il le compter dans l’indicateur d’il y a 3 mois ou d’aujourd’hui ?
Mais ce n’est finalement pas la bonne question, l’objectif est que le Mean Time To Recovery soit inférieur à 15 min donc le problème est le délai de 3 mois pour le détecter. Ces conversations ont permis aux nombreuses équipes de s'approprier Accelerate et de développer l'ambition d'exceller.
Suite à ce défi, 94 initiatives ont été lancées par les équipes pour améliorer les résultats en termes de vitesse et de stabilité telles que : le CI-CD (continuous integration, continuous deployment), les pratiques de Software Craftsmanship et l’automatisation.
Et les résultats sont au rendez-vous :
- Plus de la moitié des équipes livrent en autonomie en novembre 2020 ;
- la DSI est passée d’une livraison hebdomadaire en janvier 2020 à un changement en production toutes les 7 minutes en novembre 2020 ;
- Dans les 10 jours précédant le Black Friday, un des moments clés de toute entreprise de commerce en ligne, les équipes ont livré 1000 fois ;
- Le jour du Black Friday, il n’y a eu aucune coupure de service. Les 100% de qualité de service ont été atteints !
Un autre résultat non anticipé est apparu : la mécanique de changement s’est inversée ! Il n'est plus nécessaire de pousser des nouvelles façons de faire aux équipes, ce sont elles qui s'emparent du sujet et demandent à aller plus loin. Cet engouement a toutefois soulevé une question : comment accompagner toutes les équipes sans les freiner dans leur élan ?
Etape 3 : l'approche par capacités
Une des forces d’Accelerate est de proposer 24 capacités (“capabilities”) qui facilitent l’atteinte d’un haut niveau de performance. Cdiscount s’est emparé de ce framework et l’a enrichi, avec l’aide d’OCTO, en développant les capacités produit (en bleu sur le schéma ci-dessous).
Ils ont ensuite défini les 6 critères d’une capacité chez Cdiscount :
- être actionnable
- avoir un gain mesurable
- avoir un pattern de déploiement défini pour pouvoir accompagner toutes les équipes
- être documentée
- avoir un cycle de vie défini
- être incarné par un porteur légitime et convaincu
Pour faciliter leur déploiement en suivant une approche “Test & Learn”, le cycle de vie suivant a été défini, inspiré par le Lean Startup :
Chaque capacité est incarnée à tous les niveaux de l'organisation ce qui permet de maintenir un haut niveau d'engagement et de corriger notre roue de Deming.
Les capacités sont plus ou moins complexes et ne peuvent être adoptées toutes en même temps ou dans n'importe quel ordre. Afin de faciliter l'accompagnement des équipes, un mapping a été réalisé entre les "capabilities accelerate" et les pratiques associées. Des priorités ont ensuite été définies et un premier socle a été identifié.
OCTO est intervenu dans cette dernière étape pour accompagner les équipes et notamment l’équipe de coachs à mettre en place cette transformation.
Où en sont-ils maintenant ?
Cdiscount poursuit son chemin vers une organisation produit à l'état de l'art et tiré par Accelerate. En ce moment même, les capacités sont testées et déployées. Plus de 13 équipes pilotes sont accompagnées pour acquérir le socle 1 et devenir des équipes produits “constantes dans le temps, autonomes, responsables de leurs assets, obsédées par la mesure, agiles, rapides et centrées utilisateurs”. Et Christophe Samson nous l’assure, il y croit !
Chez OCTO, nous y croyons aussi et nous avons hâte de vous partager la suite de cette aventure passionnante.
Vous voulez en savoir plus pour accélérer votre système et rejoindre l'élite du marché ?
- Le replay et les slides de ce Comptoir OCTO
- Matinale Accelerate : la vitesse conditionne l’excellence
- Le comptoir OCTO - Accelerate : de l’importance du coaching
- Quelques articles du blog OCTO traitant d’Accelerate :
- https://blog.octo.com/compte-rendu-matinale-accelerate-la-vitesse-conditionne-lexcellence-un-nouveau-paradigme-dans-le-developpement-logiciel/ https://blog.octo.com/comprendre-les-apports-daccelerate-dans-levolution-de-nos-systemes/
- https://www.octo.academy/fr/formation/478-accelerate-adopter-les-bonnes-pratiques-pour-un-delivery-plus-performant-rapide-et-stable
- La formation OCTO Academy : Accelerate : Adopter les bonnes pratiques pour un delivery plus performant, rapide et stable
¹ Sondage inspiré par Spotify permettant de mesurer la santé des équipes ² https://services.google.com/fh/files/misc/state-of-devops-2019.pdf Page 32