Mindset : un bon Devops est-il schizophrène ?

Métiers de la R&D

Publié le 11/01/2021

Le rôle de DevOps est de remettre en question les approches de développement établies. Pour convaincre les organisations Dev et Ops, aux objectifs qui peuvent être contradictoires, de travailler ensemble, faut-il que le DevOps soit schizophrène ?

En 2019, lors des DevOpsdays à Austin, Aaron Aldrich chez Elastic avait animé une conférence très sérieuse ayant pour titre « Continuous Improvement: DevOps and Mental Illness » où il expliquait comment les concepts de DevOps avaient contribué à gérer sa propre santé mentale.

Faut-il y voir le signe que, pour faire travailler ensemble des mondes à la fois très proches mais éloignés dans les missions quotidiennes, celui des Dev et celui des Ops, le DevOps est nécessairement d’une étonnante duplicité ?

1 – Double compétence ou double personnalité ?

Inutile de faire durer le suspense : non, la fonction DevOps n’est pas surreprésentée en personnes souffrant de personnalités multiples, bien entendu !

Plus qu’une question de personnalité, l’essence profonde du DevOps est une culture qui relève à la fois d’une dimension technique, mais aussi d’une forte dimension organisationnelle et empathique.

Il s’agit en effet d’un profil nécessitant une double compétence de développeur et d’administrateur système, une sorte de « couteau suisse de l’IT », généralement doté d’une forte expérience dans l’un des deux domaines Dev ou Ops.

Sur le plan organisationnel, DevOps étend les principes agiles à toute la chaîne de valeur produit, des études et du développement à la production, l’exploitation et l’infrastructure sans oublier les métiers.

L’empathie, enfin, permet aux ingénieurs opérationnels d’apprécier l’importance de pouvoir pousser du code rapidement et fréquemment, sans problème, et aux développeurs d’apprécier les problèmes causés par l’écriture de code lourd, lent ou non sécurisé.

Les éditeurs de logiciels et les opérateurs s’entraident ainsi pour offrir les meilleures fonctionnalités et la meilleure opérabilité possibles au nom de leurs clients.

Le DevOps a donc bien la tête sur les épaules et joue un rôle majeur de stabilisation lors du processus de production. Il est celui grâce à qui tout développeur peut lancer une mise en production sans croiser les doigts. En résumé, il fait en sorte que la livraison devienne un non-évènement à la fois pour Dev et Ops. Pas une mince affaire !

2 – Concevoir DevOps au-delà du rôle DevOps

DevOps ne se limite pas à un seul rôle.

Toute personne prenant part aux différentes phases du cycle de vie d’une application doit adhérer à la culture DevOps. DevOps n’est donc pas un esprit scindé en deux, mais une approche partagée par une multitude d’esprits.

C’est la situation à laquelle DevOps cherche à apporter une réponse : comment amener le développement, les opérations et d’autres groupes au sein de l’organisation à collaborer autour d’un ensemble d’objectifs partagés, pour fournir des logiciels plus rapidement et de manière plus fiable aux clients et aux utilisateurs finaux ?

Les pratiques-clés qui sous-tendent une initiative DevOps incluent la standardisation des équipes de développement et d’exploitation sur un ensemble commun de processus et d’outils agiles pour la livraison de logiciels. Ceux-ci incluent souvent :

  • La gestion automatisée de la configuration, des tests et des déploiements d’applications ;
  • Le contrôle de version du code pour permettre la collaboration et les restaurations ;
  • La CI (intégration continue) pour automatiser les code builds et permettre une rétroaction et une itération plus rapides grâce à des versions plus fréquentes et moins risquées.

DevOps est une perspective culturelle sur la façon dont tout le monde devrait être engagé à travailler de la bonne manière.

3 – Quel est le mindset idéal d’un DevOps ?

Existe-t-il seulement un mindset idéal de DevOps ? Sans doute pas au même titre qu’on l’entend pour les profils commerciaux ou les profils comptables. Néanmoins, certaines bonnes pratiques émanent de l’état d’esprit général Devops.

L’écoute des parties prenantes : DevOps se concentre sur les parties prenantes et leurs commentaires sans chercher à changer pour le plaisir du changement.

L’amélioration continue des processus : DevOps s’efforce toujours d’innover et d’améliorer au-delà des processus et des cadres reproductibles.

L’orientation client : DevOps mesure les performances au sein de l’organisation, pas seulement au sein d’un secteur d’activité.

L’enthousiasme : DevOps fait la promotion d’une culture d’apprentissage grâce à des livrables de qualité faciles à consulter, pas seulement via des outils et de l’automatisation.

Compétences, mindset, hard skills, soft skills, culture, business, DevOps mobilise assurément de nombreuses ressources de l’esprit humain, individuel comme collectif.