Bonjour Quentin ! En amont de notre interview, j’ai pu constater que tu avais une certaine polyvalence. Peux-tu décrire ton rôle actuel en tant qu'administrateur système et professionnel DevOps, ainsi que les principales responsabilités associées ?
Bonjour Alisée, effectivement, je vais contextualiser puis je te donnerai quelques exemples.
En mission pour la DSI (Direction des Systèmes d'Information) du gouvernement monégasque, j'interviens actuellement en tant qu'administrateur système/réseau & DevOps au sein de la Cellule Web à la DMA (Division de la Maintenance Applicative).
Je travaille de manière transversale sur différents projets, en étroite collaboration avec les RA (Responsables Applicatifs) pendant les phases d'industrialisation et de configuration des sites web du gouvernement.
Mais je suis également chargé de suivre leurs déploiements et leurs évolutions lors des mises en production
Je suis une personne plutôt polyvalente, comme tu l’as fait remarquer, et de ce fait, mes missions s'articulent autour de problématiques diverses.
Je peux être amené à faire du développement, à configurer des services Linux, ou encore à apporter une expertise purement réseau (configuration d'équipements d'équilibrage de charge F5, identification et débogage d'accès réseau), ainsi que de la supervision (Monitoring).
Je suis également responsable d'une brique applicative composée de plusieurs outils au sein de nos environnements de production. Ces outils permettent aux développeurs d'y stocker leurs codes, de les builder et de déployer de manière automatisée les sites web et leurs dépendances.
Les outils mis à disposition servent à stocker les données de configuration sensibles des sites et à les superviser en temps réel (monitoring basé sur des métriques, stockage, graphes, alertes, etc.). Ils servent aussi à scanner les vulnérabilités CVE (Common Vulnerabilities and Exposures) des sites web afin qu'ils soient conformes avant leur déploiement sur les différents environnements. Pour finir, je fais aussi de la veille technique afin de maintenir ces outils à jour. Toutes mes démarches sont documentées, en accord avec les procédures du Gouvernement.
En matière d’automatisation des déploiements et de la configuration, tu as mentionné l’utilisation de plusieurs outils. Comment ces technologies s’intègrent-elles dans ton flux de travail et comment choisis-tu l’outil le plus adapté à chaque tâche ?
Toute notre partie CI (Continuous Integration) est assurée par l'outil Gitlab CI, issu de notre brique d'infrastructure applicative.
Je développe donc toute la partie build des sites web et m'appuie sur les recommandations des développeurs concernant le versioning des dépendances (cela garantit que les outils et bibliothèques utilisés sont à jour, compatibles et fonctionnent sans erreur.). Pour la partie CD (Continuous Deployment/Delivery), nous utilisons aujourd'hui deux méthodes de déploiement sur les différents environnements. La première consiste à utiliser les outils Ansible et Docker pour déployer nos briques d'infrastructures. Ces déploiements sont déclenchés manuellement. Nous avons fait ce choix afin de maîtriser et de surveiller précisément chaque étape du déploiement. Ces briques étant critiques, une attention particulière est nécessaire.
La seconde méthode est assurée en grande partie par les outils Semaphore et Rundeck, mis à disposition auprès des équipes de développeurs pour les rendre autonomes sur les déploiements des sites web.
Cependant, nous préférons, pour le moment, réaliser nous-mêmes (c’est l’équipe Cellule Web qui s’en charge) les déploiements sur les environnements de production lors de créneaux de MEP (Mise En Production) dédiés et hebdomadaires.
L'étape de configuration est en grande partie réalisée à l'aide de modèles (templates) codés en Jinja2. Le contenu de ces fichiers est variabilisé et généré au moment du déploiement. Les "secrets" (comptes, mots de passe, etc.) sont stockés dans l'outil Vault de la brique d'infrastructure et récupérés au moment opportun.
Tu as décrit de façon détaillée ton rôle et tes responsabilités, qui demandent une grande expertise et adaptabilité. Dans ce contexte, quel est l’impact d’Inforca sur tes missions et comment cette collaboration contribue-t-elle à ton développement professionnel au quotidien ?
Inforca m'a permis de poursuivre ma carrière professionnelle à Monaco. De plus, la mission au sein du Gouvernement est très enrichissante et me permet d’aborder de nouvelles thématiques et de relever des défis dans le domaine de l’informatique. Dans le cadre de certains projets (basés sur l'architecture Ibexa), je suis amené à travailler avec l'agence de développement web d'Inforca. Cette collaboration est bénéfique, tant pour moi que pour ses talentueux développeurs. Nous avons régulièrement des échanges techniques stimulants et constructifs.
Inforca contribue directement à l'enrichissement de mes compétences, notamment dans le domaine du développement web.
Au quotidien, je tiens à souligner la disponibilité et l'écoute que la direction m'apporte lorsque j'en ai besoin. Ils ont également été très compréhensifs vis-à-vis de mes projets personnels en parallèle de mon activité professionnelle principale (je suis enseignant vacataire à l'Université Nice Sophia Antipolis, où je dispense des cours et travaux pratiques en réseau informatique aux étudiants en formation). Inforca me permet également de développer des relations professionnelles avec les différents consultants lors des séminaires organisés (des moments toujours agréables !).
Tu as souligné l’importance croissante de l’automatisation dans ton métier. Comment vois-tu l’évolution du rôle d’administrateur système/DevOps dans les prochaines années ?
Selon moi, l'administrateur système/DevOps doit avant tout être curieux et polyvalent, capable de s'adapter à toutes les situations.
Il doit savoir (presque) tout faire, sans pour autant être expert dans tous les domaines informatiques (Data, IA, Monitoring, Développement, Sécurité, etc.). L'essor de l'automatisation amènera l'administrateur à faire de plus en plus de développement IaC (Infrastructure as Code) afin d'automatiser et de simplifier les tâches manuelles. Son objectif sera d'accélérer les opérations chronophages et de faciliter les déploiements d'applications sur les différents environnements. La virtualisation des systèmes sera au cœur de son architecture, et il devra donc posséder des connaissances solides dans ce domaine, ainsi que sur les notions de sécurité (politique zero trust, CVE, conformité des systèmes d'exploitation, pen-testing, bonnes pratiques CIS, etc.).
La sécurité des systèmes d’information est un enjeu majeur, notamment dans le cadre de ton travail au sein du Gouvernement monégasque. Comment adaptes-tu tes pratiques pour répondre à ces exigences strictes en matière de sécurité ?
La politique du SI (Système d'Information) au Gouvernement est très stricte concernant la sécurité. C'est une notion que je dois prendre en compte dans chacune de mes réflexions, que ce soit lors de la construction d'une nouvelle brique d'architecture ou lors des évolutions de mes projets. Aujourd'hui plus que jamais, la sécurité du SI doit être au cœur des préoccupations de l'administrateur. Sans oublier la disponibilité des services exposés, mesurée à travers les Service Level Agreement / Objective / Indicators : SLA (engagement), SLO (objectif), et SLI (mesure). Ce cadre gère et garantit la qualité des services numériques et forme un système pour suivre et maintenir les performances des services.
Propos recueillis par Alisée, Responsable Développement Digital et Événementiel chez Inforca, auprès de Quentin G, Administrateur système et professionnel DevOps chez Inforca.