Menu

Foued ELGUENBRI

Paris

En résumé

Email: elguenbri.foued@gmail.com

Mes compétences :
Architecture
Génie logiciel
GWT
GXT
Hibernate
JAVA
JEE
Spring

Entreprises

  • Galeries Lafayette - LE BHV MARAIS - Technical Lead

    Paris 2014 - maintenant Création d'une nouvelle plateforme de gestion des commandes OMS (Order Management System):
    A la tête d'une équipe de 8 développeurs.

    Externalisation du système de gestion des commende de Hybris vers un nouveau système réparti OMS.
    L'OMS est un ensemble de briques fonctionnellement indépendantes(Web-Apps), orchestrées à travers un outil de gestion de workflow (Activiti) via des files JMS et des Webservice REST.

    Tâches:
    - Responsable technique de la nouvelle plateforme.
    - Analyse des workflow existants.
    - Orchestration des nouveaux composants.
    - Revue de code, suivi des devs.
    - Responsable plateformes d'intégration.

    Environnement:
    Spring-Boot, Activiti (gestion de bpmn), JMS, HornetQ, REST-WS, Mongo-DB, Json, junit, Mock, Quartz Scheduler, AngularJs, Elasticsearch, Maven, Jenkins, Artifactory.
  • Galeries Lafayette - Consultant Sénior Java/JEE

    Paris 2013 - maintenant Extension du site galerieslafayette.com
    - Introduction de la notion de Marketplace.
    - Refonte du système de frais de port
    - Gestion des articles beauté (échantillons, cadeau contre achat ...)
    - Refonte responsive du front (scss, grunt, foundation)

    Environnement:
    Hybris (Platfome JEE de commerce électronique), Endeca(Moteur indexation),Mirakl(Platforme Marketplace), Talend (ETL). Oracle BD, Ogone (Gestion des paiements).
  • Palo-IT - Consultant Senior Java/Jee - Architec Junior

    Paris 2012 - 2013 Implémentation d’un système informatisé de gestion des incitations du PMDN (Programme de Mitigation des Désastres Naturels)
    Projet piloté par Palo-IT pour le compte du Ministère de l’Agriculture, des Ressources Naturelles et du Développement Rural (MARNDR).

    Tâches:
    - Analyse des besoins.
    - Définir l’architecture de l’application.
    - Implémentation du socle de l’application.
    - Formation des intervenants.
    - Participer aux développements.
    - Référant technique.

    Environnement: GAE (Google App Engine), GWT 2.5, GXT 3.0.1, Spring, JPA/Hibernate, OpenID, Maven, Archiva, Jenkins, Eclipse, SVN.
  • Europe Assistance - Consultant Java/Jee Sénior

    2012 - 2012 Mission chez Europe Assistance en tant que Consultant Java/Jee pour faire l’audite de leur application de gestion de garanties mécanique Fusion. L’application étant trop hétérogène il est devenu trop complexe de la maintenir ou de répondre aux besoins client.
    Cette application contient des composantes en java/Jee et un cœur en AB-Suite (LDL+) qui communiquent à travers des WebServices.
    Le cœur AB-Suite génère des livrables microsoft (msi) (déployés sous le Runtime AB-Suite) et une application aspx (déployée sous un serveur IIS).
    Le cœur AB-Suite gère la partie éditique et souscription par intégration de fichiers.
    Les composantes Java sont des applications Java/jee qui complètent l’application ASP. Ils sont hébergés sous des serveurs tomcat et consomment les WS exposé par le cœur AB-Suite.

    Objectifs de la mission.
    - Faire l’inventaire de l’existant.
    - Proposer des solutions en Java pour remplacer le cœur AB-Suite.
    - Estimation de la réalisation.
    - Prototypage de la solution.
    - Renforcer la sécurité.
    - Automatiser le processus de génération des livrables

    Environnement: AB-Suite (LDL+), ASP, IIS, SQL Server 2005, Postgres, Jsf, RMI, Hibernate, Spring, Axis-WS, OpenOffice, SVN, Tomcat, Maven.
  • Sungard - SCS Team Leader

    Lognes 2011 - 2012 TEAM LEADER - Projet Cabestan

    Une fois le produit Cabestan stabilisé, il a eu un changement au niveau de pilotage du projet. J’ai assuré la fonction de chef d’équipe (2 ressources) durant l’année 2011 (en parallèle avec mes anciennes tâches techniques).

    Nouvelles tâches en tant que Chef d’équipe.
    - Superviser les Sprints et distribuer les tâches (sous JIRA).
    - Formation des nouveaux stagiaires (4 stagiaires).
    - Test, Qualité et intégration :
    - Revue de code avant livraison.
    - Intégration du travail des stagiaires.
    - Test des fonctionnalités avant livraison.

    Nouvelles tâches techniques.
    - Gestion des applications d'intégration continue (sous deux serveurs Linux)
    - Configuration de Hudson + Sonar + Maven2 + Mysql + Tomcat
    - Test et qualité
    - Déploiement automatique (après chaque commit) de notre produit sous des serveurs de test internes (UAT User Acceptance Testing).
    - Garder en permanence deux applications disponibles pour les tests fonctionnels (version du sprint en cours et la dernière version livrée pour traiter les retours).
    - Création des nouveaux comptes SVN, Jira.

    Tâches conservées.
    - Support techniques
    - Veille technologique.

    Environnement: Linux (Redhat4 - Ubuntu), Putty, Hudson, Jira, Archiva, SVN, WinSCP, SCRUM, Env de dev du projet Cabestan (voir ci-dessous).
  • Sungard - Consultant Java/JEE Sénior - Architect Junior

    Lognes 2010 - 2011 Ajout de nouveaux modules au produit Cabestan

    Après la stabilisation du produit Cabestan, nous avons entamé la phase d’extension et d’amélioration fonctionnelle.
    A travers deux projets de fin d’étude, nous avons lancé deux modules :
    Un module pour la gestion des compétences. Il stocke le cursus d’un consultant et offre des outils de recherches des profiles (facilite le choit des nouveaux consultants à affecter aux nouveaux projets).
    Un module de suivi des entretiens consultant-manager pour garder la trace ou planifier des évènements (point mission, entretien d’évaluation…).
    Au cours de cette phase, j’ai participé à la correction des retours client sur des anciens modules (correction de bug ou amélioration).

    Réalisation

    - Formation des stagiaires.
    - Validation de la conception des nouveaux modules
    - Préparation et intégration des nouveaux modules.
    - Ajout d’un mécanisme d’audit basé sur Spring AOP.
    - Historisation des tâches planifiées.

    Environnement: Environnement de développement du produit Cabestan.
  • Sungard - Consultant Java/Jee Sénior - Architect Junior

    Lognes 2010 - 2010 Prototype ATA (Acceptance Test Accelerator)

    Après la stabilisation du projet Framework, un nouveau projet de prototypage a été crée pour tester la possibilité d’intégrer notre Framework avec un produit Sungard déjà existant intitulé CSA (Common Service Architecture).
    Ce dernier utilisait Struts2/Jsp pour ses interfaces graphiques.CSA constitue lui aussi un socle pour différent produit JEE de Sungard, il avait la spécificité d’offrir un portail multi-clients (multi-tenancy).
    L’idée était de remplacer les interfaces graphiques de CSA par des interfaces (GWT/GXT) générées par notre Framework tout en gardant les fonctionnalités offertes par le produit initial.
    J’étais le seul intervenant sur ce projet.

    Réalisation
    - Etude de l’architecture du produit CSA.
    - Intégration de CSA et de notre Framework.
    - Implémentation d’un module de modélisation des besoins fonctionnels et des plans de test logiciel.

    Validation et perspectives
    - Le prototype a abouti à un produit exploitable.
    - Les écrans d’administrations ont été conservés tel qu’ils sont (Struts et JSP).
    - Le projet a été transféré à une équipe en Inde pour finaliser le produit.
    - J’ai assuré la passation et la formation au chef d’équipe Indien.

    Environnement: Environnement de développement du produit Cabestan, Struts2, JSP.
  • Sungard - Consultant Java/JEE Sénior

    Lognes 2010 - 2010 Refonte projet Cabestan

    J’ai intégré l’équipe SCS Tunis en janvier 2010 sur un projet de refonte de l’application nommée Cabestan. Cette application représente un portail RH de gestion des consultants chez SCS Paris (Suivi des congés, des rapports d’activités, et des contrats clients). Chaque fonctionnalité représente un module dans le portail.
    J’ai participé à la refonte du produit sous la tutelle de mon chef de projet (et Architecte Confirmé) à Paris. J’ai participé dans l’implémentation des composants génériques et j’ai fais la formation aux membres de l’équipe pour qu’ils puissent migrer vers la nouvelle architecture.

    Avant refonte :
    - Code source structuré sous forme de deux gros projets (Core et UI, tout modules confondus)
    - Interaction en dure entre différents écrans
    - Difficultés de maintenance et d’ajout de modules

    Après refonte :
    - Naissance d’un projet Framework qui englobe toutes les fonctionnalités génériques (indépendant du la logique métier du projet Cabestan). Ce projet peut être utilisé comme socle pour tout nouveau projet de l’équipe. Ce projet gère la représentation graphique du portail et charge les modules (développés indépendamment).
    - Authentification à travers un serveur Radius.
    - Introduction d’un nouveau mécanisme fournit par GXT, basé sur des Contrôleurs, Vues et Evènements(GXT). Le tout est centré autour d’un Dispatcher qui renvoi un évènement vers le contrôleur qui se charge d’afficher la vue associé.
    - Chaque module est extrait en deux projets (Core et UI)
    - facilité de maintenance et d’évolution.

    - Le projet Cabestan finale est structuré à l’aide de maven2 de façon qu’il se repose sur le nouveau Framework et charge les différents modules qui représentent les fonctionnalités offertes au client.
    - Assurer la migration iso-fonctionnelle entre les deux versions du produit

    Environnement: Java/Jee, Spring 3.0, Hibernate/JPA 3.6, GWT 2.3, GXT 2.2.5, Junit 4.8, Birt 2.5, Cubic Test, Dozer, Easy Mock, Quartz, iTest, Mysql, Tomcat, Ehcache,Log4j, Eclipse, Toad for mysql.
  • Owliance - Ingénieur d'études et développement

    Paris 2009 - 2010 Projet SN santé Développement d’un ETL 6 mois

    SN santé est un progiciel JAVA/JEE d’assurance maladie destinés à la gestion de portefeuilles d'assurances de personnes. Ce progiciel a été acheté par Owliance pour remplacer leur outil d’exploitation qui ne suit pas les évolutions technologiques de l’époque.
    Ce produit comporte plusieurs modules : SN-Assurance, SN-Param, SN-Rapport. Ce dernier module offre la possibilité d’extraire les informations sous forme de fichiers CSV ou de fichiers indexés.
    Mon travail était d’élaborer un outil de transformation de ces rapports pour qu’ils soient conformes aux rapports générés par l’ancien progiciel en exploitation.


    Réalisation
    - Etude de la structure des rapports générés par SN-Santé.
    - Etude de la structure des rapports générés encours d’exploitation.
    - Implémentation des scriptes de migration.
    - Validation des fichiers générés auprès des spécialistes de l’ancien système.
    - Installation et formation de ces spécialistes (Mission de deux semaines à Paris)

    Environnement: Talend Open Studio, Mysql, CSV
  • Owliance - Ingénieur d'études et développement

    Paris 2009 - 2009 Prototype ASSJ (Acte sous signature juridique)

    Un portail web pour le conseil national des barreaux qui permet aux avocats et aux parties de signer leurs actes électroniquement par l’utilisation des certificats.
    J’ai assisté ce projet depuis la phase de la réponse à l’appel d’offre.

    Réalisation
    - Analyse du cahier de charge fourni par CertEurope
    - Définition des tâches et chiffrage.
    - Étude et choix technique de la plateforme.
    - Implémentation du prototype et configuration de l’environnement.
    - Intégration des composants de signature fournis par CertEurope.
    - Formation des deux ressources qui ont assuré la suite des développements.

    Environnement: PHP5, Symphony Framework, Mysql, Lamp sous Ubuntu
  • Owliance - Ingénieur d'études et développement

    Paris 2008 - 2009 EbeeSpace (Coffre-Fort électronique)

    Application JAVA/JEE développée pour le compte du groupe Orange France. Elle utilise une base de données associée à des composants de stockage pour garantir l'archivage des documents. Elle utilise également des serveurs gérant les signatures et les jetons d'horodatage.
    Je faisais parti de l’équipe de développement. Je participais aux développements des nouveaux écrans de l’application.

    Réalisation
    - Signature et Horodatage des documents stockés.
    - Tâches planifiée de notification par emails.
    - Optimisation des requêtes SQL en utilisant JDBCTemplate.
    - Utilisation des "Design patterns" : DAO/DTO, Command et Service

    Environnement: Struts2, Spring, DB2, Hibernate, Javamail, Quartz, Ant, Junit, Cobertura, Log4j, Ext-JS, Applet
  • Owliance - Ingénieur d'études et développement

    Paris 2008 - 2008 SCINOE (Platforme de Reporting et de Statistiques)

    Application JAVA développée pour le compte de la filiale Almerys du groupe Orange France, spécialiste dans la gestion simplifiée des remboursements de santé, ils facilitent la pratique du tiers payant pour les professionnels de santé et accompagne les assureurs dans leur stratégie santé. Cette application est constituée de deux modules.
    Un pour l’extraction des données des bases de production, la transformation de ces données (synthétiser) et le chargement de ces derniers dans la base de l’application appelé base InfoCentre. Ce module se lance entant que tache planifié (processus java).

    Un deuxième module représenté à travers un site web en intranet qui affiche les données stockées dans l’InfoCentre en rajoutant des fonctionnalités de recherche, de tri et d’exportation sous format pdf et excel. J’étais le seul intervenant sur ce projet.

    Réalisation
    - Localisation des données dans la base de production.
    - Modélisation du l’InfoCentre.
    - Implémentation des règles d’extraction, de transformation et de l’alimentation de l’InfoCentre (ETL).
    - Mettre en place une application web pour exploiter ces statistiques (affichage, recherche et exportation). L’application est hébergé sous un serveur Websphere 7.
    - Assurer les réunions hebdomadaires avec le client (démo, retours, évolutions).
    Évolutions
    - Une équipe a intervenu sur ce projet pour travailler sur le premier module et améliorer les performances. Je faisais parti de cette équipe
    - Passage à une architecture de N-ETL (en série ou en parallèle). Ces ETL ne sont pas forcément sur le même serveur, ils sont lancés en utilisant RMI.
    - Utilisation d’un serveur de synchronisation orchestré par Quartz Scheduler. Ce serveur stocke la configuration de chaque ETL à lancer (règles de transformation et temps de déclenchement)
    - Stocker les règles de transformation dans un moteur de règle extérieur aux ETL

    Environnement: Struts, Struts-layout, Struts-tiels, JSTL, iText, JExcel, DB2, Hibernate, Quartz, Jboss Rules, RMI, WebShere 7.
  • Omando - Stage de fin d'études

    2007 - 2008 “ BPMN Modeling and BPEL generation from Activity Diagram ”

    Omondo est un éditeur logiciel qui offre un produit de modélisation UML sous forme d’un plugin pour Eclipse. Ce produit permet de générer les classe java à partir de la modélisation du diagramme de classes UML et permet aussi le la rétro-ingénierie (générer le diagramme à partir des classes).
    L’éditeur a voulu ajouter une nouvelle fonctionnalité (qui était à l’époque une initiative de cette boite) qui permet de rapprocher le monde BPMN (Business Process Model and Notation) dans le but de modéliser les processus métier à travers le diagramme d’activité d’UML. Une seconde phase consistait dans l’exportation de cette modélisation sous forme de diagramme BPEL (Business Process Execution Language).

    Réalisation
    - Étude du modèle BPMN.
    - Étude du diagramme d’activité.
    - Migration du modèle BPMN vers UML (utilisation de stéréotypes).
    - Exportation du diagramme en BPEL.

    Environnement: MDA (Model-driven architecture), EMF (Eclipse Modeling Framework), GEF (Graphical Editing Framework), UML, BPMN, BPEL

Formations

  • INSAT (Institut National Des Sciences Appliqués Et De Technologies) (Tunis)

    Tunis 2002 - 2008 Génie logiciel
Annuaire des membres :