-
DEV-IT
- Full-stack web developper
2016 - maintenant
-
BNP Paribas
- Lead programmer
Paris
2015 - 2016
Projet Calypso
-
aucune
- Career Break
2014 - 2015
Pause professionnelle : voyage de Paris à Bangkok en vélo couché.
http://www.trikeiteasy.com
-
Société Générale
- Lead programmer
PARIS
2012 - 2014
Mise en place de l’architecture de la nouvelle plateforme des paiements
Migration de batchs C (ancienne plateforme) vers Java (nouvelle plateforme)
Migration Oracle
Encadrement de l’équipe dev (9 personnes : 6 à Paris et 3 à Bangalore)
Mise en place d’un Framework de Tests (Unitaire + non Régression)
Mise en place d’un environnement d’intégration continue et de déploiement continu
Support niveau 1 et 2
Etant donné la nature du projet (paiements), la migration de l’ancienne plateforme s’est déroulée dans un contexte de criticité très élevée.
Environnements techniques : Java, Spring, Hibernate, Spring Batch, JUnit, Maven, KSH, Oracle 10g, Confluence, Subversion
-
Inspearit
- Coach XP
Montreuil
2011 - 2012
- Innovation games
- Story Mapping
- Scrum rituals
- Intégration Continue
- Développement Continu
- TDD
-
BNP Arbitrage -- Paris -- France
- Expert Java -- Architecte logiciel
2010 - 2011
Projet : Prime Brokerage.
- Mission 100% anglais : off-shore avec une équipe US basée a NY
- Création et mise en place d'un outil basé sur Mule (ESB) afin de faciliter les connections entre les applis US et FR.
- Création et mise en place dashboard (GWT, GXT, Spring, Hibernate)
- Mise en place d'une connection entre l'outil de trade capture US vers un système de booking FR (Calypso)
- Coordination des tests entre les équipes US et FR
La méthodologie Scrum est mise en place au sein des différents projets.
Environnements Techniques : Java 5, GigaSpace, Spring, Hibernate, GWT, GXT, Mule, KSH, JUnit, Maven 2, Hudson, Jira, Confluence
-
BNP Arbitrage -- Paris -- France
- Développeur Java / Calypso, configuration manager, responsable IT, responsable des performances
2007 - 2010
Projet Calypso
Développeur :
- Définition des nouvelles spécifications
- Développement d’interfaces graphiques
- Développement Calypso : engines, scheduled task, workflow
Responsable performances :
- Mise en place d’une nouvelle architecture pour l'intégration des deals
- Travail avec l'éditeur pour identifier et améliorer le système de lock
- Identification des bottlenecks de l'application
- Mise en place d'un framework multi-threaded pour les scheduled tasks
- Identification et suppression des produits cartésiens
- Utilisation d’introscope : outil de monitoring
- Optimisation des requêtes SQL en production
- Etude et modification des paramètres des JVM
- Optimisation des scripts SQL pour le passage de la V10 (parallélisme, optimisation base de données, …)
Responsable IT :
- Encadrement de 4 développeurs
- Définition du périmètre des release
- Répartition des points de support et dev
- Mise en place des tests unitaires (JUnit, EasyMock & PowerMock)
- Chiffrage des développements, plannings
- Entretiens
Configuration manager :
- Industrialisation du processus de livraison
- Mise en place de livraisons automatique (toutes les nuits) sur les environnements de tests
- Mise en place d'un environnement de tests unitaires: JUnit, EasyMock et PowerMock
- Formations des autres membres de l'équipe sur les tests unitaires
- Installation et administration d’un serveur d’intégration : Hudson
- Installation des outils findbugs, pmd, cobertura, sonar
- Administration des environnements de tests
Calypso est désormais capable d'intégrer 1.6 millions de trades par jour (en production). Avant l'étude, Calypso ne pouvait pas intégrer plus de 300 000 trades par jour.
Environnements techniques : Calypso v8 et v10, Java 5, JUnit, EasyMock, Spring, KSH, Maven 2, Oracle 10g, Jira, Confluence, Hudson
-
Calyon -- Paris -- France
- Ingénieur d'étude Java
2006 - 2007
Projet HORUS : Gestion des montages financiers.
Rédaction des spécifications
Conception, implémentation et mise en production des nouvelles fonctionnalités
Mise en place d’un outil de rapprochement des données provenant de systèmes externes
Support de production
Migration de l’application vers Java 5
Refonte de l’application afin de la rendre plus générique
Optimisation des performances globales de l’application
Mise en place de tests unitaires
Mise en place d’un outil de bug tracking
Administration des serveurs de dev
Environnements techniques : Java 5, RMI, JUnit, EasyMock, POI, Swing, KSH, RegExp, Xml, Mantis, Sybase, MySQL
-
Thales ATM -- Melbourne -- Australie
- Ingenieur Developpement Java
2005 - 2006
Projet JHMI : Développement de la nouvelle génération IHM pour le contrôle aérien.
Design et développement du coeur du système (Implémentation des nouvelles fonctionnalités, refactoring du pattern MVC, Optimisation des performances)
Design et développement de plug-ins basés sur Eclipse RCP.
Développement du framework OpenGL.
Rédaction de tests unitaires.
Interfaçage de librairies C avec java.
Installation et administration des environnements d’intégration : installation OS, installation et optimisation drivers graphique pour améliorer les performances
Cette compagnie adhère au standard de qualité ISO 9001 et leurs processus sont certifiés CMMI niveau 4.
Un processus de développement Agile était utilisé, ce qui comprenait plusieurs pratiques XP (eXtreme Programming) comme par exemple : TDD (Test Driven Development), pair programming, intégration continue, scrums, etc.
Environnements techniques: Windows, Linux, Java 5, JUnit + EasyMock, Swing, OpenGL, JNI, Xml
Développement Agile : Test Driven Development (TDD), Pair Programming, Team Integration
-
San Diego State University -- San Diego -- Californie
- Stage R&D programmation embarquee
2004 - 2004
Ce stage dans le secteur R&D consistait en une étude d’un système embarqué : la carte Nios, d’Altera. En collaboration avec un professeur de l’université, nous avons étudié le fonctionnement interne de la carte : gestion de la mémoire, des registres, des variables, le fonctionnement du compilateur. J’ai aussi développé des drivers pour un clavier et un écran LCD. Ce travail m’a demandé une connaissance approfondie du langage C et µC, ainsi que l’utilisation de logiciels comme Quartus et SOPC Builder afin de faire le design du processeur. Ce projet m’a permis d’intégrer une équipe d’étudiants américains afin de participer à une compétition inter universitaire, dont le but était de créer un véhicule sous marin autonome. Sur ce projet, ma tache était d’établir une connexion Wifi entre la carte Nios (le sous marin) et un PC distant afin de paramétrer et récupérer les données du sous marin. Ce travail m’a demandé des connaissances en C, C++, µC, OpenGL ainsi que les logiciels de design : Quartus et SOPC Builder.