En fait dans mon expérience, aucune tentative de "réécriture de zéro" n'a eu un bilan totalement positif. J'ai aussi travaillé pour une startup qui a un jour décidé — il y a plus de 10 ans — de refaire tout son site en Python (parce que c'était la mode, et plus PHP qu'on utilisait jusque là! 🤦), micro-services (tout doit être en micro-services! 🖧) avec des APIs, etc. etc. On a passé 6 mois à temps plein dessus avant qu'un manager décide de tout mettre à la corbeille
J'ai eu le coup d'un projet cathédrale: un truc top qualité, des perfs incroyables, ca devait remplacer le machin tout moche existant. Le projet typique pousse par un dev tres compétent, mais nul en gestion de projet. Au bout d'un an, l'echeance etait repousse de 2. C’était bien trop ambitieux et ca n’atterrissait nulle part.
Comme le besoin était encore la, le management a reflechi comment aborder le truc: ils ont fait une architecture avec les 2 stacks, l'ancienne monolithe et la nouvelle en micro-service. L'ancienne a expose une interface pour permettre a la nouvelle de choper des données et de les distribuer en mode kafka. Et, point assez malin, la nouvelle stack n’implémentait que des nouvelles features, donc on a pu la livrer quasiment de suite.
Du coup, comme la nouvelle stack n'etait pas encore bloat en feature, on avait le temps de les faire a peu pres correctement, et petit a petit de reduire l'ancienne stack en portant les features du monolithe vers les micro-services au fur et a mesure des besoins.
Franchement, j'y croyais pas du tout, mais en 3 ans l'essentiel du boulot était migre sur la nouvelle archi, ca scalait bien et propre, et on a jamais arrete de livrer. Ca me chier de le dire, mais oui des fois l'agile ca marche.
[^] # Re: mouais
Posté par flagos . En réponse au lien Desktop Linux has a Firefox problem. Évalué à 5. Dernière modification le 15 août 2023 à 14:19.
J'ai eu le coup d'un projet cathédrale: un truc top qualité, des perfs incroyables, ca devait remplacer le machin tout moche existant. Le projet typique pousse par un dev tres compétent, mais nul en gestion de projet. Au bout d'un an, l'echeance etait repousse de 2. C’était bien trop ambitieux et ca n’atterrissait nulle part.
Comme le besoin était encore la, le management a reflechi comment aborder le truc: ils ont fait une architecture avec les 2 stacks, l'ancienne monolithe et la nouvelle en micro-service. L'ancienne a expose une interface pour permettre a la nouvelle de choper des données et de les distribuer en mode kafka. Et, point assez malin, la nouvelle stack n’implémentait que des nouvelles features, donc on a pu la livrer quasiment de suite.
Du coup, comme la nouvelle stack n'etait pas encore bloat en feature, on avait le temps de les faire a peu pres correctement, et petit a petit de reduire l'ancienne stack en portant les features du monolithe vers les micro-services au fur et a mesure des besoins.
Franchement, j'y croyais pas du tout, mais en 3 ans l'essentiel du boulot était migre sur la nouvelle archi, ca scalait bien et propre, et on a jamais arrete de livrer. Ca me chier de le dire, mais oui des fois l'agile ca marche.