Projets et Expériences Professionnelles
Cloud DevOps Engineer Jun 2022 – present
HSBC
Paris, France
Technologies: C++ • Python • Java • Google Cloud Platform • Terraform
• Migration Linux de l’infrastructure distribuée PricingLib dans Google Cloud Platform
• Installation et configuration de Tibco Distributed Computing avec Terraform (création des images
Linux Rhedat)
• Configuration et migration du Phoenix Server pour charger la nouvelle PricingLib Linux
• Conception et développement de pipelines de déploiement Jenkins pour la création automatique de
la nouvelle infrastructure GCP (vms, mig, dns, etc)
• Migration de différents outils de C++ Windows vers C++ GCC Linux (RCS, LocalGrid)
• Ecriture de différents tests en bash et python pour tester les fonctionnalités des applications installées
et la disponibilité des différents environnements
Big Data Engineer Oct 2020 – May 2022 • 1 yr 7 mos
SGCIB
Paris, France
Technologies: C++ • Java • Spring Boot • Oracle • Kubernetes
• Conception et développement d'une application temps réel Spring Batch qui consomme des données
via des requêtes REST, génère des fichiers Risk et les envoie par FTR au module d’intégration.
• Développement de nouvelles mesures VAR dans le cube OLAP active Pivot du système MPT (Quantity
Move, Aggregation by Level, etc)
• Ajout de nouveaux endpoints (Rest API) pour requêter les données du cube
• Développement de nouveaux jobs Spark pour pousser des données dans le Cube.
• Maintenance d’applications legacy et ajout de nouvelles fonctionnalités (consolidation des données et
intégration des données dans une base de données binaire) développées en C++
• Configuration et déploiement de différentes applications sur le cluster kubernetes.
02/2017 – Présent Ingénieur Logiciel Java Euronext, Paris
➢ Conception et développement d'une application temps réel Kafka Streams d’enrichissement de
flux financiers.
• Génération d’une librairie qui encapsule les messages SBE et fournit les méthodes
d’enrichissement de base.
• Gestion du carnet des ordres
• Implémentation des règles métiers d’enrichissement des messages
• Gestion des mécanismes de failover
• Développement de différents outils pour le replay et le debugging des messages.
• Développement d’une librairie de tests d’intégration
➢ Conception et développement d'une application temps réel Kafka Streams de filtrage et de
routage des données vers différents topics Kafka.
• Utilisation de JAXB pour la mise en œuvre de la configuration du filtrage
• Gestion des mécanismes de failover
➢ Conception et développement d'une application temps réel Kafka Connect qui lit des messages
sous format SBE, les transforme en Avro et les pousse vers le cloud AWS S3 sous format
parquet.
• Génération des schémas Avro avec Jinja2
• Mise en œuvre du composant Référentiel utilisé pour la normalisation des données
• Développement des différentes classes qui permet de transformer les messages en format
SBE vers le format Parquet
• Gestion des mécanismes de failover
Environnement technique : Apache Kafka Streams, Kafka Connect, Java/XML, Python,
Linux, MySQL, Git, AWS, Spring Boot
02/2013 – 01/2017 Ingénieur Logiciel C/C++ NovaSparks, Paris
➢ Conception et implémentation d'un moteur de comparaison de flux financiers provenant d'un
feedhandler logiciel et de flux financiers provenant d'un firmware(FPGA).
➢ Conception et développement d'une stack TCP/IP qui permet d'authentifier les clients,
envoyer des données à une application brodcasting firmware(FPGA) et d'assurer la
retransmission des données.
Environnement technique: C/C++, Linux, Svn
01/2012 – 01/2013 Ingénieur Logiciel JAVA/JEE – C/C++ Société Générale, Paris
➢ Implémentation des nouvelles fonctionnalités des différents modules de SITI (Système
d'Information des Titres Institutionnels):
• Référentiel tiers SIR en Java/JEE (gestion des données du client : comptes espèces, comptes
titres, OPCVM, OPC, etc)
• Référentiel SIA en Java/JEE(gestion des habilitations clients)
• PFC noyau générique en C++(plate-forme de communication client : échange de messages
sous format SWIFT, SGSS,Fax, Email, etc)
➢ Maintenance des différents batchs de pooling
➢ Support production (écriture de scripts en PL/SQL pour la modification des données clients)
Environnement technique: JAVA/JEE, Swing, Glue, Maven, Oracle 10/11g, PL/SQL, Weblogic,
C/C++,ProC, MFC
5/2011 – 12/2011 Ingénieur Logiciel JAVA/JEE - Python Romney & CO, Paris
➢ Conception et développement d'une plate e-commerce (ShopinValley) en python avec le
framework Django et l'api google app engine.
➢ Intégration de l'api paypal pour le paiement des commandes
➢ Conception et réalisation d'une application de réservation en ligne(système de billetterie)
Environnement technique : JAVA/JEE, Python, Django, MySQL, Glassfish
Février 2009 à Présent - Ingénieur d'études C/C++ - QuantHouse
Projet 3:
Position: C++/Feed Handler Developer
• Mise en œuvre de Burgundy Feed Handler qui permet de décoder les flux financiers des marchés nordiques (Danemark, Suède, Finlande). Le Feed Handler Burgundy est une application qui décode des messages reçus en TCP/IP
• Génération de l’API en python qui permet d’encoder et de décoder les messages.
• Mise en œuvre d’une classe qui permet de gérer la connectivité aux serveurs Burgundy Data Feed (serveur primaire et secondaire)
• Développement des différentes classes qui permettent de décoder les messages Burgundy(sous forme tagwire)
• Gestion des différents types de MarketData (Level1, Level2, Order Book)
• Rédaction de la Documentation du projet
Projet 2:
Position: C++/Feed Handler Developer
• Mise en œuvre de Bovespa Feed Handler qui permet de décoder les flux financiers de la bourse brésilienne (Bovespa). Le Feed Handler Bovespa est une application qui décode des messages reçus en TCP/IP. Les messages sont encodés en MMTP
• Mise en œuvre d’une classe qui permet de gérer la connectivité au serveur Bovespa Data Feed
• Développement des différentes classes qui permettent de décoder les messages Bovespa (sous forme MMTP)
• Gestion des différents types de MarketData Bovespa(Level1, Level2, Order Book)
• Mise en œuvre de BMF Feed Handler qui permet de décoder les flux financiers de la bourse brésilienne (BMF). Le Feed Handler BMF est une application qui décode des messages reçus en TCP/IP. Les messages sont encodés en FIX
• Mise en œuvre d’une classe qui permet de gérer la connectivité au serveur BMF Data Feed
• Développement des différentes classes qui permettent de décoder les messages BMF (sous forme FIX)
• Gestion des différents types de MarketData BMF (Level1, Level2, Order Book)
Projet 1:
Role: C++/Feed Handler Developer
• Mise en œuvre de BME Feed Handler qui permet de décoder les flux financiers de la bourse espagnole (Spanish Stock Market). Le Feed Handler BME est une application qui décode des messages reçus en TCP/IP
• Mise en œuvre d’une classe qui permet de gérer la connectivité aux serveurs BME Data Feed (serveur primaire et secondaire)
• Développement des différentes classes qui permettent de décoder les messages BME (sous forme binaire)
• Gestion des différents types de MarketData (Level1, Level2, Order Book)
• Rédaction de la Documentation du projet
Octobre 2007 à Février 2009 - Ingénieur d'études - Cadextan
Octobre 2008 à Février 2009 : C/C++ Development, Cadextan
• Formation C/C++ (STL, Design Patterns, RTTI, Templates)
• Formation Ubix (GL Trade)
• GL Trade – Core certification
Février à septembre 2008 : HSBC FRANCE(Consultant – Développement RMDS / C++)
Projet RfaServer
• Mise en œuvre du service RfaServer, qui permet d’une part d’écouter des données provenant de Tibco Rendez-Vous (TibRV) et de les publier dans le bus RMDS de Reuters et d’autre part de s’abonner à des flux Reuters et de les publier sur le bus TibRV.
• Modélisation en UML des différents cas d’usage du service
• Développement des différents modules en C/C++, à partir de diagrammes UML et de l’API RFA.
• Gestion du MarketDataSubscriber, qui permet de s’abonner à des flux Reuters (RIC) et de les publier sur le bus TibRV.
• Gestion du MarketManagedPublisher, qui permet de s’abonner à des flux TibRV et de publier les données sous forme de MarketFeed sur le bus RMDS de Reuters.
• Gestion du MarketPriceSubscriber, qui permet de s’abonner à des flux Reuters (OMM) et de les publier sur le bus TibRV.
• Gestion d’une pool de Threads (Multhreading), qui permet de démarrer l’ensemble des modules à partir d’un fichier de configuration.
Environnement technique :C, C++, RFA, RMDS,DACS, OMM, MarketFeed, XML, Tortoise SVN, Oracle, Windows XP, Visual Studio 2005.
Octobre 2007 à janvier 2008 : HSBC FRANCE(Consultant – Développement Java/Spring)
Projet Fierce
• Mise en œuvre de PricePublisher, qui permet d’écouter des prix provenant de Tibco Rendez-Vous (TibRV) et de les publier dans le moteur SmartTrade (ST Server).
• Développement des différents modules en JAVA SPRING, à partir de spécifications fonctionnelles et de l’API SmartTrade.
• Gestion d’une Pool de connections à la base de données (Oracle)
• Gestion du Directory Provider de SmartTrade.
• Gestion du chargement des requetes à partir d’un fichier XML.
• Gestion du AliveThread, qui permet d’envoyer des messages à intervalle régulier pour tester si les services TibRV sont toujours disponibles.
Environnement technique : JAVA, SPRING, XML, Tortoise SVN, Oracle, Windows XP, Eclipse.
Novembre 2006 à Septembre 2007 - Ingénieur d'études Tetco Technologies
Avril à Septembre 2007 : BOUYGUES TELECOM(Consultant – Développement C# / VoiceXML / PHP)
• Mise en œuvre de DIGICEL : Plate-forme multiservices VXML redondante, hébergeant un Serveur Vocal Interactif de pré-filtrage de trois centres d’appels externes assurant l’accueil clientèle pour 1...