Un ingénieur en sécurité applicative est un professionnel de la sécurité qui veille à ce que les logiciels soient conçus, développés et livrés avec la sécurité comme propriété intégrée plutôt que comme préoccupation secondaire. Le rôle se situe entre les équipes de développement et l'organisation de sécurité au sens large, traduisant les exigences de sécurité en conseils pratiques que les ingénieurs peuvent appliquer et aidant ces équipes à détecter et corriger les faiblesses avant que le logiciel n'atteigne la production. Là où un pentester évalue un système fini depuis l'extérieur, un ingénieur en sécurité applicative intervient tout au long du cycle de développement logiciel, façonnant dès le départ la manière dont une application est construite.
Au quotidien, le travail couvre plusieurs activités récurrentes. Un ingénieur en sécurité applicative examine les conceptions et réalise de la modélisation des menaces pour anticiper comment une fonctionnalité pourrait être détournée, analyse le code et les résultats pour confirmer quels problèmes sont réels et significatifs, et sélectionne, ajuste et exploite les tests automatisés qui s'exécutent au sein de la chaîne de build, notamment l'analyse statique, l'analyse des dépendances et les tests dynamiques. Une grande partie du poste consiste en du triage et de la priorisation : distinguer le bruit du risque réel, expliquer l'impact concret d'une vulnérabilité et travailler avec les développeurs pour confirmer que les correctifs sont corrects et durables. L'ingénieur entretient également les standards, les bibliothèques et les configurations sécurisées par défaut qui font du chemin le plus sûr le chemin le plus simple pour les équipes qu'il accompagne.
Le rôle exige une combinaison de connaissances en logiciel et en sécurité difficile à feindre. De solides bases sur la manière dont les applications modernes sont construites, y compris les frameworks web, les API, l'authentification et l'autorisation, le traitement des données et les services cloud, permettent à l'ingénieur de raisonner sur l'endroit où les choses peuvent mal tourner et sur la question de savoir si un correctif proposé tient réellement. À cela s'ajoute une bonne connaissance des classes de vulnérabilités courantes, des principes de conception sécurisée et des références largement utilisées comme le catalogue de l'OWASP. Tout aussi importantes sont les qualités professionnelles qui donnent toute leur portée au travail technique : une écriture claire, de la patience pour expliquer le risque à des ingénieurs qui ne sont pas spécialistes de la sécurité, et le discernement nécessaire pour mettre en balance un résultat avec le coût et la faisabilité de sa correction.
On accède couramment à la sécurité applicative en venant du développement logiciel, en apportant une expérience directe de la façon dont le code est écrit et livré, ou d'un parcours de test de sécurité, en apportant un œil averti sur la manière dont les systèmes échouent. Beaucoup se construisent une crédibilité en contribuant à du code sécurisé, en étudiant les schémas de vulnérabilités et en s'entraînant sur des applications volontairement vulnérables avant d'occuper un poste dédié à l'appsec. Avec l'expérience, un ingénieur peut évoluer vers des postes seniors et principaux qui définissent l'orientation du programme de développement sécurisé d'une organisation, se spécialiser dans des domaines tels que la sécurité du cloud ou des API, ou s'orienter vers des fonctions d'encadrement. Le rôle partage une frontière avec plusieurs voisins : le relecteur de code sécurisé se concentre sur la lecture attentive du code source, l'ingénieur en sécurité produit est responsable de la sécurité d'un produit spécifique ou de l'ensemble de sa pile technique, l'ingénieur DevSecOps se concentre sur l'intégration de contrôles de sécurité dans l'infrastructure de livraison automatisée, et le security champion est un développeur au sein d'une équipe qui porte les pratiques de sécurité dans le travail quotidien. Un ingénieur en sécurité applicative collabore fréquemment avec tous ces profils tout en conservant le large mandat de rendre le logiciel lui-même plus sûr.