Nicolas Duperré, conseiller DevOps et associé chez Gologic, animera prochainement un bootcamp DevOps, auquel vous êtes conviés. Concepteur et programmeur, son expérience significative en gestion d’intégration continue fait de lui un candidat idéal pour répondre à nos questions sur le DevOps. Attention : lire ses réponses pourrait bien vous donner le goût de de vous inscrire, vous et votre équipe, au bootcamp.
Q : Quelle est la différence entre le DevOps et la méthodologie Agile ?
R : L’approche DevOps couvre l’ensemble du cycle de livraison d’un produit tandis que la méthodologie Agile n’adresse que la phase de développement et ne fait pas de place pour la livraison et l’exploitation d’un produit. Ainsi, malgré la livraison rapide et successive d’incréments fonctionnels, les équipes d’exploitation qui appliquent des méthodes non adaptées au modèle de développement Agile, n’arrivent pas à maintenir un rythme de mise en production équivalent. Ce goulot d’étranglement ralentit considérablement tous les bénéfices apportés par la méthodologie Agile. L’approche DevOps permet donc à l’exploitation de supporter la cadence de livraison des équipes de développement Agiles, avec l’automatisation du cycle de livraison. Le DevOps et l’Agilité sont intimement liés et doivent cohabiter en harmonie pour augmenter la vélocité, livrer plus de valeur et ainsi satisfaire le client.
Q : Pouvez-vous définir brièvement le cycle de vie d’un produit ou d’un service selon les principes du DevOps ?
Cette image illustre bien le cycle de développement et d’exploitation d’un produit selon l’approche DevOps. Le cycle suit cette chaîne d’étapes : la planification, le développement, les compilations, les tests, les versions, les déploiements, l’exploitation et la surveillance du produit. Le DevOps prône l’automatisation de l’ensemble de ces étapes et leur répétition en boucle. Les résultats sont des cycles courts et rapides.
Q : Quelles sont les compétences les plus recherchées chez un professionnel spécialisé DevOps ?
R : Plusieurs compétences sont recherchées chez un professionnel du DevOps, mais il y en a quelques-unes qui se démarquent du lot.
- Collaborateur : il faut aimer travailler en équipe et partager ses connaissances, car le DevOps a pour but d’unifier les développeurs et les opérateurs du produit.
- Polyvalent : il faut posséder des compétences autant du côté du développement que de l’exploitation d’un produit pour que la transition vers le DevOps s’effectue plus facilement.
- Débrouillard : il n’y a pas de chemin exact pour mettre en place une approche DevOps. Il faut aimer résoudre les problèmes, trouver les solutions et apporter les correctifs aux processus dans un objectif d’amélioration continue.
Q : Quels exemples de succès ou quels exemples de problèmes résolus pourraient illustrer les bénéfices du DevOps?
R : L’équipe Gologic a travaillé récemment chez un client dans le cadre d’un accompagnement d’une nouvelle équipe DevOps. Cette équipe avait pour mission de livrer une application Web de financement.
Une première mise en production fut exécutée par l’équipe DevOps. Le lendemain de cette dernière, une erreur majeure est survenue et l’application n’était plus fonctionnelle. Le spécialiste Ops a consulté les journaux applicatifs afin de pouvoir détecter le problème. À sa grande surprise, absolument rien n’était visible! Le spécialiste Ops décida donc d’aller s’asseoir immédiatement avec le spécialiste Dev pour lui démontrer la problématique; la journalisation n’avait pas été bien développée par l’équipe. Les deux ressources décidèrent donc de définir leurs standards de journalisation, de les appliquer sur-le-champ et d’en faire une nouvelle version déployable, en fin de journée.
La mise en production eut lieu, incluant la journalisation pour détecter les problèmes. Aussitôt connues, les traces de journalisation furent transmises au Dev, qui effectua le correctif nécessaire. Une mise en production fut menée, le jour même avec succès. En moins de 24 heures, le problème était résolu. Le niveau de journalisation était maintenant adéquat et toute l’équipe en avait été informée. Ceci démontre qu’une collaboration rapprochée entre les Dev et les Ops augmente l’efficience de l’équipe et accélère la cadence des livraisons.
Q : Vous proposez une formule « bootcamp ». Qu’est-ce que ça veut dire? Comment se déroule la formation?
R : Le terme « bootcamp » est utilisé ici pour faire référence à une formation courte, intensive et amusante dans laquelle les participants sont invités à mettre leurs bottes de travail et à sauter dans l’action! Elle a pour but d’amorcer la réflexion et lancer les discussions autour de cette approche. Elle est d’une durée de quatre heures, à travers lesquelles nous alternons entre la présentation de contenu théorique, d’expériences vécues sur le terrain et de tours du jeu pour expérimenter le DevOps. La formation inclut également un jeu-questionnaire pour tester les connaissances acquises durant la formation. Elle se termine avec une discussion ouverte avec le groupe de participants afin qu’ils partagent leurs expériences, opinions et questions.
Curieux d’en savoir plus? C’est peut-être que vous êtes mûrs pour participer au bootcamp DevOps, qui se tiendra le ?? prochain. Au plaisir de vous y voir!
Nous tenons à remercier Gologic, et tout particulièrement Nicolas Duperré, d’avoir pris le temps de répondre à nos questions.