Moez - Développeur SELENIUM
Ref : 160921B004-
93140 BONDY
-
Développeur, Directeur de projet, Ingénieur qualité et méthodes (41 ans)
-
Freelance
Expérience professionnelle
De 02/16 à ce jour Freelance
Auteur de Mozium
Développement d’un Framework de test automatique pour les applications web et mobile.
● Mozium est un Framework de tests basé sur Selenium pour les tests d’applications web et Appium pour les tests d’applications Mobile.
● Il présente un ensemble de services comme les logs, le reporting …
● La doc du framework : ********-MBA/Mozium
● Mozium est en cours d’amélioration pour être commercialiser.
Test Automation Manager
Mise en place d’une entité d’automatisation de tests chez le client AccorHotels.
● Recrutement de l’équipe : 3 Paris, 5 Vietnam.
● Gestion budgétaire du projet.
● Mise en plage de la stratégie de test.
● Mise en place de l’architecture matérielle du test.
● Formation de toute l’équipe sur Selenium et sur Mozium.
● Présenter les résultats au top management.
● Animer des réunions.
● Valider tous les types de releases.
● Gestion des ressources et de la conduite du projet.
● Gérer le projet avec la méthodologie Agile.
De 07/14 à 12/2015 Viadeo
Manager and API developer lead [Full stack] (api / portal / widget)
Remise à plat et mise en place d’une nouvelle plateforme pour l’api et les widgets de Viadeo dans le Cloud d’Amazon respectant les standards de sécurité.
● Étude des besoins et analyse de l’api existante présentant les lacunes de lenteur, de complexité de mise à jour …et de failles de sécurités.
● Élaboration des statistiques avec Hadoop et Hue sur les logs de l’ancienne API pour bien migrer les services et les partenaires.
● Élaboration des études techniques comme les frameworks des APIs, les protocoles Oauth2, les permissions, la gestion des droits, définition et organisations des ressources et leurs endPoints, les enveloppes et la gestion des erreurs des réponses, l’auto-documentation…
● Contribution à la mise en place de l’api avec Loopback et le développement des différents middelwares comme oAuth2, quotas, logs, csrf…
● Développement des endPoints de l’api : L’api Viadeo est développé sur le Framework Node « Loopback ». L’API Viadeo n’est pas une Api REST. Elle se sert des données exposées par une Framework CQRS.
● Développement d’un Portail pour les partenaires : Le portail est un backoffice développé avec Angular exposant de la documentation, des outils pour gérer les applications en vue de tester les widgets ou l’API et des outils d’administration pour l’administrateur.
● Contribution au développement des Widgets share, connect-with, follow-my-company et apply-with.
● Développement d'un projet d'exemple tutoriel sur l'intégration des widgets ou de l’api coté client ou serveur web. (SDKs)
● Mise en place des standards de sécurité comme CSRF, CORS, spoof-me, encryptage des données, certifications des servers…
● Mise en place de la stratégie globale de la qualité du produit et développement des tests pour l’api avec SuperTest, tests du portal et des widgets avec Protractor et Selenium, développement d’un outil de mesure de la couverture et mise en place de l’environnement multi-browser de test avec Selenium Grid sur Amazon.
● Industrialisation du processus de l'intégration continue (git/ grant/ AWS)
● Développement des services web sur le Framework CQRS en Java
● Contribution à l'intégration des évents SnowPLow + GoogleTagManager.
● Gérer les besoins des équipes marqueting et les partenaires (call, email, réunion...)
● Conduire le projet techniquement et fonctionnellement jusqu'au son ouverture publique
● Faire les démonstrations du produit en interne et pour les partenaires
● Former les équipes sur l’utilisation et le développement de la plateforme des API.
● Automatiser et simplifier le processus d’inscription et d’utilisation de l’API.
● Prise de décision sur les choix techniques et fonctionnels
De 05/12 à 07/2014 Viadeo
Lead tests fonctionnels - SDET– Encadrement de 3 testeurs (1 Paris + 2 Inde)
Mise en place de l’architecture et la stratégie des tests et suivi des projets d’automatisation des tests.
Lead Test Fonctionnels
● Chiffrer et Conduire le projet d’automatisation des tests
● Établir la stratégie de tests chez Viadeo
● Estimer les charges et planifier les tests
● Suivre et contrôler l’implémentation et le déroulement des tests
● Effectuer un bilan de capitalisation sur les tests et les bugs.
● Coordonner les relations avec les différents intervenants (développeurs, chefs de produits, managers, architectes, opérations …)
● Contribution à la mise en place de la méthodologie Agile chez Viadeo
● Contribution à l’amélioration du processus de la mise en prod (passer d’une mise en prod mensuelle à une hebdomadaire puis une journalière)
● Écrire un blog sur les tests automatiques sur le blogue de Viadeo
● Transfert des compétences et formations des membres de l’équipe et les développeurs
● Formalisation de la documentation des plans des tests sous forme de « user story » sous confluence
● Animation des réunions locales à Paris et en vidéo conférence avec l’inde
● Participer aux sessions de recrutement des testeurs
SDET & Développeur
● Développement du Framework «TANIT», basé sur Selenium et TestNG. Conforme aux designs patterns de test comme POP (Page Object Pattern) et DDT (Data Driven Testing). Il présente une multitude de services comme : les screenshot, les vidéos, l’archivage des résultats, les messages d’erreur personnalisés, les rapports personnalisés … Il présente une API qui normalise l’écriture des tests et facilite leurs maintenances. Cette API cache les aspects techniques, standardise les actions d’interactions et augmente la productivité.
● Développement et maintenance des tests automatiques fonctionnels de non régression du site de Viadeo
● Intégration des tests dans le cycle de l’intégration continue
● Assurer une exécution multiplateforme (Demo/ Preprod/ Prod) et multi-environnement (Os/Browsers)
● Formation continue : meetup, formation Agile et TDD, NodeJs, Anglais …
● Etablir des proofs of concept des nouvelles technologies : test sur Mobile, MBT (Model Base Testing)…
● Former tous les développeurs sur le Framework « Tanit »
● Développement et formation sur l’outil (spring batch) d'injection de données se basant sur des entrées en Json.
De 04/11 à 05/2012 EGENCIA (EXPEDIA)
Team lead - SDET– Encadrement de 5 testeurs
Mise en place de l’architecture et suivi des tests sur le portail Expedia (Front to Back office)
Team lead
● Chiffrage du projet et négociation des délais
● Animation des réunions et participations aux conférences téléphoniques en Anglais
● Coordination entre l’équipe de développement et l’équipe de tests pour l’écriture de nouveaux scénarios de tests
● Contribution à la mise en place de la stratégie de test.
● Encadrement de trois personnes pour développer les tests automatiques.
SDET
● Proposition et mise en place d’une nouvelle architecture matérielle pour les tests automatiques
● Développement et mise en place d’un Framework d’automatisation de test, « EgenciaRobot », basé sur Selenium et TestNG. Il est dédié aux no-techniciens proposant une solution basée sur la configuration XML des tests.
● Amélioration de la performance des tests par le biais des exécutions parallèles
● Développement d’une solution pour faire des tests de stress du serveur de mailing « Hermes »
● Mise en place d’un système de mocking des réponses des serveurs externes
(webservices et mailing)
● Déclaration et suivis des bugs détectés par les tests automatiques
09/06 à 03/11 VERMEG (Editeur de progiciels de finance de marché)
Chef d’équipe et Ingénieur d’étude & de développement Java/J2EE senior – Encadrement de 4 personnes
11/10 à 03/11 : Intégration du ProxyVoting dans MegaCor
● Analyse de la spécification du Proxy Voting (Swift 20022)
● Chiffrage de la solution proposée
● Personnalisation de Proxy Voting aux cycles de vie des OST dans MegaCor
● Implémentation des 8 types de messages pour l’entrée et la sortie
● Configurations de l’application et ajout des nœuds de gestion du Proxy Voting dans MegaCor
● Rédaction des spécifications techniques
● Suivi des développements et test des produits
08/10 à 11/10 : Maintenance évolutive sur la suite Megara : ensemble des applications de Vermeg (MegaCor, MegaCommon, MegaCustody)
● Etude et analyse des besoins du client « NBAD » pour le calcul des positions clients et marchés
● Analyse et développement sur MegaCor pour le Client « RBA »
● Développement de quelques rapports avec Jasper Report
● Test et adaptation de MegaCor pour accepter la langue Japonaise pour le client « Sumitomo »
● Support des applications MegaCommon et MegaCustody pour les clients « NBAD » et « RZB »
06/10 à 08/10 : Migration Technique de l’application MegaRetail pour le client CACEIS
● Migration de l’application MegaRetail, de la plateforme Palmyra version 10.8 vers la version 11.6 du Framework
● Migration, analyse et validation des modèles et des cycles de vie des instruments financiers
● Rédaction de spécifications techniques
● Migration et adaptation du code source suite aux changements des modèles
● Configuration de l’application
● Tests unitaires et d’intégration
● Rédaction de spécifications techniques
09/09 à 06/10 : Migration et validation des modèles des produits MegaCor, MegaCustody et MegaCommon (back office)
● Formation sur les marchés financiers
● Migration de la version 10.8 à la version 11 du Framework Palmyra
● Intervention sur MegaCor : application de tenue de position et de gestion des OST (opération sur titre)
● Création d’une CA (Corporate Action), une demande de changement d’une position titre, manuelle et automatique par message Swift
● Création et génération des instructions marchés et clients
● Calcul des positions et l’«entitlement»
● Développement d’un écran central de gestion du cycle de vie d’une CA
● Intervention sur MegaCommon : application qui maintient le référentiel et les données statiques de la banque et gère les processus relatifs :
● Développement de quelques use-cases des données de la banque)
● Développement d’écrans suite aux demandes du client RZB
● Intervention sur MegaCustody : application qui gère les processus de règlement livraison
● Développement de quelques use-cases
05/09 à 09/09 : Sécurisation et audit des applications de gestion de la baque ATB (Arabian Tunisian Bank)
Chef de projet VBA –Encadrement de 4 personnes
Projet : Audit, migration et développement des services d’administration, de gestion de droit et de reporting du système de la Banque ATB
● Recueil et structuration des données
● Rédaction des spécifications techniques
● Rédaction des comptes-rendus
● Gestion du planning des ressources
● Suivi des développements
● Chiffrage et encadrement d’équipe
● Organisation et animation des réunions
● Négociation des délais de livraison
● Accompagnement des développeurs dans les choix techniques
● Proposition d’architecture
● Migration des données de Access 97 à SQL Server 2008
● Installation
● Développement des services d’administration et d
09/06 à 05/09 : Conception, développement et support de la couche présentation des différentes versions du Framework Palmyra
Ingénieur d’étude & de développement Java/J2EE
● Modélisation et développement de la couche présentation du Framework Palmyra. Un Framwork de génération d’application J2EE prêtes à l’utilisation dans le secteur financier.
● Développement d’un outil Wizard pour créer des processus métiers.
● Internationalisation des applications générées
● Développement d’un outil de génération d’état basé sur l’outil Apache Fop, sur Xsl et Easy Chart pour la modélisation graphique
● Intégration de nouvelles libraires de présentation et de nouveaux composants (YUI, GWT, Flex, Action3)
● Encadrement de stagiaires (Java FX, Struts, Webservices)
Formation
2014 Certification ISTQB
2009 Certification Java2 Platform (Standard Edition 5.0)
Formation DBA: « SQL Server2008-Infrastructure and Development »
2006 Diplôme d’Ingénieur, Ecole Nationale d’Ingénieurs de Tunis (ENIT)
2003 Classes préparatoires, Institut Préparatoire aux Etudes d’Ingénieurs d’EL Manar
COMPÉTENCES
Développement J2EE, Java, XML, VBA, ActionScript, VB6, JavaScript, PL/SQL, webservices, Spring,
Ehcache, Velocity, Strusts, Spring\batch Hibernate, Tapestry, Elasticsearch, memcache,
liquibase, MVC, design Patterns, Velocity, UML, Lucen, CQRS
Testing Selenium(RC/Grid), WebDriver, TestLink, Junit4/TestNG, Jbehave, Cucumber, BMT,
TDD, BDD, DDT, POP, Mobile : Simulateur/émulateur, Jmeter, Gatling, Appium,
ReportPortal, extentReport, GraphWalker, EggPlan, Kobiton, SauceLab, BrowserStack
SGBD Oracle (9i/10g), MySQL (4/5), SQL Server (2005/2008), Access 97/ 2000, Hbase,
NongoDB
Web Servlet, JSP, XML/XSL/XSD, HTML, JS, CSS/CSS3, AJAX, GWT, YUI, XZUL, MXML,
Flex3, EAR, WAR, HTML5, NodeJS, Express, Ember, Angular, Bootstrap
Serveurs d’app WebLogic (8/9/10), Jboss (4), WebSphere (6.0/6.1), Tomcat 6, NodeJs
Build et Intégration Hudson, Jenkins, Bugzilla, Perforce, Jira, Source safe, SVN, Git, Maven, Ant.
Méthodologie Test Agile, Behaviour Driven Development, Test Driven Development, Data Driven Testing,
Key Word Testing, Step By Step, Model Base Testing, Page Object Model
Outils Eclipse, Kibana, Confluence, graphite, Snowplow, IEJ, Sublime, ServiceNow, XRAY, JIRA
LANGUES Anglais Fluent