Démarche, outils, métiers… Tout savoir sur le DevOps

DevOps

Démarche, outils, métiers… Tout savoir sur le DevOps

Le DevOps n’est pas forcément un terme qui parle à tous dans le monde informatique. C’est une culture qui vise à favoriser l’efficience notamment avec la collaboration et des équipes de développeurs et d’exploitation informatique. Voici tout ce que vous devez savoir sur cette approche.

Quand on parle de DevOps, il faut avant tout penser en termes d’approche, de culture, de vision du monde informatique. Cela passe par exemple par l’automatisation, la conception de plateformes destinées à augmenter la valeur ajoutée ou encore la réactivité grâce à des services qui sont plus rapides et plus efficaces. Mais au-delà de ça, il s’agit d’un univers complet, riche en possibilités, que nous allons vous présenter ci-dessous.

Qu’est-ce que le DevOps ?

Le DevOps cherche à unifier à la fois le développement logiciel et l’administration des structures informatiques.

Pour comprendre de quoi on parle, il faut s’intéresser à l’origine du mot. Il s’agit de la concaténation des trois premières lettres du mot anglais development et de l’abréviation « Ops » qui signifie « opérations » ou encore « exploitations » en anglais. Pour de nombreux informaticiens, ces deux visions du monde sont souvent opposées ou bien ont des objectifs contradictoires.

Le DevOps est donc un mouvement de l’ingénierie informatique, qui vise à unifier le développement logiciel et l’administration des structures informatiques. Pour ces dernières, l’accent est surtout mis sur l’administration système. L’objectif est donc de globaliser les méthodes Agile à l’ensemble du système d’information et d’appliquer les principes à la production.

D’où vient le DevOps ?

Le concept a été développé en 2008 mais c’est en 2009 que cette culture a commencé à essaimer.

Le premier à avoir conceptualisé le DevOps est l’informaticien belge Patrick Debois qui en a parlé en 2008 avec Andrew Sharfer, lors de la conférence Agile à Toronto. L’année suivante, des conférences baptisées « DevOpsDays » sont apparues, dans la première à Gand, en Belgique. Désormais, on en trouve un peu partout dans le monde.

Qui utilise le DevOps ?

De grands noms de la Silicon Valley et des gros groupes y ont recours.

Au fil des années, le nombre d’entreprises ayant recours au DevOps a connu une croissance exponentielle. S’il s’agit souvent de bouleverser les habitudes, les résultats sont indéniables avec le temps et les moyens nécessaires. De fait, Google, Linkedin, Amazon, Oui.sncf ou encore Blablacar ont recours au DevOps dans leur activité.

Comment ça marche le DevOps ?

Le DevOps cherche à unifier des objectifs différents en modifiant les méthodes de travail.

L’objectif concret du DevOps est de casser le mur qui existe souvent au sein d’une même entreprise entre les ingénieurs chargés de développer la partie logicielle de ceux qui gèrent l’administration des systèmes et leur architecture. On considère souvent que le premier doit faire évoluer des applications à un coût limité et parfois au détriment, de façon temporaire, de la qualité ou des performances. Le second vise plutôt à gérer la mise en production puis à se porter garant de leur disponibilité et temps de réponse. Autant dire que les objectifs sont très éloignés.

L’objectif du DevOps est donc de le faire travailler ensemble. Que les contraintes qui seront impératives à l’heure du déploiement soient intégrées au travail dès le développement. Pour y parvenir, on s’appuie souvent sur la philosophie Open Source, mais aussi sur une méthode de travail qui doit être agile et transparente.

Plusieurs points à mettre en œuvre

Pour mettre en œuvre le DevOps, il faut appliquer différents changements dans l’entreprise.

Concrètement, les entreprises qui ont recours au DevOps appliquent souvent plusieurs grandes lignes qui sont nécessaires pour le faire de façon régulière. La première ? Il faut faire un déploiement régulier des applications. C’est cette répétition qui permettra de favoriser la fiabilité du processus. On trouve aussi une volonté de tester de plus en plus tôt et surtout dans un environnement de travail ayant les mêmes contraintes que la production. L’intégration doit aussi se faire en continu. Pour favoriser la réaction et la qualité du service, la boucle d’amélioration doit être le plus courte possible en misant notamment sur les feed-back des utilisateurs. Enfin, il faut une surveillance poussée, grâce à des métriques précises, de l’exploitation et de la qualité de la production.

Quels sont les avantages du DevOps ?

Le DevOps propose de nombreux avantages aux entreprises qui l’adoptent.

Si sur le papier le DevOps peut sembler séduisant en prônant des méthodes de travail plus Agile, certains peuvent toutefois s’interroger sur les effets concrets du travail d’un DevOps Engineer. Si le travail est réalisé correctement, cela permet une amélioration de l’expérience digitale pour les clients mais aussi des meilleures conditions de travail pour les collaborateurs. Les logiciels et applications sont pensés de façon plus complète et se révèlent donc plus performants, souffrent de moins de bugs et de failles de sécurité.

Surtout, le DevOps est un travail au long cours. Il ne s’arrête pas au moment du déploiement d’une application. Le travail continue ensuite dans un second temps pour résoudre les problèmes qui peuvent survenir, tant au niveau du logiciel même ou bien des serveurs physiques ou encore clusters. A terme, cela permet donc sensiblement d’améliorer la satisfaction des utilisateurs.

C’est quoi un DevOps Engineer ?

Le DevOps Engineer est généralement un ingénieur informatique doté de différentes compétences.

Il s’agit d’un nouveau métier. On trouve peu de DevOps dans les entreprises à l’heure actuelle et la majorité sont des autodidactes. C’est sans doute normal et les choses devraient évoluer. Pour l’instant, il n’existe pas de formation spécifique. Mais le cursus le plus adapté pour espérer devenir ingénieur DevOps est de faire une école d’ingénieur informatique à Bac+5. C’est en général le type de profil qui est apprécié par les recruteurs. Il faut bien entendu avoir des compétences en développement mais aussi en administration de systèmes. C’est ce qui est, vous l’aurez compris au cœur du métier.

Combien peut gagner un DevOps ?

Le salaire d’un ingénieur DevOps débute souvent autour de 3.000 euros mensuels et peut rapidement grimper par la suite.

Puisque le DevOps est encore une fonction récente, un poste considéré comme innovant dans de très nombreuses entreprises, il peut parfois être compliqué de savoir réellement combien on vaut en assumant cette fonction.

Bonne nouvelle si vous êtes intéressé pour devenir DevOps, sachez qu’un débutant ayant de bonnes connaissances peut facilement gagner 3.000 euros bruts chaque mois. Le salaire peut ensuite très vite augmenter. Selon le cabinet de recrutement Robert Half, un ingénieur qualifié peut ainsi gagner de 51.500 à 79.000 euros bruts par an en tant que DevOps.

Six outils utiles pour le DevOps

Pour mettre en place le DevOps, il est possible de s’appuyer sur différents outils.

Si vous commencez sans doute un peu mieux à comprendre ce qu’est le DevOps et à quoi cela peut servir dans une entreprise, le type d’outils auxquels ils ont recours vous semble peut-être encore un peu flou. Bien entendu, il est impossible de faire une liste exhaustive, et chaque DevOps aura sa palette propre de services et fonctions dont il a besoin pour son travail.

On trouve toutefois plusieurs grandes familles d’outils dont voici une ébauche :
> Outils de gestion de code source
> Outils de monitoring et alerting
> Orchestrateurs de conteneurs logiciels
> Outils d’infrastructure as a code
> Outils de gestion de configuration
> Outils d’intégration et de déploiement continus type CI/CD

A chaque fois, plusieurs outils sont donc possibles. Parmi ceux-ci, on trouve par exemple GitHub, Ansible, Terraform, Grafana ou encore Docker.

A noter que le cloud d’Amazon Web Services ou encore celui de Microsoft Azure intègrent des briques essentielles au travail des équipes DevOps avec des offres dédiées.

Une place importante pour la sécurité

Le DevOps permet d’implémenter facilement l’aspect sécurité dans les projets.

A noter que dans le modèle DevOps, les entreprises doivent aussi accorder une place importante à la sécurité, qui est parfois le parent pauvre pour certains projets. Or, pour tirer pleinement profit des avantages qu’offre cette culture de travail, c’est un paramètre indispensable.

Il est ainsi nécessaire de le penser dès la planification d’une application ou d’un service pour ne pas ralentir les processus, mais aussi de profiter du DevOps pour les automatiser. Là encore, il faudra sélectionner les bons outils d’intégration. Les équipes de sécurité doivent aussi embrasser la culture DevOps ou plutôt la sécurité doit devenir l’affaire de tous dans le cadre d’un travail collaboratif DevOps.