En informatique, le métier d’ingénieur DevOps est relativement nouveau. Il est particulièrement difficile de le comprendre pour ceux qui commencent leur parcours dans l’informatique et qui recherchent simplement une spécialité. L’auteur, Catherine Morel de FrCasinoSpot, vous explique ce qu’est DevOps, comment il est né et quelles doivent être les compétences d’un ingénieur DevOps.
Que signifie « DevOps » ?
Mais que signifie le terme « DevOps » ?
- Une profession, comme un plombier, un artiste ou un programmeur ?
- Une technologie comme le Wi-Fi ou la 4G ?
- Une communauté fermée, une secte ?
Raté ! La solution est dans la quatrième option. DevOps n’est ni une profession, ni une technologie, et certainement pas une société fermée. C’est une méthodologie : un ensemble de recettes, de techniques et d’instructions dont la mise en œuvre nous conduit à un objectif.
Que faut-il savoir pour être ingénieur DevOps ?
Les tâches de l’ingénieur DevOps
Si vous recherchez sur LinkedIn des emplois d’ingénieur DevOps, vous pourrez constater un large éventail d’exigences. La plupart du temps, les descriptions sont très vagues : « être un leader », « analyser les solutions actuelles », « développer des scripts pour Greenplum ». Parfois, le CI/CD déjà mentionné n’est pas requis, il vous suffira de collecter des solutions prêtes à l’emploi sur la base de données. Parfois, au lieu du système d’exploitation Linux, qui est généralement associé au développement, vous devrez administrer Windows.
Désormais, toute application, plate-forme, ressource et site Web est hébergé sur des serveurs et derrière une belle interface. Dans le cas des jeux de l avion argent dans un casino en ligne, vous devez animer des images, accepter des paiements, maintenir une base de données avec des comptes d’utilisateurs, et tout cela doit être sûr, à la fois pour le joueur et pour le site Web. C’est la tâche des DevOps.
Acquérir les notions essentielles
Il y a des « tricheurs » dans le domaine qui ont seulement appris quelques instructions et dans quel ordre appuyer sur les boutons, mais qui ne comprennent pas exactement le fonctionnement. Tôt ou tard, ils se font rattraper par leurs lacunes.
Dans le cas du web, vous devrez comprendre Nginx et PHP-FPM, au moins dans les bases :
- Travailler avec Git. Vous devez être capable de travailler avec des référentiels, savoir ce qu’est une demande de fusion et GitLab.
- CI/CD. Au niveau de base, vous devez créer les pipelines les plus simples, c’est-à-dire les pipelines par lesquels le code est automatiquement déployé sur le serveur.
- Outils IaC. IaC est une approche particulière de la construction d’une infrastructure informatique. L’essentiel est effectué via des fichiers texte spéciaux : nous modifions les configurations, définissons les paramètres, suivons les versions. Ceci est essentiel lorsqu’il y a beaucoup de serveurs, ils doivent être constamment mis à jour et surveillés.
- Vérifier Ansible et Terraform, quelques-unes des solutions les plus populaires.
- Surveillance et journalisation. Il ne suffit pas d’automatiser le système – il faudra également surveiller son état, collecter des informations sur les problèmes afin de les éliminer. Les outils sont nombreux : Prometheus pour les microservices, Zabbix, VictoriaMetrics, Loki, EFK.
Ingénieur DevOps : les autres compétences à acquérir
Il existe d’autres compétences utiles à l’ingénieur DevOps :
- Connaissance des bases de données : MySQL, PostgreSQL, Redis, MongoDB. Certains considèrent cela comme un must, mais dans les grandes entreprises où les DevOps sont construits, ce sont généralement des personnes individuelles qui gèrent les bases de données.
- Connaissance des langages de programmation, au moins à un niveau de base. Cela vous aidera à mieux comprendre les développeurs. Vous n’aurez probablement pas à coder.
- Connaissance des technologies infonuagiques. Maintenant, presque toutes les entreprises vivent dans les nuages, il est donc important de pouvoir travailler avec elles. Parmi les étrangers, ce sont AWS et Google Cloud.
- Comprendre suffisamment l’anglais. En règle générale, il n’est pas nécessaire de pouvoir communiquer couramment en anglais et de traduire des textes en déplacement. Si vous prévoyez d’entrer sur un marché étranger, l’anglais vous sera utile, mais vous pouvez commencer sans lui.