Projet IoT - Au sein d’une équipe de 20 personnes, référent infrastructure Cloud AWS et DevOps. Mes
responsabilités vont de la conception, à la mise en place de l’infrastructure du projet sur AWS et de la plateforme
d’intégration continue, en suivant la démarche d’amélioration continue du courant DevOps : automatisation,
continuous delivery/deployment.
Contexte fonctionnel
Projet SmartConnect pour Enedis - Projet IOT
Gestion d’une plateforme de monitoring du réseau Enedis via la supervision d’ouvrages et d’objets connectés au
sein d’une équipe de 20 personnes composée de 3 équipes (1 équipe Back/Front, 1 équipe fonctionnel et 1 équipe
infrastructure), dans un contexte agile (Kanban/SCRUM). Cette plateforme permet de référencer et de superviser
des objets connectés tels que des capteurs d’inondation, d’intrusion, de température, d’humidité ou encore
d’inclinaison, de centraliser l’ensemble des données émises par ces capteurs et de les restituer via une interface
web permettant de connaître l’état et la qualité du réseau Enedis.
La plateforme est hébergée sur AWS et est composée de nombreux VPC (environnements applicatifs ainsi que
d’une usine de développement)
Activités sur la mission
▪ Gestion de l’infrastructure sur AWS avec Terraform
o Création/suppression automatisé d'environnements applicatifs et d'administration dans des VPC
dédiés, découpés en zone réseaux isolées
o Provisionnement d'instances EC2, de Load Balancers, d'Auto Scaling Group
o Mise en place de DNS via Route53, en zone hébergées privées et publique.
o Sécurisation de l'infrastructure via la mise en place de Security Group pour les instances, de
Network ACL pour les subnets, de WAF comme FireWall.
o Stockage : Buckets S3 chiffrés et versionnés, RDS avec PostgreSQL pour le relationnel, EFS.
o Mise en place de clusters EKS pour le déploiement et le monitoring des applications Dockerisées
avec Kubernetes. Mise en place de Route53 Resolver pour palier au problème de résolution DNS
pour les clusters EKS en accès privé d
(********-roadmap/issues/221#issuecomment-482101710)
o Mise en place d’un cluster ECS (avec EC2) pour l’hébergement de la PIC (Plateforme d’Intégration
Continue, dédiée au Continuous Delivery, Continuous Deployment), entièrement sur Docker.
o Côté monitoring, mise en place de la collecte de métriques et d’alarmes via Collectd et
CloudWatch, surveillance et alerting du budget via Budgets, SNS et SQS.
▪ Configuration du parc de machines avec Ansible
o Création de rôles ansible pour le tooling et le déploiement des applications : déploiement via
kubernetes, installation de Kafka, ActiveMq, ElasticSearch, Kibana, SplunkForwarder, Datadog…
o Déploiement des clés ssh utilisateurs pour l’accés aux instances via stockage sécurisé sur AWS S3
o Mise en place d’un cycle de vie des outils de l’usine logicielle et des environnements avec
extinction et redémarrage des machines aux heures de travail pour économiser les coûts
o Mise en place de playbooks pour la création et la restauration de sauvegardes de bases de
données / fichiers plats (PostgreSQL, elasticsearch, activemq, efs)
o Utilisation de Packer pour aider à la création d’AMI dédiées (vault, consul, jenkins avec ECS)
▪ Gestion de la plateforme d’intégration continue Jenkins
o Mise en place de jobs Jenkins pour différents aspects des développements de la plateforme : build,
release, tests (unitaires, d’acceptance, automatisés), déploiement
o Pipelines groovy pour l’automatisation de processus : déploiement continu, mise en production.
o Migration de la plateforme d’intégration continue d’une instance EC2 classique vers un cluster ECS
▪ Outillage
o Création et mise à disposition d’images Docker dédiées (maven, infrastructure, npm, Inspect)
o Réalisation d’un outil de monitoring du lag Kafka pour l’ensemble des briques applicatives.
o Mise en place de Helmfile et réalisation de charts Helm pour le déploiement sur Kubernetes
▪ Monitoring
o Mise en place de Splunk pour le monitoring des logs applicatives et des logs système des ec2
o Collecte de métriques EC2 via collectd et monitoring via CloudWatch
o Déploiement de l’outil de monitoring du lag Kafka sur l’ensemble des environnements, avec
réalisation d’un dashboard Splunk pour une visualisation rapide et facile des métriques
o Migration de Splunk vers Datadog, déploiement des agents datadog sur une architecture
kubernetes via Helm.
▪ Sécurité
o Security groups pour les instances EC2 et Network ACL pour les subnets réseaux.
o Attribution de rôles utilisateurs et de policies adaptées via IAM (Least Privilege)
o Mise en place d’une authentification JMX pour Kafka
o Mise en place d’un cluster Vault et Consul pour le stockage et la mise à disposition des secrets,
avec un système d’approvisionnement automatique des secrets à la création d’un environnement.
▪ Surveillance du budget
o Estimation et surveillance des coûts AWS pour la mise en place de nouveaux services AWS
o Audit des coûts AWS via Billing et Cost Explorer pour diminuer la facturation
o Surveillance et alerting concernant le budget via AWS Budgets et SNS
▪ Montée de version des outils
o Montée de version des bases de données applicatives PostgreSQL de 10.3 vers 13.7
o Outils de l’usine logicielle : Jenkins, Nexus, Bitbucket, Sonarqube, Terraform, Ansible, Packer
o Montée de versions des différents outils liés à des services AWS : EKS, ECS, provider AWS pour
terraform, kubernetes dashboard…
▪ En charge de la qualification des profils pour les recrutements
AWS (VPC, Route 53, Route 53 Resolver, EC2, EBS, ELB, ASG, S3, EFS, RDS, IAM, KMS, CloudWatch, CloudTrail, SNS,
SQS, SES, Certificate Manager, Config, Direct Connect, WAF, Inspector, Lambda, EKS, ECS, Billing), Ansible,
Terraform, Kafka, Zookeeper, Exhibitor, Elasticsearch, Kibana, Jenkins, Splunk, Docker, Amazon Linux 1 et 2, Debian
Projet IoT - Consultant Java, avec un rôle de Scrum master d’une équipe de 15 personnes, en charge de la mise en
place des méthodes agiles SCRUM et KANBAN, avec animation des cérémonies agiles et collaboration avec le
Product Owner et le chef de projet. Également en charge des évaluations techniques lors des recrutements.
Contexte fonctionnel
Projet SmartConnect pour Enedis - Projet IOT. Gestion d’une plateforme de monitoring du réseau Enedis via la
supervision d’ouvrages et d’objets connectés au sein d’une équipe de 15 personnes, dans un contexte agile
(Kanban/SCRUM). Cette plateforme permet de référencer et de superviser des objets connectés tels que des
capteurs d’inondation, d’intrusion, de température, d’humidité ou encore d’inclinaison, de centraliser l’ensemble
des données émises par ces capteurs et de les restituer via une interface web permettant de connaître l’état et la
qualité du réseau Enedis.
Activités sur la mission
▪ Scrum master
o Gestion d’une équipe de 15 personnes
o Découpage du backlog de tâches en sprints de 3 à 5 semaines
o Animation des cérémonies agiles (daily meeting, sprint planning, sprint review, rétrospective)
o Animation de poker planning hebdomadaires pour le chiffrage des tâches
o Points réguliers avec le Product Owner et l’équipe de développement
▪ Développement Java
o Mise en place d’une architecture de type micro-services, conteneurisés avec docker et kubernetes
o Mise en place d’une authentification SAML pour l’authentification des utilisateurs sur la plateforme.
Utilisation de OKTA pour les environnements de développement, et intégration de l’identity
provider de Enedis pour les environnements de recette / préproduction / production
o Mise en place de service sécurisés consommant à intervalle régulier l’API de TrackUnit pour la
gestion de capteurs GPS pour le tracking des groupes électrogènes.
o Développement de batchs Spring Batch pour des intégration de données dans les référentiels ou
des migrations de données
o Mise en place de socles pour le développement de tests et de batchs Spring Batch
o Mise en place de services de notification mail et sms via les services AWS SES (Simple Email
Service) et SNS (Simple Notification Service)
▪ Montée de version de librairies (Spring, jOOQ)
▪ Suivi de production et analyse des problèmes JVM (Heap, Thread, Garbage Collection)
▪ Support à l’équipe de développement et accompagnement des nouveaux développeurs
▪ Recrutement
Projet IoT - Consultant Java en charge de la conception et l’implémentation de la partie Back Office d’une
plateforme IoT, au sein d’une équipe de 10 personnes.
Contexte fonctionnel
Projet SmartConnect pour Enedis - Projet IOT. Gestion d’une plateforme de monitoring du réseau ...
Projet DPN Store pour EDF, ESIP. Dans le cadre de la démarche de transition numérique du groupe EDF,
intervention en tant qu’expert mobilité pour la conception et le développement d’applications mobiles destinées
au parc des CNPE de France pour l’accompagnement quotidien de l’ensemble du personnel sur site, au sein d’une
équipe de 10 personnes, dans un contexte agile (SCRUM)