Type de contrat Titulaire, contractuel, militaire
Début du contrat 01/06/2021
Localisation Paris 15e Arrondissement, 75, Paris, Île-de-France
Niveau d'études Diplôme d'ingénieur, Master 2 ou titre équivalent de niveau Bac + 5
Domaine professionnel Spécialiste en développement sécurisé
Niveau d'expérience De junior à confirmé (3 à 10 ans d'expérience)
Rémunération mensuel net
annuel brut (selon expérience)

Ingénieur.e en charge de la conception et du développement d'OpenCTI F/H

Descriptif de l’offre

Rejoindre l’Agence nationale de la sécurité des systèmes d’information (ANSSI), c’est mettre ses compétences au service de l’intérêt général en participant à une mission capitale, d’actualité et porteuse de grandes responsabilités dans un monde où la cybersécurité est devenue l’affaire de tous !

OpenCTI est un outil entièrement libre permettant le stockage, l’organisation, la visualisation et le partage de la connaissance sur les menaces informatiques (Cyber Threat Intelligence, ou CTI) (https://www.opencti.io/fr/ et https://github.com/OpenCTI-Platform/opencti). La plateforme est utilisée au sein de la sous-direction des Opérations (SDO) de l’ANSSI pour structurer et enrichir la connaissance qu’a la SDO sur les menaces informatiques actuelles, dans le but d’alimenter les différents métiers (réponse à incident, détection) et les partenaires de l’Agence. OpenCTI est une application réalisée en Javascript (ReactJS pour le frontend, NodeJS pour le backend) et en Python, avec une API en GraphQL. Le stockage des données est réalisé dans Elasticsearch. Reddis pour la gestion du flux d’évènements, Minio pour le stockage du flux, et RabbitMQ pour la gestion des messages sont également utilisés. L’ANSSI est activement impliquée dans la gouvernance publique du projet et le pilotage de sa feuille de route, gérés par l’association Luatix (loi 1901), comme porteur historique du projet.


En tant que développeur OpenCTI, vous êtes rattaché au Bureau Applicatifs et Environnement (BAE), de la division Infrastructures, Données et Développement (DID2) de la SDO. Au quotidien, vous intervenez principalement auprès du bureau Analyse de la Menace et des Risques (AMR) de la Division Connaissance et Anticipation (DCA). Des jours télétravaillés sont possible, mais une présence sur place chaque semaine est demandée.

Partie intégrante de l’équipe projet OpenCTI, transverse à la SDO, vous jouez un rôle central dans le développement et la montée en maturité de la SDO sur l’outil. Vous appréciez interagir directement avec les métiers utilisateurs, mais aussi avec les développeurs externes et la communauté du projet open source.


A ce titre, vous aurez pour missions de :

•    Concevoir, développer, documenter et faire évoluer les fonctionnalités nécessaires à la SDO, définies et priorisées dans la feuille de route interne et en accord avec la feuille de route publique. Ces développements pourront être publiés en open source ;

•    Identifier et résoudre les bugs logiciels remontés par les utilisateurs, en coordination avec les développeurs sur le produit open source ;

•    Participer à l’animation technique de la communauté OpenCTI, notamment grâce à des ateliers dédiés aux développeurs sur le projet ;

•    Participer aux travaux internes pour le suivi et l’extension de l’usage de l’outil à la SDO et à l’ANSSI ;

•    Assurer le maintien en conditions opérationnelles et de sécurité de la plateforme OpenCTI en coopération avec le Bureau Infrastructures et Support (BIS).

Profil recherché

Titulaire d'un diplôme, issu d'une école d'ingénieur ou université, de niveau Bac+5 minimum, vous avez une expérience d’au moins trois ans dans le développement logiciel et une expérience dans les projets de développement logiciel. Vous appréciez travailler en autonomie, tout en étant au contact des équipes métiers et avec des interlocuteurs extérieurs.


Savoir-faire:

Vous avez des connaissances dans les domaines suivants :

  • Le développement d’application web, en particulier en JavaScript. Une expérience avec des framework de développement Javascript comme Vue.js, Angular ou ReactJS serait un point fort ;
  • Une connaissance du langage de programmation Python ;
  • Une expérience précédente avec Elasticsearch ou des technologies équivalentes est recherchée ;
  • Une connaissance du protocole S3 et de l’API GraphQL, ou de technologies équivalentes à celles utilisées dans l’outil serait appréciée ;
  •  Une connaissance de la solution de containerisation d’application Docker, ainsi que de l’outil de suivi de version Git seraient des atouts ;
  • Les fondamentaux de l’algorithmie et de la programmation système (Linux) ;
  • Un niveau d’anglais permettant la rédaction de documents et la conduite d’échanges lors de réunions est attendu.  


Savoit-être:

  • Rigueur;
  • Sens du service de l'Etat. 

Process de recrutement

  • Si votre candidature est présélectionnée, vous serez contacté(e) pour apprécier vos attentes et vos motivations au cours d'un entretien téléphonique ou physique.
  • Des tests techniques pourront vous être proposés.
  • Vous ferez l'objet d'une procédure d'habilitation.