Les objectifs de la mission sont donc :
Sécuriser les codes sources des projets de la DTU en les migrant vers les outils groupe.
Industrialiser et automatiser les déploiements et les mises en production des projets
Gérer les mises à jour et les montées de versions des systèmes d'exploitation
Accompagner / mettre en oeuvre les possibles décommissionnements des applications qui ne pourraient pas être mises à jour
Description détaillée des tâches qui constituent la mission :
Le profil travaillera en collaboration avec les membres de la cellule de coordination et rendra compte de ses actions. Il aura pour tâches de :
Migrer les codes sources : Assurer la migration des codes sources vers les outils groupe en respectant les bonnes pratiques de sécurité et de gestion des dépôts.
Utiliser les outils de nettoyage pour optimiser la taille des dépôts et sécuriser les données sensibles.
Industrialiser les déploiements : Automatiser les processus de déploiement et de mise en production en utilisant Jenkins, GitLab CI/CD, et Ansible.
Mettre en place des pipelines de CI/CD robustes et efficaces pour garantir des déploiements continus et sécurisés.
Accompagner les montées de versions : Planifier et exécuter les mises à jour des systèmes d'exploitation en collaboration avec les équipes techniques.
Assurer la compatibilité des nouvelles versions avec les environnements de développement et de production.
Les principaux livrables attendus au titre de la mission sont les suivants :
Documentation des processus de migration des codes sources : Guide détaillé sur la migration des codes sources vers les outils groupe.
Documentation des bonnes pratiques de gestion des dépôts et des branches.
Documentation des pipelines CI/CD : Description des pipelines de CI/CD mis en place.
Instructions pour l'utilisation et la maintenance des pipelines.
Documentation des outils de sécurité : Guide sur l'utilisation des outils de sécurisation des flux (TLS 1.2, CyberARK).
Documentation sur la fédération d'identité avec OpenAM via reverse proxy.
Scripts de migration des codes sources : Scripts pour automatiser la migration des dépôts de code vers GitLab.
Scripts de nettoyage et de sécurisation des dépôts.
Automatisation des déploiements : Playbooks Ansible pour l'automatisation des déploiements.
Scripts Docker pour la gestion des conteneurs.
Automatisation des tests : Scripts de tests automatisés avec Robot Framework.
Intégration des tests dans les pipelines CI/CD.
Configurations et Environnements
Configurations des outils de CI/CD : Configuration de Jenkins et GitLab CI/CD.
Configuration de SonarQube pour l'analyse de la qualité du code.
Configurations de sécurité : Configuration des flux sécurisés avec TLS 1.2.
Configuration de CyberARK pour la gestion des accès privilégiés.
Configuration de Bastion pour la sécurisation des accès.
Configurations de fédération d'identité : Configuration d'OpenAM via reverse proxy sur Apache ou IIS.
Rapports de migration : Rapport sur l'état de la migration des codes sources.
Analyse des dépôts migrés et des améliorations apportées.
Rapports de déploiement :
Rapport sur les déploiements automatisés.
Analyse des performances et des incidents de déploiement.
Rapport sur les vulnérabilités identifiées et les mesures de sécurisation mises en place.
Analyse des flux sécurisés et des accès privilégiés.
Formation des équipes sur les nouveaux outils et processus mis en place.
Sessions de formation sur les bonnes pratiques de sécurité et de gestion des dépôts.
Support continu pour les équipes de développement et d'exploitation.
Assistance lors des montées de versions des systèmes d'exploitation.
Rédaction des rapports, sécurité
Formation et Support
Sessions de formation
Support technique
Compétences nécessaires :
Expérience avec GitLab pour la gestion des dépôts de code.
Connaissance des bonnes pratiques de gestion des branches et des tags.
Capacité à utiliser des outils de nettoyage et de sécurisation des dépôts (e.g., GitLab CLI, scripts de nettoyage).
Maîtrise de Jenkins et GitLab CI/CD pour l'automatisation des builds.
Expérience avec SonarQube pour l'analyse de la qualité du code.
Connaissance des outils de gestion des dépendances (e.g., Artifactory).
Compétence en Ansible pour l'automatisation des déploiements.
Expérience avec Docker et Harbor pour la gestion des conteneurs.
Connaissance des outils de gestion des secrets (e.g., HashiCorp Vault).
Tests Automatisés : Expérience avec Robot Framework pour les tests de non-régression.
Connaissance des outils de gestion des tests (e.g., Squash TM).
Sécurité : Connaissance des pratiques de sécurisation des projets (e.g., Checkmarx One pour l'analyse SAST).
Capacité à gérer les vulnérabilités et les failles de sécurité.
Compétence en sécurisation des flux avec chiffrement en TLS 1.2.
Expérience en fédération d'identité avec OpenAM via reverse proxy sur Apache ou IIS.
Utilisation d'un Bastion pour la sécurisation des accès.
Expérience avec CyberARK pour la gestion des accès privilégiés.
Gestion des Montées de Versions : ▪ Expérience avec les processus de mise à jour des systèmes d'exploitation.
Capacité à planifier et exécuter les montées de versions en coordination avec les équipes de développement et d'exploitation.
Accompagnement des métiers sur les démarches et processus nécessaire pour l'industrialisation de leurs projets
Une connaissance des environnements Linux est indispensable, et une expérience avec le build .NET et environnements Windows serait un plus.
Profil recherché :
Expérimenté ou sénior avec un minimum de 3 ans d'expérience en DevOps, avec une expertise avérée dans les outils et technologies mentionnés.
Excellentes compétences en communication et en gestion de projet (cadrage, suivi et reporting des actions en cours sur les projets)
Expérience dans le monde des télécommunications ferroviaires serait un plus.