Mohamed Moez - Back-End Technical leader & Full Stack Senior programmer

Ref : 100505M002
Email vérifié
Photo de Mohamed Moez, Back-End Technical leader & Full Stack Senior programmer
Compétences
EJB
Spring Boot
SPRING BATCH
POSTGRESQL
Expériences professionnelles
  • Tech-Lead / Développeur full stack

    Jan 2022 - Jan 2023

    Lieu : Paris, Ile de France

    Objectif de mission :
    Prestation de « leading » technique et développement dans le cadre de l’évolution technique et fonctionnelle de la plateforme d’Europ assistance.

    Contexte :
    • Le Groupe “Europ-assistance" est un opérateur international de services d’assistance aux personnes dans les domaines de la santé, du domicile et de la vie familiale, de l’automobile, des voyages et de la conciergerie. Il regroupe 44 filiales présentes dans 34 pays.
    Afin de mettre en œuvre des assistances, celle-ci propose aux opérateurs de ses filiales une plateforme unifié. Ainsi, elle a un meilleur contrôle, un suivit plus claire et plus simple, une performance accrue et une harmonie globale de ses prestations. Cette plateforme permet :
    o La saisie de réclamations : depuis une application web (React / Java) ou des APIs (Java) publiques sécurisé,
    o Le déclanchement et le suivit des missions d’assistance : depuis une application web ou des APIs publiques sécurisé,
    o La mise en relation avec les fournisseurs de services d’assistance (taxi, dépannage, garages, hôtels, train, avion, …)
    • La mise à disposition de données afin d’établir des KPIs via AWS Kinesis
    • La section développement est composé de trois équipes autonomes et similaires appelé “Software Factory”, chacune est composé de : 2 POs, 2 Tech-Leads Back, 1 Tech-lead Front, 2 QA, 6 développeurs back et 4 développeurs front.
    • Gestion du projet en mode « Agile » / « Scrum » avec les différents rituels associés : Daily-Meeting, Grooming, Sprint planning, Sprint review, …
    • Le projet est constitué de trois applications : deux « back » et une « front » :
    o L’application front est basée sur le Framework « React ».
    o Les applications « back » sont construites avec des technologies au tour de Java :
    o Un gros monolithe modulaire suivant une architecture Hexagonale. Celui-ci implémente le cœur du métier et expose des API pour le Front.
    o Une application servant à faire de l’« EAI » et ainsi gérer l’interaction avec les applications tierces.

    Tâches réalisées :
    Leading technique
    • Participation aux choix techniques et d’architecture lors de comités entre Tech-Leads/Solution Owner.
    • Conception de solutions techniques répondants aux nouveaux besoins techniques et fonctionnels,
    • Participation à des ateliers de “deep-dive" avec les « end-users » afin d’étudier la faisabilité des nouveaux besoins,
    • Participation à des ateliers avec les POs afin de donner une “macro-estimation” et de transformer les “user stories“ en spécifications fonctionnelles/techniques détaillés et compréhensible par les équipes de développement,
    • Animation de réunion de présentation avec les « end-users » : “Demos”,
    • Développement de modules pilotes et de PoC. Mais aussi, développements difficile, délicat et critique,
    • Retro-engineering et rédaction de document technique d’architecture à des fins de formation et/ou d’amélioration de l’existant,
    • Suivit des développements et coordination avec les autres équipes de développement,
    • Paquetage et mise à disposition de « releases » via Jenkins, Spinnaker, AWS,
    • Coordination entre les équipes dont les développements sont dépendants :
    o Analyse, mesure et prévention des impacts des développements inter-équipes,
    o Garantir la bonne constitution des contrats d’interface et leur respect,
    o Etablir une chaine de dépendance entre les développements et ainsi un ordre de développement.
    • Encadrement des DEVs :
    o Revue de code via BitBucket,
    o Transmettre les bonnes pratiques et les méthodologies de développement : TDD, SOLID, DRY, KISS, GitFlow, …
    o Formations, apprentissage, aide ponctuelle, conseil, …
    • Support au testing et à l’exploitation des « features » développées,
    • Team building.

    Développement
    Back-end
    • Développement d’APIs (publics et privées) permettant la gestion, le suivit et l’analyse des missions d’assistance. Utilisation de « Spring Core », « Spring Security », « Spring Web » & « Spring Data JPA ».
    • Développement d’API utilisant les technologie SSE, Amazon SNS et Amazon SQS afin de permettre un suivit en temps-réel de l’évolution des missions,
    • Développement de Batchs avec « Spring batch », notamment pour mettre à jour automatiquement les données de certaines missions en fonction de critères précis.
    • Upgrade de version des différents Framework utilisé afin d’eviter l’obsoléscence technologiques et réduire les vulnérabilités.
    • Upgrade de la version BD PostgreSQL 9.X à 14.X,
    • Augmentation de la couverture en TU et surtout en TI en supprimant des « mocks » inutiles et nuisible.
    • Refonte d’une partie du modèle de données ainsi que l’applicatif correspondant :
    o Missioning,
    o Mission Event,
    o Ecrite de script SQL performant dans un contexte d’une large migration de donnée (plus de 80M de lignes)

    Environment Technique : IntelliJ 2023, Webstorm 2023, Jira suite : Jira / Bitbucket, Oracle APIyari, Jenkins, Spinnaker, Java 11, Spring Core 5, Spring web 5, Spring Batch 4.x, Spring boot 2.x, Spring Data JPA 2.X, JUnit 5, Wiremock 2.x, AWS SNS/SQS, AWS S3.
  • Tech-Lead / Développeur full stack

    Jan 2020 - Jan 2022

    Lieu : Paris – Opéra, Ile de France

    Objectif de mission :
    Prestation de gestion de projet, « leading » technique et développements full stack dans le cadre de la migration de la plateforme de trading de la BNP CIB vers les nouvelles technologies / architectures IT.

    Contexte :
    • La « BNP CIB » propose à ses traders un progiciel, fait par ses soins. Celui-ci contenant plus de 320 écrans, il répond à tous ses besoins spécifiques. L’implémentation de celui-ci a nécessité l’utilisation de technologies et d’architecture devenant, au jour d’aujourd’hui, vieillissante et obsolète. La « BNP CIB » a entamé ainsi, un gros chantier de migration des écrans de ce progiciel vers les nouvelles technologies.
    • Equipe constituée de 14 développeurs « full stack » dont 3 séniors / tech-lead et 4 BA et 1 scrum master.
    • Gestion du projet en mode « Agile » / « Scrum » avec les différents rituels associés : Daily-Meeting, Grooming, Sprint planning, Sprint review, …
    • Le projet est constitué de trois applications : deux « back » et une « front ». L’application front est basée sur le Framework « Eclipse SWT ». Les applications « back » sont :
    o Un gros monolithe modulaire architecturé en trois couches : Données, Application, Présentation.
    o Une application servant à faire de l’« EAI » et ainsi gérer l’interaction avec les applications tierces. Architecturé en trois couches.

    Tâches réalisées :
    Gestion de projet
    • Mise en place d’une « roadmap » des écrans à migrer : fichier de suivit avec les dépendances entre écrans, la priorisation et des « ETA »,
    • Découpage de chaque écran à migrer en un ensemble de tâches autonomes (testables),
    • Mise en place d’un « process » de release cyclique de deux semaines,
    • Suivit des développements et coordination avec les testeurs,
    • Paquetage et mise à disposition de « releases » via Jenkins, Groovy et Artifactory
    • Réception des besoins des « end-users » et leur transformation en besoins fonctionnel/techniques détaillés compréhensible par les équipes de développement,
    • Animation de réunion de présentation avec les « end-users ».

    Leading technique full stack
    • Participation aux choix techniques et d’architecture.
    • Conception de solutions techniques répondants aux nouveaux besoins techniques et fonctionnels,
    • Coordination entre les équipes dont les développements sont dépendants :
    o Garantir la bonne constitution des contrats d’interface et leur respect,
    o Etablir une chaine de dépendance entre les développements et ainsi un ordre de développement.
    • Encadrement des DEVs :
    o Transmettre les bonnes pratiques et les méthodologies de développement : TDD, SOLID, DRY, KISS, GitFlow, …
    o Formations, apprentissage, aide ponctuelle, conseil, …
    • Revue de code via BitBucket,
    • Team building,
    • Développement de modules pilotes et de PoC. Mais aussi, développements difficile, délicat et critique,
    • Déploiement, support au testing et support à l’exploitation des « features » développées,
    • Support aux ITBAs, Scrum Masters, PO : charge, faisabilité, macro-conception, ...

    Développement sénior full stack
    Back-end
    • Transformation des « EJB » en une couche d’« APIs REST » présentant l’ensemble des fonctionnalités de trading en JAX-RS,
    • Ajout de nouvelles « APIs REST » avec « JAX-RS », « Spring » et « JPA / Hibernate »,
    • Intégration d’applications avec « Apache Camel »,
    • Ajout d’un « framework » afin de tester la couche REST (seulement) avec Jersey,
    • Amélioration significative de la robustesse, la disponibilité et la maintenabilité des « batch » se basant sur des files « JMS » en les découpant en « Receiver / Processor » indépendants au niveau « code » et au niveau « runtime »,
    • Extraction, dans un module indépendant, de la « feature » du « CSV Import » en vue de la contenir dans une application dédiée: Celle-ci permet d’effectuer une multitude d’opérations financières avec un simple fichier JSON. Ainsi, elle permet à d’autres applications d’envoyer des « trades » au moteur central de trading nommé « Power ».
    • Ajout et mise en œuvre d’un framework de testing de file « JMS » qui est le « activemq-junit »
    • Standardisation de la gestion des « Timezone » : Toute les API reçoivent et exposent de l’UTC.
    Font-end
    • Développement d’écran réactifs avec le pattern « Redux » en utilisant « NgRx »,
    • Développement d’écrans contenant des « data-grid » avec « AG-Grid »,
    • Upgrade de « Angular » et « NgRx » : de 8 à 9 puis de 9 à 10,
    • Introduction de graphiques avec « Swimlane/NGX-CHARTS » pour des « Dashboard reports » financier et techniques :
     Volume de trading par période,
     Monitoring de performance applicative.
    • Introduction d’une « timeline » représentant l’historique d’un « trade » avec ses événements en utilisant « vis.js/vis-timeline »,
    • Ajout dun éditeur de texte pour la gestion des « News » dans l’écran d’accueil avec « kolkov/angular-editor »
    • Ajout d’une navigation par « Mega-menu » en utilisant le code « open-source » de « PrimeFaces » pour « Angular ».

    Environment Technique: IntelliJ 2022, Webstorm 2022, Java 8, JAX-RS 2.1, JPA 2.2, Spring Core 4, Spring web 4, Spring boot 1.5, Hibernate 4, TestNG 6.8, JUnit 5, Jersery 2.22, Active-MQ 5, Camel 2.20, Weblogic 14c, Oracle DB 19c, Angular 10, NgRx 10, Swimlane/Ngx-Charts 20, Ag-Grid 25, Ngx-Formly 5, vis.js/vis-timeline 7, Jest 27
  • Tech-Lead / Développeur JEE

    Jan 2019 - Jan 2019

    Lieu : Boulogne-Billancourt, Ile de France

    Objectif de mission :
    Prestation de « leading » technique et de développement JEE dans le cadre du développement de la plateforme des services connectés automobiles de l’alliance Renault - Nissan -Mitsubishi.

    Contexte :
    • Afin de fournir des services connectés à ses clients, chacune des marques du groupe a développé sa propre plateforme de communication avec ses voitures et ses partenaires. Ainsi, une des finalités de l’Alliance est la convergence de celles-ci en une seule plateforme type « point d’entrée ».
    • Domaines fonctionnels de la prestation :
    o Utilisateur : gestion des comptes client, gestion du parc automobile de l’utilisateur, …
    o Systèmes tier : Dialogue avec les systèmes externes : police, assurances, fournisseur de services,…
    o Notifications : moteur de notifications de tout type : utilisateurs, partenaires, internes (inter-modules),...
    • Equipe composée de 12 personnes et structurée en « Flower Team »: 5 développeurs back, 1 tech-lead, 2 testeurs, 2 Pos , 1 architecte fonctionnelle et 1 scrum master.
    • Gestion du projet « Agile »/ « Scrum » avec les différents rituels associés : Daily-Meeting, Grooming, Sprint planning , Sprint review,…
    • L’architecture technique des applications suivant le pattern de « Micro-Services » avec REST et AMQP.

    Tâches Réalisées :
    Tech-Lead JEE
    • Participation au choix techniques et d’architecture. Conception de solutions techniques répondants aux nouveaux besoins techniques et fonctionnels tels que :
    o Le « Smart Charging » des véhicules électriques,
    o L’allumage de la voiture depuis son smartphone « Engine Start/Strop »,
    o Le « Stolen Vehicle Tracking »,
    o La synchronisation des données client et les lien client/véhicule entre les différents référentiels,
    • Coordination entre les équipes dont les développements sont dépendants,
    • Encadrement des DEVs :
    o Mener à bien la réalisation des applications en cours aux côtés des équipes développement Java
    o Transmettre les bonnes pratiques de code et les processus : TDD, SOLID, DRY, KISS, GitFlow, …
    o Formations, apprentissage, aide ponctuelle, conseil, …
    • Revue de code via GitHub,
    • Team building,
    • Développement de modules pilotes, PoC. Mais aussi, développements difficile, délicat et critique,
    • Déployement, support au testing et support à l’exploitation des « features » developpées,
    • Retro-Documentation de l’existant via PlantUML,
    • Support aux ITBAs, Scrum Masters, PO : charge, faisabilité, macro-conception, ...

    Développement JEE
    • Création de nouveaux « Micro-Services » from scratch avec leur pipeline d’intégration/déploiement continue GitHub / Jenkins / Nexus / Sonar / CheckMarx,
    • Implémentation des besoins fonctionnels : enrichissement/développement de Micros-Services REST / AMQP,
    • Migration de Spring Boot 1.5 vers Spring Boot 2.1,
    • Mise ne place d’une création dynamique de « Queue » sur plusieurs modules avec Spring AMQP ,
    • Découpage de la base de donnée commune en plusieurs bases spécialisés par domaine fonctionnel,
    • Homogenisation des flux de données,
    • Upgrade vers Junit 5 avec la mise en œuvre de ses « features » : tests paramétrés , conditionnement entre les tests, …
    • Sépration des tests unitaires des tests d’intégration et augmentation significative de leur couverture,
    • Refactoring des modules suivant un découpage fonctionnel plutôt que technique,
    • Amélioration de la qualité du code suite aux alertes Sonar,
    Résolution des failles de sécurité soulevé par Checkmarx.

    Environment Technique: Java 8, IntelliJ 2019 , Spring Core 5, Spring REST 2.0, Spring Retry 1.2, Spring Boot 2.1, Spring AMQP 2.1, Spring Rabbit 2.1, Spring Security 5.1, Rabbit MQ 3.7 , Spring Data 2.0 , Json, Hibernate 5, Junit 5, Mockito 2.2, QPID 6.0, Liquibase 3.5, Postgres 9.4 , Cucumber PlantML, Confluence , Slack.
  • Architecte / Tech-Lead / Développeur JEE
    Jan 2017 - Jan 2018

    Lieu : Montreuil, Ile de France.

    Objectif de mission :
    Prestation de lead technique, d’architecture et de développement JEE dans le cadre du développement digital « from scratch » de la banque Orange Bank pour le compte de Capgemini.

    Contexte :
    • Orange Bank est la 1ère banque en ligne française 100% mobile,
    • Equipe constituée de 150 personnes réparties entre le Maroc (60%) et la France (40%). Au Maroc, l’équipe est constituée essentiellement de développeurs et de Scrum masters. En France l’équipe est constituée de 7 Architectes, 10 TechLeads et le reste en tant que devs, testeurs, intégration et ITBAs.
    • L’équipe est sectionnée en « Flower Teams » avec une gestion « Agile » du projet.
    • Le projet suivant un découpage « Back / Front ».
    • Le back suivant une architecture en « Micro-Services ».
    • Projet initié « from scratch ».

    Tâches réalisées :
    Architecture / TechLead JEE
    • Participation au choix techniques et d’architecture. Conception de solutions techniques répondants aux nouveaux besoins fonctionnels et techniques.
    • Amélioration du Workflow de la gestion des demandes (besoins fonctionnels /techniques) sous Jira/Confluence,
    • Planification et animation de réunions techniques et fonctionnelles : Road-map, Formations, Ateliers, Brainstorming, …
    • Team building,
    • Coordination entre les équipes dont les développements sont dépendants,
    • Encadrement des DEVs :
    o Mener à bien la réalisation des applications en cours aux côtés des équipes développement Java
    o Transmettre les bonnes pratiques de code et les processus : TDD, SOLID, DRY, KISS, GitFlow, …
    o Formations, apprentissage, aide ponctuelle, conseil, …
    • Revue de code via BitBucket Cloud,
    • Amélioration du code via Refactoring/Re-écriture,
    • Développement de framework, projet pilote, PoC.
    • Développements difficile, délicat et critique,
    • Support aux ITBAs, Scrum Masters, PO et UX : charge, faisabilité, conception, ...
    • Qualité du code suivit par Sonar.

    Développement JEE
    • Implémentation des besoins fonctionnels : enrichissement/développement de Micros-Services.
    • Intégration d’une machine à état afin d’apporter de la robustesse et da la fiabilité aux processus critiques (virements, payements, enrôlements, gestion des moyens de payement...) : utilisation de Spring State Machine.
    • Mise en place du Feature Flipping avec FF4 autours des Micros-Services.
    • Mise en place d’un audit sur les opérations juridiquement importantes (virements, payements, enrôlements, ...) via de l’AOP.
    • Intégration des services de Genesys, gestionnaire de file d’attente, pour les demandes de chat.
    • Développement d’un Batch de migration « haute performances » des clients Groupama vers OrangeBank avec Spring Batch : contrainte de durée d’exécution : 30 mins, Volumétrie : 500 000 clients à migrer.
    • Maintien d’une couverture du code en tests Unitaires et d’Intégration.

    Environment Technique: Visual Paradigm 15, IntelliJ 2018, Java 8, JPA, WS REST & SOAP avec Spring & CXF 3.2.1, Tomcat 8, Oracle 12g, Hibernate Core 5, Hibernate Validation 5, Lombok 1.x, Mocktio 2.7, Junit 4.x, Log4j via SLF4J 1.7, Logback 1.1, Spring Core 4, Spring Batch 3, Spring State Machine 2, Spring Boot 2, Spring Security, OAuth 2 , Thymleaf 3, AspectJ 1.8, FF4J 1.6.4, Swagger 3.9.0, Git & Git Bash, BitButcket Cloud, Jira Cloud, Confluence Cloud.
  • Architecte / Développeur JEE Full Stack

    Jan 2016 - Jan 2017

    Lieu : Paris, Ile de France.

    Objectif de la mission :
    Prestation d’architecture et développement JEE dans le cadre du développement DIGITAL de S.G.B.D.F.
    Intervention sur plusieurs applications :
    • Site Web Générique : application web générique utilisé par 8+ enseignes.
    • API Mobile : API REST servant 8+ applications Mobiles.
    • Application de gestion et suivi des commandes émanants de toutes les enseignes.

    Contexte :
    • Equipe composée de 8 architectes / développeurs full stack JEE.
    • Projet mené en mode Agile / Scrum (sprint de 2 semaines) via l’outil JIRA/Confluence.
    • Le projet suivant un découpage « Back / Front ».
    • Projet suivant une architecture SOA.
    • Autonomie et liberté d’action dans les choix technologiques d’outillage d’un poste développeur.

    Tâches réalisées :
    Architecture JEE
    • Amélioration et enrichissement du socle technique à des fins de performance, stabilité et disponibilité :
    o Analyse et amélioration de la gestion du cache (navigateur & serveur).
    o Ajout de JSoup pour le parsing d'XML.
    o Mise en œuvre de Sping Retry afin de fiabiliser les appels WebServices.
    o Etudes de différentes solutions afin d’améliorer la génération des factures PDF à partir de modèles HTML & CSS et mise en œuvre de iText.
    • Amélioration de la maintenabilité par Refactoring du code.
    • Industrialisation : création de scripts Shell de déploiement et leur intégration dans l'IDE : IntelliJ BashSupport plugin, Linux Shell.
    • Rédaction de guides d'installation d'un poste développeur et de guides de déploiement sur les différents environnements : Confluence.
    • Amélioration de la virtualisation des environnements sous Docker.
    • Conception de l’architecture des évolutions techniques et fonctionnelles : UML, Confluence.

    Développement Full Stack
    Réalisation de nouveaux besoins fonctionnels, les plus notables sont :
    • Réalisation d’un « Product Locator » afin de retrouver un article dans l’agence la plus proche: Intégration de Google Map et de l’auto complétion d’adresse Google.
    • Réalisation des « Promo Web » et leur propagation dans le SI.
    • Réalisation de la remontée des jours de fermetures depuis le SI des agences (Fériés, Inventaires, Exceptionnels).
    • Réalisation des notions d’articles mis en avant (MEA), complémentaires et associés.

    Environment Technique : Java 7, Spring MVC & JSP , Thymeleaf 3, Spring Core 3, Spring DATA, Spring WS, OAuth 2, HTML 5, Javascript & JQuery, Firefox Dev Tool, Tomcat 7 , DB2 , IntelliJ , Git & Git Flow , Maven 3, Shell Unix, Ubuntu, Docker.
  • MOE Java / Angular JS

    SUPREM IT
    Jan 2015 - Jan 2016

    Conception et développement du site-web de Suprem-IT. Réalisations effectuées à ce jour :
    • Création et installation d'une machine virtuelle Ubuntu 14.04.3 sous l'outil de virtualisation Oracle Virtual Box,
    • Analyse puis choix de l'outil de gestion & standardisation des projets AngularJS : « Yeoman ».
    • Installation de NodeJS et de son gestionnaire de paquets NPM. Ce dernier a servi pour l’installation des outils suivants.
    • Installation de Bower (gestionnaire de dépendances) et Grunt (automatiseur de tâches : minification, compilation, ...).
    • Création de la structure du projet portant le site-web avec "Yeoman".

    Environnement Technique : Angular 1.4.x, Grunt, Bower, Yeoman, Ubuntu 14.0.3.
  • Architecte / Développeur JEE

    Jan 2015 - aujourd'hui

    Prestation d’études, de développement et d’intégration JEE dans le cadre de l’évolution du Système de Gestion de Contenu (C.M.S) de la Société Générale B.D.D.F.

    Lieu : Val de Fontenay, Ile de France.

    Objectif de la mission :
    • Intégration de Google Search Appliance (GSA) avec les différents sites de la SG (particulier, pro, entreprise, associations),
    • Réalisation de « webservices » destinés à améliorer la relation client (fonctionnalité du WebCall-Back),
    • Installation et mise en œuvre d’un outil de migration de contenus entre environnements avec « Vignette Motion ».

    Contexte et tâches réalisées :
    • Configuration et intégration de la GSA avec les différentes bases de contenus. Tâches réalisées :
    o Montée en compétence sur GSA.
    o Suivi & coordination de l’installation de GSA sur les différents environnements : la GSA vient avec son serveur dédié. Son installation a été faite par les équipes gérants les machines cibles du parc applicatif de la SG.
    o Référencement des différents sites de la SG pour le « Crawl » de la GSA (Indexation) : il s’agit d’introduire les URLs des différentes bases de contenus à indexer par la GSA.
    o Définition de domaines privés « à ne pas » indexer par la GSA, i.e les pages relatives à l’espace client. Ceci se fait soit par le référencement de plage URL « à exclure » de l’indexation, soit par l’éjection du « Crawler » via un mécanisme de sécurité implémenté dans les JSPs concerné.
    • Mise en œuvre de Workflow de migration de contenu avec l’outil Vignette Motion (VM). Tâches réalisés :
    o Montée en compétence sur Vignette Motion.
    o Edition d’ordre d’installation du serveur d’accueil de VM, Tomcat 8, sur les différents environnements de la SG.
    o Installation et test de VM sur les différentes instances.
    o Implémentation progressive de Workflows de migration de contenu sur les différents environnements.
    • Réalisation de services web implémentants le « Web Call Back ». Tâches réalisés :
    o Analyse du besoin et production de spécifications techniques : Confluence, UML.
    o Réalisation en Spring WS et tests via Soap UI
    o Rédaction de mode opératoire pour les livraisons sur les différents environnements
    o Planification, suivi et support à la MEH et MEP.

    Environnement Technique : Vignette CMS 8.1, Vignette Motion 8, Spring WS, JSON, Maven 2, Unix, Git, Eclipse, Weblogic 11g, Oracle 11g, Google Search Appliance.
  • Architecte / Développeur JEE - AMOA

    Jan 2014 - Jan 2015

    Prestation d’architecture et de développement JEE ainsi que d’Assistance MOA & Team Lead chez PSA.

    Lieu : Poissy, Ile de France.

    Objectif de la mission :
    • Assistance à la maitrise d’ouvrage dans le cadre de l’évolution du module central de paiement sur internet de PSA : ePaiement Groupe.
    • Refactoring et mise en conformité du module central de paiement « ePaiement Groupe ».
    • Renfort en analyse, conception et support (intégration, déploiement,…) sur des applications en collaboration avec ePaiement Groupe.
    • Assistance à la mise en place d’un Centre De Service (CDS) spécialisé dans l’analyse et la conception en JEE.

    Assistance MOA :
    Dans le cadre des évolutions fonctionnelles possibles d’ePaiement à savoir :
    o Le paiement en N fois,
    o Le paiement par abonnement,
    o Le paiement par Alias : sauvegarde la CB pour le « One-click ».
    Les tâches suivantes ont été réalisées :
    • Etude d’opportunités : le besoin effectif de l’évolution : combien d’eBoutiques
    o Coût du prestataire de paiement pour l’ajout éventuel de ces nouvelles fonctionnalités : certaines sont déjà incluses dans le contrat.
    o Valeurs ajoutées aux eBoutiques PSA : Besoin effectif par rapport à la clientèle, fréquence d’utilisation...
    • Etude de faisabilité technico-fonctionnel : Macro conception des nouveaux moyens de paiement en mettant en action les différents acteurs requis, modules et les flux de données nécessaires pour les interactions. Tâches réalisées :
    o Production de diagrammes des « cas d’utilisation » en UML pour les flux de données
    o Production de digramme d’ « activités » en UML afin de définir les nouveaux processus
    o Production de diagrammes de « packages » en UML afin de définir les différents modules mis en œuvre.
    • Analyse des coûts de réalisation.
    • Coordination entre les différents acteurs (partenaires internes et externes : banques, prestataire de paiement, service de facturation, référentiel client,…)
    • Planification (et animation) de réunions, de livrables et d’ateliers (fonctionnel et technique).

    Chargé de Conception JEE / MOE :
    • Chiffrage des tâches d’analyse, de conception et de développement.
    • Planification des travaux de développement et de livraison des modules.
    • Rédaction de dossiers d’analyse et de conception :
    o Les contraintes de scalabilité et performance des modules sont prioritaires dans le contexte de ePaiement en vue de l’annexion graduelle des eBoutiques de PSA avec leurs utilisateurs au nombre élevé.
    • Coordination entre la MOA, les testeurs et les intégrateurs.

    Développement JEE :
    • Mise en conformité du module ePaiement au niveau 3 du DICT (Disponibilité, Intégrité, Confidentialité, Traçabilité) :
    o Sécurisation des accès aux services métiers avec Spring Security et Struts 2.
    o Ajout d’une gestion de profil utilisateur avec Sping Security.
    o Conditionnement du contenu du Back Office selon le profil utilisateur connecté avec Struts 2, JSP 2.x, Spring Security.
    o Traçage en BD des actions entreprises lors d’une session avec Struts 2, Spring Security et Hibernate.
    • Support de nouveaux moyens de paiement : Paiement en N Fois, par abonnement, par Alias (One Click : sauvegarde de la carte bleue)
    • Intégration avec les eBoutiques de PSA.

    Intégration / Support à l’exploitation / Déploiement :
    • Rédaction de documents de déploiement, de guides d’exploitation, de configuration et d’intégration
    • Intégration des différents livrables sous Jenkins pour les environnements de DEV et INTEG.
    • Planification et animation de formations sur l’utilisation et l’intégration d’ePaiement.

    Assistance au Team Lead : Mise en place de Workflow sous JIRA permettant la gestion des demandes au CDS (Centre de Services) de conception JEE. Ce Workflow permet :
    • La réception et l’enregistrement de toutes les demandes.
    • La classification et le soutien initial des demandes.
    • Le suivi des demandes des MOA et l’information de ces derniers.
    • La production des tableaux de bord.

    Environnement Technique : Java 6, Spring Security 3.1, Struts 2, JSP 2.x, JAX-WS 2.2, CXF 2.5, Jenkins, JIRA, Entreprise Architect 9.3, Gantt 2.6.6, Eclipse 3.6, JBoss 5, Maven 3, JUnit 4, DB Unit, Soap UI 4.4.
  • Architecte - MOE JEE / Développeur JEE

    Jan 2013 - Jan 2013

    Prestation d’architecture, développement et support JEE chez Generali.

    Lieu : La Pleine Saint Denis, Ile de France.

    Objectif de la mission :
    • Refonte/Réécriture du module de calcul des commissions et d’intégration et Mise à jour de contrat : Il s’agit d’un module d’EAI permettant :
    o La lecture de gros volume de données à partir de source différente (Fichiers plat, file JMS, BD),
    o L’encapsulation des données récoltées dans un format mutualisé exploitable par plusieurs applications au sein du socle Generali,
    o L’enrichissement des données via un dialogue entre différentes applications basées sur les Webservices et l’échange via message JMS
    o Transformation et formatage de données pour des applications cibles
    Contexte :
    • L’équipe composée d’un Architecte/Développeur JEE et d’un Chef de projet fonctionnel
    • Direction du projet en mode Agile/Scrum sur base de Sprint d’une semaine
    • Autonomie et liberté d’action dans les choix technologiques

    Tâches Réalisée :
    • Pilotage MOE :
    o Chiffrage des tâches d’analyse, conception et développement.
    o Planification des livrables.
    o Coordination entre la MOA, l’équipe d’intégration et les testeurs par la planification et l’animation de réunions.
    o Rédaction de dossiers d’analyse et de conception.
    • Architecture / Développement JEE / Support:
    o Analyse du besoin fonctionnel, suivi d’une étude de faisabilité et de pertinence des framework JEE dans le cadre du projet.
    o Proposition de framework JEE facilitant l’implémentation du besoin fonctionnel (Spring Integration, Spring Batch).
    o Conception de l’application et production de documents techniques.
    o Conception de l’architecture de déploiement (Nombre de files JMS, Ressource en bases de données, Configuration des batchs, Spécification des besoins en librairie (repository ou locales), Configuration des instances du serveur Jboss (serveurs de développement, de tests et de production)).
    o Mise en place de l’intégration continue avec Hudson.
    o Développement des benchs de performance.
    o Implémentation du nouveau module d’EAI en Spring Batch et Spring Integration.
    o Développement de tests unitaires.
    o Mavénisation du projet.
    o Création de documents de support et formation de l’équipe de MEP sur la maintenance de nouveau composant.
    o Création de manuels de déploiement.

    Environnement Technique : Java 6, Spring batch 2.9.1 , Spring Integration 2.1, SOAP JAX-WS 2.2 , CXF 2.5, Eclipse 3.6, JBoss 5, Maven 2 , JUnit 4, DB Unit, Soap UI 4
  • Architecte JEE et Informatica MDM Hub / Développeur JEE

    Jan 2012 - Jan 2012

    Prestation d’architecture et développement JEE chez la Société Générale.

    Lieu : Paris, La Défense.

    Objectif de la mission :
    Dans le cadre du programme de transformation du Groupe « Ambition SG 2014 », le Groupe Société Générale a lancé plusieurs travaux d’optimisation, de mutualisation, de synergie et de refonte du modèle opérationnel.

    Contexte et tâches réalisées :
    • L’équipe est composée de 5 architectes/MOE en France et 15 développeurs JEE à Bangalore en Inde.
    • Le projet suit la méthodologie Agile/Scrum
    • Architecte d’application JEE
    o Conception du module d’habilitation et de sécurité des données.

    • Architecte Informatica MDM Hub
    o Conception et implémentation du nouveau référentiel de données sous MDM Hub :
     Modèle de données
     Batch d’alimentation et de mise à jour
    o Conception des écrans d’alimentation et de gestion du nouveau référentiel
    • MOE :
    o Conduite opérationnelle des travaux de développement et d’intégration faite par l’équipe située à Bangalore.
    o Coordination entre les équipes développements : Référentiel/Zone D’échange

    Formations suivies :
    • Informatica MDM Hub.
    • Informatica Data Director.

    Environnement Technique : Java 6, JSP 2.0, JSTL, Web Service (jax-ws ), Spring MVC , UNIX, SVN, Oracle 10gR2, SQL Developper 3.0.02, Eclipse 3.6, Weblogic Server 11g,JUnit 4, Informatica MDM Hub 9.5, Informatica Data Director.
Études et formations
  • Certification Python : entry level.

    2023
  • Formation au sein de Informatica sur la conception des référentiels avec les outils Informatica MDM Hub et Informtica Data Director.

    2012
  • Certification OJCP 6 : Oracle Certified Professional, Java SE 6 Programmer

    2011
  • Diplôme National d'Ingénieur en Génie Logiciel

    INSAT (Institut National des Sciences Appliquées et de Technologies)
    2009
Autres compétences
Compétences
Langages de programmation  Back –end:
o Java 8 (API, AWT, Swing, Sockets, JDBC…), JEE 6 (JSP, Servlet, JPA, JTA, JMS…),
 Front-end :
o HTML, JavaScript/Typescript, CSS
Frameworks  Back-end :
o Spring Core 5.x, Spring MVC 3.x, Spring Batch 3.x, Spring Integration 2.x, Spring Boot 2.x, Spring State Machine 2, CXF 3.x, Struts 1 & 2, JSF 2, Hibernate 5.x, EJB 3.x, Quartz, …
 Front-end
o Angular 10
Dev-Ops  Jenkins, Groovy, Docker, Artifactory/Nexus,
Systèmes d’exploitation  Unix, Linux (Suse, Fedora, Ubuntu, Mandriva…).
 Windows (98/XP/Vista).
Environnements de développement  IntelliJ, Eclipse, Webstrom, Enterprise Architect, Visual Paradigm.
Design Pattern  GOF, JEE
Architectures  MVC, SoA, Mrico-Services, REST, SOAP, …
Langage de modélisation et méthodologies  Agile/Scrum, UML.
Base de données  MySQL 5.x, Oracle 12g, SQL Server et Microsoft Access.
Langues  Français: Bi-langue
 Anglais : Courant
 Arabe : Langue maternelle

D'autres freelances
Architecte JAVA

Ces profils pourraient vous intéresser !
CV Développeur Full Stack - Tech Lead
Enzo

Développeur Full Stack - Tech Lead

  • BAYONNE
JAVA PHP SYMFONY Angular CI/CD DEBIAN TypeScript
Bientôt disponible
CV Chef de projet JAVA
Dieudonné

Chef de projet JAVA

  • SAINT-DENIS
JAVA BPM AGILE TEAM DEVELOPER TOMCAT LINUX SQL ENTERPRISE ARCHITECT JENKINS WINDOWS
Disponible
CV Architecte JAVA
Hatem

Architecte JAVA

  • PUTEAUX
JAVA J2EE LINUX ORACLE SQL
Disponible
CV Architecte J2EE
Mostafa

Architecte J2EE

  • PARIS
J2EE JAVA SOA
Disponible
CV Senior Data Engineer and Scientist NLP
Stefano

Senior Data Engineer and Scientist NLP

  • ANTIBES
BIG DATA SQL APACHE SPARK DATA PYTHON SCALA JAVA
Disponible
CV Architecte J2EE
Maximilien

Architecte J2EE

  • PARIS
J2EE JAVA DDD MAVEN SPRING SPRING BATCH Spring Boot Kubernetes Google Cloud Platform SQL SERVER
Disponible
CV Tech lead
Fabien

Tech lead

  • GRATENTOUR
JAVA SPRING SQL SAFE HIBERNATE LINUX
Disponible
CV Ingénieur de développement JAVA
Clément

Ingénieur de développement JAVA

  • ORANGE
JAVA J2EE POSTGRESQL JAVASCRIPT Angular
Disponible
CV Architecte Solutions
Omar

Architecte Solutions

  • FRESNES
J2EE JAVA AGILE API RESTful Spring Boot Microservices SAFE GED Cloud AWS TOGAF
Disponible
CV Architecte JAVA
Fabien

Architecte JAVA

  • ORLÉANS
JAVA J2EE REST Spring Boot SOA APACHE KAFKA POSTGRESQL AGILE DOCKER CASSANDRA
Disponible