Mohamed Aziz - Développeur APACHE HADOOP
Ref : 181210H001-
92700 COLOMBES
-
Développeur (30 ans)
-
Freelance
Expérience professionnelle
LANSROD , Client : «EDF» – Projet Hypster , Développeur Big Data , de
09/2017 à 02/2019
Contexte
Migration d’une plateforme de monitoring de l’activité des téléconseillers sur une architecture
temps réel basée sur Kafka, Spark et Elasticsearch.
L’implémentation repose sur des jobs Spark Streaming pour l’ingestion des messages Kafka et
sur Kibana comme Web UI pour l’interface utilisateur.
Les données proviennent de l’opérateur télécom SFR sur plusieurs topics Kafka selon la maille
d’analyse (client, communication, session conseiller).
D’autres topics Kafka sont alimentés en interne chez EDF et concernent les plannings et les
objectifs des téléconseillers.
Finalement, une base à froid Oracle sert de référentiel utilisé pour enrichir et/ou valider les
éléments provenant de Kafka.
Réalisations
• Développement d’un module Core servant comme package commun pour tous les jobs
du projet, le module contient les mécaniques de configuration des jobs, l’accès au
référentiel Oracle (mis à disposition sur HDFS) ainsi que différents connecteurs.
• Développement de jobs Streaming pour la consommation des topics kafka et alimentation
des index Elastic, un projet est créé par job afin de séparer les processus de déploiement
et de lancement.
• Configuration et développement de Coordinateurs/Workflows Oozie pour chaque job.
• Développement d’un batch journalier qui copie les tables référentielles de la base Oracle
vers HDFS.
• Mise en place de plusieurs Scripts dans le module Core (création des index, mapping et
alias Elastic, Script de submit génériques pour le lancement des jobs Spark…).
• Création de plusieurs Scripted Fields pour les indicateurs Kibana.
• Assistance de l’équipe MCO dans le déploiement des jobs via Jenkins et Ansible.
Environnement
Kafka, HDFS, Spark, Scala, Elasticsearch, Kibana, gitlab, Jenkins, nexus, SonarQube, shell.
Client « TRT / Thales Research and Technologies » – Développeur BIG DATA : de 08/2017 à 10/2018 (15 mois)
Contexte
Développement d’une plateforme d’analyse et de monitoring en temps réel de l’activité d’un parc de véhicules dans l’optique d’améliorer le processus de maintenance prédictive.
L’application repose sur la consommation des données de géolocalisation GPS ainsi que des capteurs placés sur les véhicules pour la collecte de données sur l'état et le diagnostic de ces derniers.
L’implémentation est basée sur une architecture streaming via Kafka et Spark Streaming, le job alimente un indexe Elasticsearch qui sera visualisé avec Kibana.
Réalisations
• Développement de plusieurs Producers Kafka pour le transfert des flux GPS et capteurs vers des topics Kafka.
• Archivage des données en parallèle dans HDFS à l’aide d’un connecteur utilisant l’API Java HDFS et un Coordinateur/Workflow Oozie.
• Développement de jobs Spark Streaming alimentant des indexes Elasticsearch depuis Kafka (Geolocalisation, Diagnostic, TimeSeries).
• Développement d’un module de scoring pour la partie analyse de la maintenance prédictive, le module repose sur un référentiel HDFS et sera utilisé dans le job Spark de diagnostic.
• Création des Dashboards avec Kibana (Map, Visualiation des time series, etc).
Environnement
Scala, Java, Spark, Kafka, HDFS, Elasticsearch, Oozie, Git, Jenkins.
Lansrod , « AirPlane performance » , de 07/2016 à 07/2017 (12 mois)
Contexte
Réalisation d’une application permettant d’étudier la performance des compagnies aériennes commerciales.
Réalisation
• Acquisition des données : développement d’un module qui consomme une API REST open source qui alimente les données dans un topic Kafka.
• Dévelopement d’un job Spark Streaming qui consomme le topic kafka, applique des règles de gestion et de normalisation et stocke les données dans des tables Hive au format Parquet.
• Analyse des données Hive via Spark et indexation des résultat dans ElasticSearch.
Environnement
Kafka, HDFS, Spark, Scala, Hive, Jenkins, Gitlab, ElasticSearch.
Stage de fin d’études, Talan Tunisie : de 02/2016 à 06/2016 (04 mois)
Projet : Plateforme pour la gestion des risques liés aux OPCVM.
Contexte
Conception et développement d’une application web java EE qui consiste à gérer les risques financiers liés aux actifs composant le portefeuille des OPCVM «Organismes de Placements Collectifs en valeurs mobilières» par le calcul des ratios.
Réalisation
• Récupération des données de marchés à partir d’un fournisseur de données financières.
• Développement d’un module Spring Boot pour le calcul et la gestion des ratios.
• Développement des interfaces graphiques Angular.
Environnement
Spring Boot, Angular, Hibernate, IBM DB2.
FORMATIONS
Juin 2016 Obtention de diplôme d’ingénieur en informatique. Mention bien.
École nationale des sciences de l’informatique, Tunisie.
Juin 2013 Admission au concours Tunisien d’entrée aux écoles d’ingénieurs. Section Math-Physique. Institut Préparatoire aux Études d’Ingénieurs de Tunis.
Juin 2011 Baccalauréat scientifique section mathématiques. Mention très bien.
Lycée Pilote Kairouan, Tunisie.
Réalisations
• Développement de plusieurs Producers Kafka pour le transfert des flux GPS et capteurs vers des topics Kafka.
• Archivage des données en parallèle dans HDFS à l’aide d’un connecteur utilisant l’API Java HDFS et un Coordinateur/Workflow Oozie.
• Développement de jobs Spark Streaming alimentant des indexes Elasticsearch depuis Kafka (Geolocalisation, Diagnostic, TimeSeries).
• Développement d’un module de scoring pour la partie analyse de la maintenance prédictive, le module repose sur un référentiel HDFS et sera utilisé dans le job Spark de diagnostic.
• Création des Dashboards avec Kibana (Map, Visualiation des time series, etc).
Environnement
Scala, Java, Spark, Kafka, HDFS, Elasticsearch, Oozie, Git, Jenkins.