Description
DevOps Architect
Police Fédérale – Direction Générale Judiciaire
Contrat jusqu’en mars mais renouvable
Environnement de travail
La Police Judiciaire Fédérale est une police spécialisée, principalement chargée de la lutte contre la criminalité organisée, sous toutes ses formes. Elle constitue l’une des trois directions générales de la police fédérale et concentre les dossiers d’enquêtes relatifs à des domaines tels que la cybercriminalité, le terrorisme, le grand banditisme, le trafic de drogue, et bien d’autres encore. Elle fournit un appui et une expertise à l’ensemble de la police intégrée, ainsi qu’à ses partenaires nationaux et internationaux.
Au sein de cette direction, se trouvent les ressources opérationnelles affectées aux opérations de police judiciaire, à la lutte contre la criminalité grave et organisée, aux unités spéciales, ainsi qu’aux opérations de police technique et scientifique.
Afin d’assurer ses besoins spécialisés, la DGJ à mit en place une Ligne IT comprenant un niveau central, en complément des diverse équipes décentralisées présentes aux seins des directions composant le pilier judicaire. La ligne IT intègre une division Data, spécialisée dans le data engineering et la data science, une division Software qui développe les différentes applications et services et enfin, une division opération Operation chargée de mettre en place et de maintenir l’infrastructure sur laquelle s’appuie les divisions Data et Software.
Description de la fonction
Vous serez affecté en tant que DevOps Architect au sein de la division Operations de la ligne IT de la DGJ. Votre rôle principal consistera à assurer la mise en place et le support des différents outils et processus DevOps, permettant l’industrialisation automatisée des solutions développées ainsi que des infrastructures destinées à les héberger. Ces projets opérationnels sont critiques et apportent un appui à l’ensemble du pilier judiciaire.
Cette fonction comporte deux axes techniques principaux :
1. Kubernetes : mise en place, configuration, maintenance et industrialisation de clusters Kubernetes, dont le provisionnement est réalisé via Infrastructure-as-Code (IaC).
2. CI/CD : mise en place, configuration et maintenance de l’intégration et du déploiement continu (CI/CD) des différents projets logiciels et des infrastructures IaC développées au sein de la Ligne IT.
Les clusters Kubernetes mis en place peuvent être déployés sur une infrastructure physique (Bare-Metal), virtuelle (VM) ou hybride.
Étant donné la charge importante et la criticité des applications et des informations qui y transitent, vous veillerez à ce que les infrastructures déployées soient :
· Haute disponibilité : capable de fonctionner sans interruption en cas de panne ou de maintenance.
· Sécurisées : protection des données et des accès conformément aux standards de sécurité.
· Scalables : possibilité d’augmenter les ressources à la fois horizontalement (ajout de nœuds) et verticalement (augmentation des ressources d’un nœud).
Vous assurerez également le lien entre les divisions Data Engineering, Data Science et Software et la Division Opération. En tant qu’architecte, vous intégrerez les différentes demandes provenant de ces équipes afin d’identifier des solutions techniques appropriées et de les mettre en œuvre en collaboration avec vos collègues de la Division Opération.
Missions principales
Dans un premier temps, vous serez chargé de la mise en place d’un cluster Kubernetes afin de fournir un nouvel environnement de développement aux équipes. Ce cluster sera provisionnée au moyen d’infrastructure as code et déployé sur des serveurs bare métal. Il devra être mis en place de manière optimale, car servira ensuite de modèle pour le déploiement des différents environnements de production. L’objectif étant de pouvoir assurer la gestion des nouvelles infrastructures au moyen d’une approche IAC. Durant cette phase, vous mettrez déjà en place un premier processus CI/CD pour ce projet d’infrastructure-as-code.
Par la suite, vous vous chargerez de mettre en place l’aspect continous integration et continuous delivery pour les différents projets en développement au sein de la ligne IT. Une base existe déjà, mais il est nécessaire de la faire évoluer afin d’asurer un processus optimal. Les projets sont variés, allant d’u développement d’application Web classiques, aux projet orientés Intelligence Artificielle.
Par la suite, vous serez amené à maintenir ces éléments mis en place et à les faire évoluer en fonction des demandes, ou des problèmes constatés. En parallèle vous serez également chargé de la mise en place de nouveaux clusters K8S. Vous serez appuyé par les autres membres de la division opération pour les aspects installation physique et réseau.
Profil Recherché
Vous êtes titulaire au minimum d’un baccalauréat ou idéalement d’un master en informatique et pouvez justifier de plusieurs années d’expérience dans une fonction similaire.
Vous possédez de solides connaissances dans la mise en place et l’administration de clusters kubernetes et être capable de réaliser cela on-premice. La gestion du storage, l’intégration d’un cluster de base de données, ingress, kubeflow et l’exposition et la sécurisation des services dans un environnement K8S n’ont plus de secret pour vous.
Vous disposez de bonne connaissance en sécurité, appliquées à un environnement kubernetes, vous êtes capable d’assurer la mise en place de certificat de sécurité ainsi qu’une automatisation de la gestion de ceux-ci, y compris pour des domaines privés
Vous avez une expérience confirmée en CI/CD et dans la mise en place de pipelines de déploiement avec GitLab tant pour les projets de développement que pour l’infrastructure-as-code.
Vous disposez de connaissance en développement logiciel et les concepts d’API REST, de Message Broker, et d’authentification OpenID et EntraID vous sont familier.
Vous avez l’habitude de travailler en environnement agile, et êtes capable de prendre le lead dans un projet. Vous pouvez facilement vous adaptez à un changement de cap ou une nouvelle technologie non encore maitrisée. Vous êtes persévérant, orienté solution, et vous vous intégrez facilement dans une équipe aux profils et expériences variés.
Vous maîtrisez l’anglais, ainsi qu’une des deux langues nationales. La connaissance active d’une langue nationale et passive (au minimum) de l’autre constitue une réelle plus-value.
La connaissance de l’environnement Police, et plus particulièrement de la Police Judiciaire Fédérale, est un atout important.
Hard Skils
Kubernetes : Déploiement, administration, sécurisation et supervision de clusters en environnements bare-metal, virtuels ou hybrides. Optimisation du scaling et de la tolérance aux pannes.
Infrastructure as Code (IAC) : Maîtrise de Terraform et connaissance de Pulumi (atout). Conception et automatisation du provisionnement d’infrastructures reproductibles et traçables.
Scripting et configuration : Développement et automatisation via Python et YAML (manifests Kubernetes, pipelines CI/CD, playbooks Ansible).
Monitoring / Logging / Service Mesh : Mise en place d’outils tels que Prometheus, Grafana et Istio pour la supervision, l’observabilité et la gestion du trafic applicatif.
Sécurité : Gestion des secrets et certificats, mise en œuvre des politiques RBAC et des Network Policies, intégration de mécanismes d’authentification sécurisée.
Containers : Maîtrise de Docker pour la création et la gestion d’images et de conteneurs, intégration dans les workflows Kubernetes et CI/CD.
CI/CD : Expérience confirmée avec GitLab (pipelines, runners, intégrations). Automatisation du cycle complet de build, test et déploiement.
Authentification et gestion des entités : Intégration d’OpenID Connect et de l’écosystème Microsoft 365 (O365) pour la fédération des accès et l’authentification unifiée.
API et Communication interservices : Conception et intégration d’architectures orientées services via REST API, gRPC, SignalR, RabbitMQ et MassTransit.
Gestion de projet : Application des méthodologies Agile / Scrum, participation active aux sprints, intégration continue et collaboration étroite avec les équipes de développement et d’exploitation.
Soft Skills
Capacité à fédérer : Savoir aligner des profils hétérogènes autour d’un objectif commun.
Persévérance : Garder le cap et ne pas abandonner, même face à des difficultés majeures.
Capacité à temporiser : Apaiser les tensions, maintenir une atmosphère constructive sous pression, et jouer un rôle de régulateur entre les stakeholders et l’équipe.
Esprit d’initiative : Faire preuve de proactivité afin d’anticiper les enjeux et initier les dynamiques de projet sans attendre une validation systématique.
Sens des priorités : Identifier les tâches critiques pour atteindre les objectifs, garder une vision à long terme pour anticiper les prochaines étapes, et réorganiser le travail en fonction des imprévus ou des éléments nouveaux qui se présentent au fil du projet.
Orientation utilisateur / client : Gérer les priorités en tenant compte des besoins réels du terrain et de l’expérience utilisateur.
Communication claire et spontanée : Communiquer de manière fluide, transmettre le bon message, au bon moment et au bon niveau. Être capable d’expliquer des concepts techniques à des non-techniciens.
Vision transverse : Intégrer les dimensions techniques, humaines, organisationnelles et politiques dans les prises de décision.
Esprit analytique : Aller au-delà des symptômes pour identifier les causes profondes des problèmes.
