Un ingénieur DevSecOps est un professionnel de la sécurité qui intègre la sécurité dans le cycle de vie de la livraison logicielle, de sorte que la protection soit intégrée dès le départ plutôt que contrôlée à la fin. Le rôle découle du constat que les applications cloud sont désormais livrées en continu et que la revue de sécurité manuelle ne peut pas suivre le rythme de mises en production quotidiennes, voire horaires. En plaçant des vérifications automatisées, des garde-fous de politique et des réglages sécurisés par défaut au sein des pipelines que les équipes de développement utilisent déjà, l'ingénieur DevSecOps fait en sorte que la voie sûre soit aussi la voie rapide et par défaut. Le travail se situe au point de rencontre de la sécurité, de l'ingénierie logicielle et des opérations, et il repose autant sur la collaboration avec les développeurs que sur la profondeur technique.
Au quotidien, le travail est centré sur le pipeline d'intégration et de livraison continues et sur l'automatisation qui l'entoure. Un ingénieur DevSecOps configure et ajuste des outils qui analysent le code source, les dépendances, les images de conteneurs et les définitions d'infrastructure, puis intègre les résultats dans le pipeline afin que les problèmes significatifs soient remontés tôt et clairement aux équipes capables de les corriger. Une grande partie de l'effort consiste à réduire le bruit, car des vérifications qui produisent trop d'alertes à faible valeur sont rapidement ignorées. Le rôle implique également de gérer les secrets en toute sécurité, de codifier la politique de sécurité sous forme de code, de durcir les environnements de build et de déploiement, et de maintenir des modèles d'infrastructure as code qui provisionnent les ressources cloud dans un état de référence sécurisé. Sous-jacent à tout cela, il y a un partenariat constant avec les équipes d'ingénierie pour résoudre les constats sans ralentir la livraison.
Le rôle exige de véritables compétences en ingénierie logicielle, aux côtés des connaissances en sécurité. Un ingénieur DevSecOps est généralement à l'aise avec le scripting et l'automatisation, la gestion de versions, les plateformes de conteneurs et d'orchestration, et au moins un grand fournisseur de cloud, et il comprend comment les applications modernes sont conçues et déployées. Du côté de la sécurité, le rôle s'appuie sur une connaissance des classes courantes de faiblesses logicielles et de configuration, des principes du code sécurisé et des standards qui les décrivent. Tout aussi importantes sont les qualités de collaboration que le rôle demande : la capacité à expliquer un constat pour qu'un développeur puisse agir, le jugement nécessaire pour hiérarchiser le risque face à la pression de livraison, et la patience d'améliorer un processus de façon incrémentale plutôt que d'imposer des contrôles que les équipes contourneront.
On entre couramment dans ce domaine à partir du développement logiciel, du site reliability engineering ou de l'ingénierie de plateforme, ou encore des opérations de sécurité, en apportant soit l'aisance en ingénierie, soit le socle de sécurité que le rôle combine. Beaucoup renforcent la moitié manquante par la pratique concrète, l'étude structurée et des certifications cloud ou sécurité reconnues avant de prendre pleinement en charge un pipeline. Avec l'expérience, un ingénieur DevSecOps peut évoluer vers un rôle de référent qui définit les standards de livraison sécurisée au sein de nombreuses équipes, se spécialiser dans des domaines comme la sécurité des conteneurs ou de la chaîne d'approvisionnement, ou s'orienter vers l'ingénierie et l'architecture de sécurité des plateformes. Le rôle est voisin de celui d'ingénieur en sécurité cloud, qui construit et exploite des contrôles de protection sur l'ensemble du parc cloud, et de l'architecte en sécurité cloud, qui conçoit le modèle de sécurité global que les pipelines et les plateformes sont censés respecter. Il complète celui d'analyste en sécurité cloud, qui surveille et investigue l'activité, et celui de spécialiste en conformité cloud, dont les exigences de contrôle peuvent être appliquées automatiquement grâce au pipeline.