Mon expérience a montré que les équipes qui assurent l’ensemble du cycle de vie d’un produit (de la conception au déploiement en passant par sa maintenance) obtiennent de meilleurs résultats et conçoivent des solutions de meilleure qualité.
Voir la publication originale
Cette dernière est republiée ici afin de ne pas dépendre entièrement d'une plateforme tierce.
C’est l’approche que l’on retrouve derrière le mantra “You build it, You run it”, central dans la culture DevOps. L’équipe qui développe un projet en assure son maintien opérationnel. Elle fait ainsi directement face aux différents problèmes d’exploitation, ceux rencontrés par les utilisateurs ainsi qu’aux incidents de production. Cette proximité incite naturellement chacun à s’engager dans une démarche d’amélioration continue.
Ce type de fonctionnement nécessite des équipes de développeurs pluridisciplinaires, autonomes et ayant de nombreuses compétences techniques et opérationnelles (conception, développement front & back, monitoring, gestion d’incident, sécurité …). Mais cette organisation responsabilise énormément les équipes techniques, améliore la qualité produit ainsi que la satisfaction client.
Cela permet de créer un cercle vertueux où l’équipe de développement est au plus proche de l’utilisation de son produit. Cette proximité permet d’obtenir au plus vite le résultat de son travail, accélérant ainsi la boucle de feedback permettant de se rendre compte plus rapidement de ses erreurs et d’itérer rapidement sur les solutions à mettre en place.
Dans ce mode de fonctionnement, il n’y a plus de retranscription des problèmes, ces derniers sont directement vécus par l’équipe. De ce fait, la qualité augmente non pas à cause des pratiques mises en place, mais parce que l’équipe vit avec ce qu’elle livre.