FORMATION
2010 Master 2 recherche en informatique spécialité Systèmes Intelligents
Paris Dauphine
2009 Master 1 en informatique
Université de Versailles
2007 Maîtrise en informatique
Institut Supérieur d’Informatique et de Mathématiques-Tunisie
2002 Baccalauréat Scientifique : Mathématiques (Mention très bien)
COMPÉTENCES TECHNIQUES
Conduite de Projet :
• Spécifications Fonctionnelles avec UML
o Exigences Fonctionnelles, Non-Fonctionnelles (Utilisateurs, Sécurité, Juridiques, …)
o Cas d’Utilisations UML, Scenarii, Spécifications Détaillées (Texte)
o Méthodes Agile.
• Conception et Design avec UML
o Architecture Logique : spécification des Composants et Services
o Architecture Logicielle en 5 Couches et Structuration avec les Design Patterns
Présentation
Coordination
Services
Persistance
Entités
• Socles Techniques Multi-Frameworks
o Struts, JSF, Ajax.
o Persistance avec Hibernate 3, EclipseLink, Toplink, EJB 3, spécification JPA 2.x.
o Intégration avec Spring.
o Web Services.
• Compétences Métier :
o Développement et Conception java/J2EE
o Installation des SGBD (Oracle 9i/10g/11g, MySQL, SQL Server, Postgres)
o Administration et tuning des bases de données (ORACLE).
o Préparation de l’environnement technique.
o Analyse de besoins.
o Rédaction des documents de conception.
o Rédaction des cahiers de test et du scenario de test.
o Rédaction de documentations techniques.
o Rédaction des comptes rendus de réunion.
Outils Informatiques :
o Méthodologies UML, Merise, Agile (Scrum)
o Technologies Internet java (awt, swing, applet, servlet, jsp,), PHP, javascript, HTML, CSS, Ajax, XML, XSL
o J2EE Servlets, JSP, Struts, EJB3, JPA/Hibernate, EclipseLink, javaBeans, JMS, JNDI, JBoss, JUnit, TestNG, EasyMock, ANT, Maven, Hudson, JMX, SeleniumHQ, SVN.
o Serveur HTTP apache (php, jakarta - tomcat), Glassfish, WSAD
o SGBD relationnels
o Design Patterns oracle 9i/10g, mysql , postgresql
MVC, Singleton, IoC(DI), Observer, DAO, Factory ...
o AGL Eclipse, Oracle Jdeveloper, Netbeans, Alfresco, Liferay
o Langages java (awt, swing, ), C, C++ visual basic, Shell
o Protocoles réseaux IP, TCP/IP, HTTP, FTP, LDAP, SOAP, RMI-IIOP…
o Autres Data Mining, Data Warehouse (ETL) , Cloud Computing, IA, Mathématiques,
Langues :
o Anglais : lu, écrit, parlé (4 mois de formation en anglais (business english) à AMIDEAST- Sousse (Institut américain agrée de langue).
o Arabe : maternelle.
o Allemand : notions.
02/2011-07/2011
(6 mois) Ingénieur d’étude & de développement indépendant [Kartagis Tunisie&France] :
Développement d’une application web : CV thèque
Il s’agit d’un système de modélisation permettant de défricher et de se documenter pour trouver des CV appropriées aux clients. Il permet de gérer les CV, les ordonner selon le besoin du recruteur et appliquer des filtres de recherche selon la spécialité des candidats. (Equipe de 5 collaborateurs).
Tâches :
• Collecte d’informations et analyse des besoins
• Participation à la rédaction des spécifications techniques.
• Participation à la conception généralisée et détaillée en UML.
• Développement de la partie persistance à l’aide de l’implémentation JPA/Hibernate.
• Test du Module de persistance à l’aide de HSQLDB
• Participation au développement de la partie présentation avec JSF
• Intégration du module ORM sur le framework Spring
• Test des modules métier avec JUnit.
Environnement technique : Windows XP, Eclipse Helios 3.6, Tomcat, Oracle 10g Express Edition, SQLDeveloper, java5, UML, Spring 2.5, JSF, JPA 2.0, Hibernate 3, JUnit 4, HSQLDB, SVN ...
08/2010-01/2011
(6 mois) Ingénieur d’étude & de développement indépendant [Société Générale] :
Extraction des données sur les pertes internes de la banque et génération de reportings.
Au sein d’une équipe de 4 collaborateurs, J’ai participé à la mise en place une procédure d’extraction des pertes saisies dans la base de données dans le but de :
- corriger les données saisies en production
- assurer la migration des données vers l'outil cible de collecte de pertes internes
- permettre d'effectuer un certain nombre de reportings, notamment le stock de pertes validées à tout instant t
Tâches :
• Analyse de besoins et étude de l'existant.
• Participation à la refonte de la conception : conception avec L'outil PowerAMC et génération des différents modèles (MCD, MPD, …)
• Génération des scripts SQL et PL/SQL.
• Développement du code métier pour le calcul des pertes internes
• Gestion de la persistance avec Hibernate 3.
• Génération de reportings en format Excel avec l’implémentation POI (Poor Obfuscation Implementation)
• Rédaction des règles métier/de gestion à considérer
• Test & validation avec JUnit.
Environnement technique: Windows XP, Eclipse 3.2, Tomcat, Oracle 10g Express Edition, SQLDeveloper, Toad, java 5, Hibernate 3, HQL, JUnit, SQL, PL/SQL, POI API ...
STAGES ET TRAVAUX REALISES
04/2010-09/2010
(6 mois) Stage : Exécution fiable de composition de services Web : LAMSADE- Paris Dauphine
Le but de ce stage est d'étendre une des approches de sélection proposées à la phase d'exécution. En effet, lors de l'exécution d'une composition de services Web, un composant peut ne pas être disponible ou peut tomber en panne entraînant la nécessité de devoir re-planifier la sélection. (Équipe de 3 collaborateurs).
Tâches :
• Etude des approches existantes de tolérance aux pannes dans les services Web.
• Développement d’une interface web (framework Struts)
• Mise en place d’un workflow avec l’outil YAWL
• Proposition et implémentation d'un algorithme d'exécution fiable de
composition de services Web (couche métier).
• Utilisation de l’outil Gantt pour la gestion du projet
• Rédaction d’un rapport à l’aide de l’outil LaTeX.
Environnement technique: Eclipse 3.6, Mysql 5.1, JBOSS 6.0, Tomcat 7.0, JDBC, Java 5, XML, Struts 1.3, JSTL, YAWL, Gantt, Miktext…
06/2009-08/2009
(3 mois) Développeur/Concepteur Java : Développement d’un module de gestion des personnels pour un PME : société de production de conserves (Tunisie).
Au sein d’une équipe de 4 ingénieurs juniors, j’ai participé au développement d’une application client lourd.
Tâches :
• Analyse des besoins et étude de l’existant.
• Participation à la rédaction de cahier de charges.
• Participation à la conception avec UML (côté applicatif) et MERISE (côté données).
• Développement du code métier de l’application en J2SE et de l’IHM en Swing
• Gestion d’accès à la base de données (JDBC)
• Rédaction de guide d’utilisation.
Environnement technique : Windows XP, Eclipse, Java 5, Merise, UML, JDBC, SWING, MSAccess, PowerAMC, Rational Rose…
02/2009-05/2009
(4 mois) Stage : implémentation des algorithmes de généralisation des données des objets mobiles : PRISM, Versailles
Lors de la phase d’exploitation des données (Fouille de données) décrivant un objet mobile (bus), les analystes rencontrent trois problèmes majeurs : redondance de données, une quantité énorme de données, l’absence de certaines valeurs. Notre solution consiste de consolider les données manquantes et réduire la dimensionnalité des données.
Tâches :
• Etude et Analyse de besoins
• Participation à la phase d’analyse et conception avec UML (côté applicatif) et MERISE (côté données).
• Développement des modules métier d’extractions des données.
• Implémentation des algorithmes étudiés et leur application sur les données extraites à partir de la BD associée.
• Implémentation d’une interface graphique pour visualiser les résultats obtenus avec JFreeChart.
• Développement d’une interface web (servlet, jsp)
• Déploiement de l’application sur Tomcat
• Rédaction de rapport détaillé à l’aide de LaTeX.
Environnement technique : Windows Xp, Eclipse Europa, Tomcat, Rational Rose, Java 5, Servlet, JSP, Collection Api, JFreeChart, Oracle 10g Express, Toad, JDBC, UML, LaTeX …
12/2008-01/2009
(1 mois) Projet académique : Mise en place d’un audit d’une base de données
Dans le cadre du module de « Tuning et administration base de données », j’ai réalisé un projet (en binôme) un audit de base de données.
Tâches :
• Analyse des besoins.
• Etude de schéma la base existante ORACLE.
• Optimisation des requêtes SQL avec l'outil EXPLAIN PLAN et script utlxpls.
• Développement de procédures stockées (PL/SQL).
• Rédaction du rapport.
Environnement technique : Ubuntu, Oracle express Edition, SQL*Plus, SQLDeveloper, Explain plan, SQL, PL/SQL
02/2007-06/2007
(5 mois) Mémoire de fin d’étude : Etude de la technologie ECM et implémentation d’un Workflow
Le travail comporte de parties majeures :
Une première partie consistant Une étude bibliographique de la technologie ECM (Entreprise Content Management) ; une panoplie de technologies et d’outils assurant la gestion de cycle de vie d’un contenu au sein d’une organisation. La deuxième partie consiste (équipe de 3 personnes) à implémenter un workflow automatisant l’affectation des stages au sein d’une université.
Tâches :
• Analyse des besoins
• Etude bibliographique de la technologie ECM
• Etude et installation d’un système de gestion de contenus Alfresco
• Conception du BP à l’aide de JPDL
• Implémentation du workflow sur Alfresco en Java et XML
• Exécution du workflow a l’aide du JPBM
• Intégration du workflow dans Alfresco.
• Développement d’une UI (Swing) facilitant le dialogue avec l’application pour l’administration.
• Rédaction d’un rapport détaillé.
Environnement technique : Windows XP, JBOSS, Eclipse, JPBM, JPDL, Alfresco, Java 4, XML, SWING …
06/2006-09/2006
(4 mois) Stage au sein d’une socièté informatique de développement HexaByte, Tunisie
Participation (équipe de 4 personnes) au développement d’une application web de location de voiture en Ligne :
Tâches :
• Analyse de besoins.
• Participation à la conception de l'application avec L'outil Rational Rose (UML).
• Développement du module de réservation (Servelets, Jsp, suivi de sessions, gestion des cookies).
• Développement du module d’accès à la base de données.
• Test et validation avec l’outil JUnit.
• Rédaction de rapport.
Environnement technique: Windows XP, Eclipse, Rational Rose, J2EE (Servlet, JSP, JSTL, MVC, JUnit), Tomcat, Oracle 8i, JDBC