Activités :
✓ Refonte de l’outil de gestion des demandes de stockage de gaz en provenance clients de
Storengy. Outil central dans le SI de Storengy.
o Conception/modélisation du « cœur » de la solution : l’allocation des ressources de
stockage entre les clients en tenant compte de leur droits
▪ Etude de la littérature sur les problèmes d’allocation équitable de ressources
▪ Réalisation d’un POC avec la programmation par contraintes
▪ Solution finale implémentée avec le solveur CBC (optimisation linéaire) via
GAMS
o Développement de la solution avec Spring boot pour le backend et Angular pour le
front
▪ Implémentation d’une solution de lock distribué avec élection de leader pour
assurer la consistance de certaines opérations (exécution unique).
▪ Redondance de la solution avec une stratégie de ségrégation de nœuds
applicatifs par fonction (nœuds API/nœuds back office)
▪ Optimisation de performance : fuites mémoires, requêtes base de données…
✓ Mise en place d’une chaine d’intégration et de déploiement continue sur les environnements
openshift (sur Azure)
o Définition d’une stratégie de gestion de branche
o Création des éléments des différents pipelines (build et déploiement)
▪ Image docker des runners
▪ Templates (deployment config, route, service, secrets…) et scripts de
configuration pour openshift
Activités :
✓ Développement d’une application de création d’offres promotionnelles multicritères sur les
produits gérés par un distributeur (Casino dans un premier temps). Les offres sont ensuite
transmises à un SI tierce qui les rend disponibles aux clients (via une application mobile dans
le cas de Casino).
o Conception et développement du back end en Kotlin avec Spring Boot (SCRUM)
o Mise en place d’un workflow d’intégration de fichiers avec Spring intégration (Java
DSL) et Google Cloud Storage
o Pipeline d’intégration et déploiement continue avec Bitbucket CI
o Déploiement automatisé sur Google Cloud Computing (Kubernates)
o Tests unitaires et d’intégration avec Mockito, Spring Boot test et Testcontainers
(pour créer un conteneur Postgresql lors des tests d’intégrations)
Activités :
✓ Développement complet d’un outil de suivi de la production et d’un outil de saisie d’audit à
destination des responsables d’unités de production des usines du groupe Renault (en
France et à l’étranger)
o Conception et développement du back end (Spring Boot) en agilité (méthodologie
SCRUM et Kanban)
o Gestion de la base de données avec Liquibase
o Mise en place d’un workflow d’intégration de données externes (accessible en http)
avec Spring intégration (Java DSL)
o Pipeline d’intégration et déploiement continue avec Gitlab CI
▪ Git flow (légèrement adapté)
▪ Utilisation de runner (conteneurs) adaptés à chaque phase de build
o Déploiement automatisé sur infra Docker (AWS + Docker Swarm)
o Déploiement en local (via docker compose) de toute la stack (webapp angular, microservices spring boot, base de données PostgreSQL)
o Tests unitaires et d’intégration avec Mockito, Spring Boot test et Testcontainers
✓ Mise à disposition de l’équipe d’un environnement de build automatisé et de test
d’intégration (utilisé pour les démos)
o Automatisation du build du front et du back (jenkins)
o Création d’une infrastructure complète (serveur d’application et base de données)
virtualisée avec PROXMOX
o Déploiement automatisé sur l’infra virtualisée (jenkins)
o Mise en place d’un analyseur de logs avec la stack ELK (Elasticsearch, Logstash et
Kibana)
o Evaluation de la qualité de code avec SONAR
Activités :
✓ Migration d’une infrastructure EAI WebSphere Process Server de 6.1 vers 8.5
o Migration et adaptation des applications du socle pour la version 8.5
o Développement spécifique pour assurer la compatibilité avec la 8.5
o Résolution des anomalies liées à la migration
✓ Développement d’applications de la plateforme d’échange
o Exemples de projets développés :
▪ Interconnexion d’un back end mobile avec des services métiers exposés via
une solution d’API management
▪ Transferts de flux fichiers entre systèmes hétérogènes (exemple : SAP vers
Base de données)
✓ Exploitation des applications
o Optimisation du processus d’intégration et de déploiements des applications
▪ Fiabilisation des processus
o Prise en charge des livraisons des environnements d’intégration à la production
Activités :
✓ Automatisation du processus de déploiement des applications (continuous delivery)
o Analyse des processus (existants) de déploiement et livraison des applications
o Formalisation des principes directeurs autour du concept de « pipeline de
déploiement »
o Développement d’un outil avec :
▪ GLU (automatisation des déploiements)
▪ Le plugin GLU pour Gradle (Pilotage des déploiements via des taches Gradle)
▪ Zookeeper (Centralisation des dépendances et scripts de déploiement)
▪ Jenkins (Pilotage du déploiement)
o Gestion de la montée en compétence des exploitants (intégration, recette et prod)
▪ Partage de concepts devops
o Applications gérées :
▪ Micro service SpringBoot
▪ Web Service WPS 6.2
▪ Applications WAS 6.1
✓ Développement en Groovy d’une solution de suivi des flux (fichiers) entrants dans le SI
o Formalisation du besoin et analyse des flux fichiers
o Création de scripts groovy (parsing XML, sql…)
Activités :
✓ Développement d’applications
o Création de services de suivi de consommation en énergie électrique et gaz
▪ Architecture micro services
▪ Web service RESTFul
▪ Implémentation des algorithmes de calcul d’énergie
o Création de batch Spark pour le calcul en masse sur des index électriques et gaz
▪ Mise en place de la plateforme de développement (DSE 4.5, topologie, ressources…)
▪ Conception : définition des transformations et actions spark
▪ Développement en scala
▪ Packaging de la solution avec maven
▪ Déploiement et exécution sur DSE 4.5
✓ Mise en place et gestion d’une plateforme d’intégration continue (PIC)
o Spécification et application des principes de l’intégration continue :
▪ Définition des normes (organisation des modules maven, versionning…)
▪ Elaboration d’une stratégie de gestion de branche
▪ Définition des processus : rôle, responsabilité
o Installation et paramétrage de la PIC
▪ Création des scripts (shell et groovy) des jobs d’analyse récurrente et de livraison
▪ Structuration et création des Jobs jenkins
▪ Installation et configuration des plugins sonar et jenkins. Exemple :
• Notification par mail avancée
• Echec de build en fonction des métriques sonar
▪ Création des jobs prototypes
▪ Création des utilisateurs et configuration des rôles
o Documentation de la plateforme :
▪ Guide développeur (normes, bonnes pratiques, commandes GIT…)
▪ Guide d’exploitation de la PIC (création de jobs, livraison à partir de la PIC…)
o Supervision de la plateforme
▪ Monitoring des ressources (charge CPU, mémoire JVM, worker jenkins…)
▪ Gestion des incidents
▪ Amélioration continue de la PIC
✓ Accompagnement des équipes de développement : Bonnes pratiques de développement, GIT, maven,
PIC, spark