DataOps Engineer
Societe Generale
mai 2025 - aujourd'hui
Configurer les agents de la suite ELK pour la bonne ingestion des metricsets.
o Définir et déployer des règles pour superviser les métriques.
o Définir les seuils sur les règles pour déclencher les alertes.
o Créer/configurer des connecteurs (webhooks) pour les associer au Alertes.
o Créer des panneaux sur plusieurs dashboards (selon le context) pour la visualisation et la
réutilisation sur d𠆚utres dashboards.
o Intégrer Elastic Agent
o Exporter tous les Objets Sauvegardés (Règles, Connecteurs, Dashboards) sous format
‘ndjson’ et les mettre sous contrôle de source sous Github (upstream).
o Ecrire un scripte Shell pour formater les anciens fichier ‘json’ en ‘ndjson’ (preparation des
objets) pour les injecter dans kibana (downstream).
o Ecrire un script qui parcoure le GitRepo pour consommer les fichiers ‘ndjson’ et les déployer
dans la target env.
o Etudier la volumétrie et la performance des différents cluster pour la
recommendation/optimisation.
o Recommander des stress test sur les applications qui s’interfèrent avec les clusters ELK.
o Recommander des stress test sur les queues Kafka et RabbitMQ (les backbones des
système).
o Appliquer des redimensionnements sur des clusters (déploiement des nouveaux noeuds,
augmentation de la bande passante, facteur de duplication).
o Veiller sur l’état de santé des cluster ELK.
o Assurer la veille technologique .
Environnement : Elasticsearch, Kibana, MetricBeat, APM, OpenTelemetry, HeartBeat, Elastic Agent,
Shell, Ansible, XLDeploy, Kafka, RabbitMQ, Azure
Chef de projet / Data Engineer
IER
avril 2021 - aujourd'hui
Contexte : Développement d&rsquoun système de monitoring des équipements EMS (Easier Monitoring
System)
o Concevoir et dimensionner la solution (data flow, facteur de duplication, facteur de
tolérance au fautes. . ).
o Concevoir les data modèles (coté équipement et base des données).
o Déployer / Configurer Docker sur l&rsquoenvironnement Prod (chez le client).
o Tirer les images Docker des repo officiel et privé.
o Déployer les images Docker et mettre en place un cluster EMS ( Nginx, Elasticsearch, Kibana
Opensearch, Opensearch dashboard&hellip).
o Configurer les différents contraires pour assurer la bonne réception des données (assurer la
connectivité entre le différentes entité).
o Générer et implémenter des certificats SSL pour sécuriser le flux inter et intra cluster.
o Développer et déployer des pipelines d&rsquoingestion de donnée pour appliquer un ETL avant
l&rsquoindexation de la data.
o Construire les tableaux de bord qui traduisent les données indexées en informations.
o Mise en place des protocoles de détection d&rsquoerreurs.
o Mise en place d&rsquoun système de gestion d&rsquoalerte (envoie des notifications par mail, sms,
Slack, Teams. . ).
o Assurer un support N3 à nos clients.
Environnement : Elasticsearch, Kibana, Opensearch, Opensearch Dashboard, Nginx, Lucene, Linux,
Windows
Data Engineer
ASI
octobre 2020 - mars 2021
Contexte : Migration des données d&rsquoun ancien cluster Hadoop 2.6 vers un cluster Hadoop 3.1.
o Développer un script bash qui génère des scripts DDL contenant les schémas des tables Hive
pour la création sur le nouveau cluster Hadoop.
o Parcourir le répertoire des scripts &lsquo.hql&rsquo , les exécuter en boucle pour la création des table à
la destination en bash.
o Développer un script bash de migration des données autour d&rsquoun job Hadoop DistCp.
o Développer un module de fiabilité des données qui couvre plusieurs points de comparaison
entre les données à la source et à la destination (nombre de ligne par table, nombre de
partition par table&hellip) avec Apache Spark (scala).
o Alimenter les comparatifs à Apache Zeppelin pour la mise en évidence des points de
différence.
Environnement : Hadoop, Apache Spark, Bash, SQL, HQL, Scala, Apache Zeppelin
Data Engineer
Intuition Factory
mars 2020 - mai 2020
Contexte : Projet interne assurant la suivie des consultants ainsi que leurs timesheets, états
d&rsquoavancements, remarques et notes.
o Interroger la base SQL via des procédures stockées pour extraire les informations relatives
aux consultants (Id, journées validées, TJM&hellip)
o Gérer le système de messagerie (Kafka) pour la livraison des données sur Azure.
o Agrégation des données pour l'analyse et l'alimentation des modèle ML avec Apache Spark
Environnement : Azure, Apache Kafka, Apache Spark, C#, .net, SQL
Data Engineer
Amaris
novembre 2018 - février 2020
Contexte : Développement de deux moteurs de recherche pour un index Elastic.
o L&rsquoInterception de la préférence recherché (nom, profil, école de préférence, années
d&rsquoexpériences. . .) et le moteur sélectionné pour l&rsquoexécution.
o La création d&rsquoune requête ElasticSearch avec NEST selon le moteur sélectionné.
Moteur 1 réalise une recherche sémantique (mot à mot).
Moteur 2 réalise une recherche syntaxique avec MLT.
o L&rsquoexécution de la requête sur le cluster Elastic.
o Le monitoring des résultats trouvés et les indicateurs de performance du cluster sur KIBANA.
o L&rsquoenvoie des top résultats (les documents XML) à la partie Front avec IIS.
o L&rsquoanalyse et le nettoyage des XML avec C# et .net pour l&rsquoaffichage dans des balise CsHtml.
Contexte : Développement d&rsquoun pipeline pour migrer les données des bases SQL vers un cluster
ElasticSearch.
o La définition des modèles des données à migrer (un modèle qui décrit un objet candidat).
o La rédaction des procédures stockées qui vont remmener les données en question.
o L&rsquoalimentation des modèles par les données adéquates.
o La création des requêtes Elastic qui vont injecter les modèles/Objets dans L&rsquoindex Elastic.
Le développement des Windows services (.net Core) qui vont exécuter les SP et les requêtes
ELS en permanence.
Contexte : Mise en place d&rsquoun pipeline pour enrichir une base SQL et un index Elastic des candidats
avec des informations de géolocalisation.
o La réalisation d&rsquoun benchmark entre plusieurs APIs de géolocalisation (cout, performance,
vitesse&hellip).
o La définition du modèle des données qui répond au besoin (structure géoloc sous l&rsquoobjet
candidat).
o La rédaction de la procédure stockée SQL qui retourne les adresses des candidats.
o L&rsquoenvoi des adresses à l&rsquoAPI afin de les convertir en objets de géolocalisation détaillés
(JSON).
o Le mapping des objets retournés avec le modèle de donnée défini avec dapper.
o L&rsquoenrichissement des bases existantes (SQL et Elastic) via la SP et la requête ELS.
o Le monitoring des résultats trouvés et les indicateurs de performance du cluster sur KIBANA.
o Le développement d&rsquoun Windows service (.net Core) qui va exécuter la SP et les requêtes
ELS en permanence.
Contexte : Mise en place d&rsquoun pipeline pour enrichir une base SQL et un index Elastic des candidats
avec une représentation vectorielle décrivant le contenu.
o Le développement d&rsquoune API qui converti un objet candidat en un vecteur (table des réelles)
en C# et .net Standard.
o Le déploiement de l&rsquoAPI sur Azure.
o L&rsquoextraction des candidats à partir de la base SQL.
o La création des objets candidats (JSON) avec Entity FrameWork.
o L&rsquoenvoi des objets JSON à l&rsquoAPI pour la conversion en vecteurs.
o L&rsquoinsertion des vecteurs dans les objets candidats de base SQL.
o La mise à jour de l&rsquoindex Elastic pour qu&rsquoil soit conforme avec SQL.
o Le monitoring des résultats trouvés et les indicateurs de performance du cluster sur KIBANA.
Environnement : ElasticSearch, KIBANA, C#, .net Core, .net Standard, Entity FrameWork, SQL,
CsHtml, Windows service, JSON.
Contexte : Développement d&rsquoun moteur de recherche pour un index Elastic.
o L&rsquoInterception d&rsquoun vecteur recherché (vecteur représentant un candidat).
o La création d&rsquoune requête ElasticSearch avec NEST qui prend en paramètre le vecteur
(décrivant le candidat idéal à retourner) et qui rend les candidats ayant le vecteur les plus
proches.
o L&rsquoexécution de la requête sur le cluster Elastic.
o Le monitoring des résultats trouvés et les indicateurs de performance du cluster sur KIBANA.
o L&rsquoenvoie des top résultats (les documents XML) à la partie Front avec IIS.
o L&rsquoanalyse et le nettoyage des XML avec C# et .net pour l&rsquoaffichage dans des balise CsHtml.
Environnement : ElasticSearch, KIBANA, C#, .net, SQL, CsHtml, XML
Data Engineer | Business&Decision
février 2018 - juin 2018
Contexte : Développement et mise en place d&rsquoune plateforme d&rsquoanalyse des CDR d&rsquoun opérateur
téléphonique pour le marketing ciblé.
o Collection des CDR brutes via une API avec Scala.
o Sauvegarde temporaire des données sur un topic Kafka.
o Digestion des données avec Spark pour le cleaning.
o Pousser la data vers un autre topic Kafka.
o Mise en place d&rsquoune architecture LAMBDA (Spark pour la partie batch et Spark Streaming
pour le mode real time).
o Analyser les données avec des jobs Spark et segmenter les lignes par abonné et puis les
abonnés par somme de consommation total)
o Injecter les données agrégées dans un topic Kafka.
o Digestion des données et sauvegarde finale sur Cassandra et temporaire sur Hadoop HDFS
(les réserver pour le mode batch).
o Visualiser les abonnées par segment de consommation sur Zeppelin.
o Développement d&rsquoune application Maven pour l&rsquoautomatisation des jobs.
Environnement : Apache Kafka, Apache Spark, Apache Spark Streaming, Hadoop, HDFS, Apache
Zeppelin, Scala, Maven.