Amir - Techlead fullstack Java/react/devops
Ref : 200316M003-
Domicile
75013 PARIS
-
Profil
Développeur, DevOps, Architecte (39 ans)
-
MobilitéTotalement mobile
-
StatutEn portage salarial
-
Tarif Journalier MoyenVoir le tarif
-
Tech Lead Fullstack sur le projet CETELEM (Grand public)
BNP Paribas Personal Finance2021 - aujourd'huiLe projet consiste à faire une refonte du site CETELEM.FR qui propose des souscriptions en ligne aux différents types de
crédit tel que le crédit personnel, crédit renouvelable et rachat de crédit.
Architecture & développement :
> Mise en place d’une nouvelle architecture de l’application :
» participer aux différents ateliers avec l’architecte de la tribe, le PO et PM afin de définir l’architecture cible.
» Collecter avec l’aide des business analyste le besoin métier et concevoir les diagrammes des séquences et
modèle de données
» Analyse de l’application legacy afin de définir les différents enabler et dépendances externes
> Poc de la solution avec une architecture micro service, des API Restful et un SPA (single page application)
» mise en place d’un archetype maven (template projet) afin de générer des microservices springboot en
architecture hexagonal
» développement d’un template projet SPA en React
» déclaration des API du poc sur un API management afin de les exposer sur Internet
» déploiement des composants sur un environnement de test (cloud IBM) afin de valider le POC
> Implémentation de la solution (7 développeurs, PO, SM, 2 BA, QA)
» développement des service REST en java et Springboot.
» développement du parcours Front en React
» Intégration de la bibliothèque interne des composants design system
» Conception des API Restful
» Publication et sécurisation des API
» Création du schéma de la base de données et mettre en place la gestion des migrations avec liquibase
> Contextualisation de l’application afin de mutualiser les service Rest et le Front pour différentes marques
» Contextualiser le front react afin de charger/supprimer des écrans selon le type de vendeur ou produit
» Contextualiser le front react afin charger dynamiquement un nouveau thème selon le type de vendeur
» Contextualiser les service backend afin d’activer ou désactiver des fonctionnalités selon type vendeur
Devops :
> Création des différents environnements sur un cloud interne (IBM Cloud)
> Mise en place de la chaine CI/CD avec jenkins, maven, docker, sonar, iqserver, helm, kubernetes
> Mise en place d’un process de gestion des packages avec Umbrella Chart Helm
> Mise en place des dashboard de monitoring avec splunk et Dynatrace
> Définir la stratégie des tests de performances et analyser les rapports des tirs afin d’anticiper les problèmes
> Analyse des incidents de production
Mots clés : Java, SpringBoot, React, Typescript, API Rest, postgresql,Jwt, Kubernetes Docker, Helm,Dynatrace,IBM
cloud,Jenkins, sonar, maven, Gitlab, Liquibase, Agile@Scale, Scrum -
Tech Lead Fullstack sur le projet MDW (My Digital Workplace), 150k users
SOCIETE GENERALEJan 2018 - Jan 2020Architecture & développement :
> Migrer vers une nouvelle architecture micro-service :
» proposer une architecture micro-service pour remédier aux différents problèmes d’une application monolithique
» Mettre en place une API Gateway afin de router, contrôler et sécuriser les appels API vers les micro-service.
» Intégrer un système de trace distribuée pour les différents micro-service et centraliser ces traces dans un serveur ZipKin
pour consulter et analyser le workflow des requêtes client.
» Intégrer et configurer un circuit breaker au niveau des sideCar
» Externaliser la configuration des différents micro-serivce de l’architecture dans un serveur de configuration
» Développer un service Discovery pour les différents micro-service de l’application
> Développement des nouvelles fonctionnalités en NestJs et React
» Revue du code
» Migration vers l’utilisation des Hooks
» participer à la mise en place de Redux coté front et NestJs coté Back
> Mettre en place un système de sécurisation des API REST :
» Conception et développement d’un micro-service d’autorisation avec JWT.
» Définir et élaborer les rôles, les permissions et la structure du token JWT
» Intégrer la validation du token JWT au niveau des API
> Animation et organisation des DOJO et des sessions de revue de code.
Devops :
> Définir avec l’équipe la stratégie de la chaine CI & CD
> Créer et configurer les job Jenkins pour la CI & CD
> Analyser et identifier les dépendances externes du système afin de les monitorer et mocker les données.
> Automatiser l’installation et la configuration des composants de la plate-forme avec Ansible.
> Développer et maintenir les Playbook et les jobTemplate Ansible
> Encadrer l’équipe afin de respecter le processus de release
> Configurer et monitorer les services et pod Openshift.
> Définir et développer avec l’équipe les tests de monter en charge et de performance avec Jmeter
> Analyse et identification des rootCause des incidents de production via les metric grafana et les logs.
> Gestion des incidents de production et coordination avec les tours de contrôle de la DSI.
> Animer les taskforces des incidents de production et assurer le rétablissement du système
> Rédiger les postMortem
Mots clés : Java, SpringBoot, React, NestJs, Redux, Spring Cloud Gateway, AWS S3, AWS EC2, Docker, Resilience4j, Eureka,
ZipKin, Sleuth, Spring Cloud Config, Service Mesh, sideCar, microservice, JWT, API REST, OpenShift, Jenkins, GitHub, Ansible. -
Tech Lead/Devops sur le projet SBC (SG Business & communities), 150k users
SOCIETE GENERALEJan 2016 - Jan 2018Architecture & développement :
Mots clés : Java, SpringBoot, API REST, Oauth2, GitFlow, OpenAPI, Swagger, swagger-maven-plugin, PostgreSQL, Oracle, Kibana, Logstash, Elasticsearch, Grafana, InfluxDB, Telegraf, Ansible, Jenkins, microcks, GitHub, Nexus, Apache Httpd, Tomcat, Jmeter. Robot FrameWork, Tyk, SeleniumGrid
> Conception, développement des nouveaux modules en Java et Spring
> Revue et mise en place de la standardisation des API Rest
» Mettre en place les Golden Rules pour la gestion des versions des API
» Générer la documentation des API legacy avec les annotations de swagger API et le plugin Maven
swagger-maven-plugin
» Publier les Api sur le portail Api « SG Market » avec la documentation associée.
» Organiser des workshops pour revisiter les API legacy et faire le rework nécessaire afin de respecter les
standard Rest.
» Réaliser un Poc d’une Api Gateway avec l’Outil Open source Tyk
» Mettre en place un nouveau process de développement des nouvelle API avec la spécification OpenAPi et
microcks
» Rework sur les API afin de trouver et corriger les failles de sécurité en suivant les recommandations de
OWASP API Security
> Revue de code et animation des DOJO
Devops :
> Définir et Mettre en place la chaine CI/CD avec Ansible, Jenkins, Nexus et GitFlow
> Développer des playbook Ansible afin d’automatiser l’installation des composants
> Créer et configurer les job Jenkins pour la CI & CD.
> Analyser la performance et la résilience de l’application avec Jmeter et Grafana.
> Participer à l’audit de sécurité de la plate-forme
> Release management et gestion d’incidents de production
> Proposer et réaliser une stack open source afin de monitorer en temps réel la plate-forme en utilisant Telegraf,
Grafana et influxDB
> Préparer et cordonner la migration de la base de données de Oracle vers PostgreSql
> Mettre en place une stack technique open source ELK pour centraliser et analyser les logs (Elasticsearch,
Logstash et Kibana)
> Automatiser les tests de non-régression et d’acceptance avec RobotFramework, jenkins et seleniumGrid
> Tunning des serveurs et de la plate-forme après avoir faire les tests de montée en charge avec Jmeter.
. -
Ingénieur études et développement Java JEE sur le projet TURAN
CARDIWEBJan 2015 - Jan 2016Développement de la solution Turan pour Unibail-Rodamco qui permet de gérer des espaces commerciaux via une application
ots clés : Java JEE 7, Spring 3, Angular JS 1, Grunt, Jquery, JavaScript, Jersey 2, MySql, Tomcat, Jira, Git, Maven
web et exposer des web services REST pour une application mobile iOS.
> Développement des couches DAO avec Spring Data
> Développement de la partie front-office avec Angular JS
> Développement des couches métiers en utilisant Spring 3
> Développement des RESTful Web Service avec Jersey 2
> Configuration de la gestion d’accès avec Spring Security
> Configuration et mise en place du Grunt (build, déploiement, minify js)
M -
Ingénieur études et développement Java JEE sur le projet e-Portal
INGENICO2013 - 2015Développement du module « user management » de la solution e-Portal pour Ingenico à destination des
Mots clés : Java JEE 7, Spring 3, Struts 1, Spring MVC, JPA 1.0, Hibernate 3, PostgreSQL 9.1, JBossAS 7.2, JBoss EAP 6, Apache httpd, REST, Jersey, OpenSSL, Maven, Jenkins, Jira, SVN
supermarchés, chaînes de magasins spécialisés, hôtels et restaurants, stations-service…
> Conception et rédaction des spécifications
> Estimation et planification des tâches
> Revue du code
> Gestion et optimisation des dépendances Maven
> Développement du composant de gestion des utilisateurs, en mode portail
> Développement des couches métiers, utilisation de Spring 3
> Développement de Webservices REST
> Migration de JBoss AS 5.1 à JBoss AS7.2
> Migration de Framework Struts 1.1 à la version 1.2
> Configuration et mise en place d’un mécanisme de double authentification avec OpenSSL TLS V1.2 pour un
serveur d’application JBoss
> Mise en place de la haute-disponibilité en mode Cluster avec Red-Hat, Pacemaker et Heartbeat
> Développement et génération des RPM (Red Hat Package Manager)
> Mise en place des tests unitaires et tests d’intégration -
Ingénieur études et développement Java JEE sur le projet Iperflex
CEGELEC Secure / Vinci Energies2010 - 2013perflex est un système de contrôle d’accès qui offre des fonctionnalités anti-intrusion, vidéo surveillance et supervision.
> Spécifications et documents de conception
> Développement Java JEE avec Spring 3
> Mise en place de tests unitaires avec Junit
> Migration JBoss 4.3/JBoss AS 5.1
> Tunning JBoss AS 5.1
> Mise en place de tests de performance avec le framework Neotys
Mots clés : Java JEE, Spring 3, BlazeDS, Flex 3, Oracle 11g, EJB 3, WebServices SOAP, JBoss 5.1.0, JPA 1.0 (Hibernate 3)
-
Certification OCJP Oracle Certified Java Programmer 6
2013 -
Ingénierie des systèmes distribués
Ecole Nationale d’ingénieurs de SFAX (ENIS)2007 -
Institut Préparatoire aux Etudes d'Ingénieur
2005 -
Baccalauréat Scientifique
2004