Migrer sa fonctionnalité la plus critique sans régression ni coupure de service
Florian Marin - https://twitter.com/flomarin Prenez une web app au coeur de votre business, avec plusieurs centaines d'utilisateur par jour, et des dizaines de contributeurs internes travaillant à faire évoluer ses fonctionnalités. L'augmentation progressive du trafic a rendu instable sa fonctionnalité la plus critique. Les utilisateurs perdent confiance et se plaignent. Votre équipe de 3 personnes tente de tenir cette fonctionnalité à bout de bras, en mode réactif depuis trop longtemps. Une rapide étude montre que la conception initiale est criblée de dette technique: - logique métier dans le frontend - API CRUD qui ne tient plus la charge - base de données en deadlock Comment sortir de l'impasse sans pour autant tout réécrire, livrer incrémentalement et sans régressions, réduire la dette technique, améliorer la stabilité et les performances ? Ce talk décrit étape par étape l'approche mise en oeuvre pour réussir ce chantier, les lessons apprises, les choix techniques et architecturaux. Nous parlerons de transactions SQL, de collecte de métriques, de tests automatisés, de feature flag, de double run mais également d'architecture Domain Driven Design. Sunny Tech 2024