Développeur Fullstack Senior avec plus de 7 ans d'expérience en développement web, je suis déterminé, persévérant et toujours prêt à apprendre et à partager mes connaissances. Mon objectif est de mettre à profit mon expertise pour contribuer à la réussite de votre projet en atteignant vos objectifs et en assurant la satisfaction du travail bien fait.
CESI Alternance, Rouen, France
2016 - 2018
3 semaines en entreprise, 1 semaine en formation
IUT du Havre, Le Havre, France
2015 - 2016
Stage de 3 mois
Tourville-sur-Pont-Audemer, France
2013 - 2015
Stage de 14 semaines
- Bibliothèque : React.js (hooks, Redux, Context API), React Hook Form, React Query, Apollo Client, Next-Intl, ShadCn, Zod
- Framework : Next.js
- Styling : Tailwind CSS, Styled Components, ShadCn, Storybook
- Langages : HTML, CSS, JavaScript, TypeScript
- Tests : Jest, Testing Library
- Environnements : Node.js, NestJS
- Bases de données : PostgreSQL, MySQL, MongoDB, Prisma
- API : REST, GraphQL, Apollo GraphQL
- Sécurité : JWT, OAuth, SSO
- Outils : Docker, CI/CD (GitLab, Azure DevOps, GItHub Actions), Google Cloud Platform, AWS, Vercel, Serverless Framework
- Méthodologies : Agile (Scrum, Kanban, Scrumban), Atomic Design, Git Flow, GitHub Flow
- Gestion de projet : JIRA, Confluence, Slack, Notion, Trello
- Versionning : Git, GitHub, GitLab
- Optimisation et conformité : SEO, RGPD
Course à pied et trail, tennis de table, padel, randonnée en montagne, musculation
Découvrir le monde, les cultures et les paysages
Aventures avec mon Shiba Inu, pêche, jardinage
Impression 3D, projets DIY (borne d'arcade, photobooth, pincab, ...), rénovation de ma maison, drone
Développeur Fullstack Senior
React - Next.js - Node.js - TypeScript
- Tylia Invest - Solutions d'investissements alternatifsCDI
- Lead Frontend DeveloperJuil. 2023 - Aujourd'hui
- Rôle de Lead : Encadrement des développeurs juniors par le partage de connaissances (tech talks, pair-programming, conseils), et participation aux décisions techniques stratégiques. Mise en place de bonnes pratiques de développement (code review, tests unitaires, CI/CD). Mise en œuvre d'une stack technique complète pour le développement d'un portail investisseur.
- Automatisation et Dockerisation : Dockerisation de la stack technique et automatisation des processus de développement avec la création d’une CI/CD, et la synchronisation entre Jira, Slack et Gitlab. Génération de types TypeScript à partir de la spécification OpenAPI. Implémentation de feature flags avec Unleash pour une gestion flexible des fonctionnalités en production. Déploiements automatisés via Terraform pour les environnements de QA, Staging et Production. Utilisation du reverse proxy Traefik pour sa configuration dynamique et automatique pour notamment gérer le routage des services Docker.
- Intégration frontend : Intégration de maquettes Figma sur Next.js 14 (App Router) en utilisant une approche Atomic Design avec TailwindCSS, ShadCn, React Hook Form, StoryBook, Next-Intl et Zod.
- Développement API : Création de routes API avec NestJS pour supporter les fonctionnalités de l'application.
- Méthodologies Agiles : Participation active aux rituels agiles (poker planning, daily meetings, sprint backlog) avec les outils Jira et Notion.
- Services Cloud : Utilisation des services de Google Cloud Platform (Storage, Build, Run, SQL) pour le déploiement et la gestion de l'infrastructure.
- Tests et Qualité : Écriture de tests unitaires avec Jest et React Testing Library pour assurer la qualité et la fiabilité du code. Création de tests automatisés via Selenium (tests E2E).
- Développement SSO : Conception et implémentation d'un système de Single Sign-On (SSO) pour simplifier et sécuriser l'authentification des utilisateurs entre deux plateformes.
- Portail Investisseur : Développement d’un portail investisseur multi-tenant, intégrant des stories et des tests unitaires pour chaque composant développé pour assurer la maintenabilité et l'évolutivité du code.
- Logs : Mise en place de Datadog pour un meilleur monitoring des applications.
- Silae - Solutions de paie et RHCDI - 4 mois
- Fullstack Developer Symfony / PHP / JavaScriptFév. 2023 - Mai 2023
- Ajout de fonctionnalités : Développement de nouvelles fonctionnalités sur la plateforme Silae et correction des anomalies remontées par le support.
- Gestion de projet et versioning : Utilisation d'Azure DevOps pour le versioning et la gestion de projet, travail en squads agiles de 5 développeurs. Mise en œuvre de Git et Git Flow pour le versioning.
- Dockerisation : Dockerisation de l'ensemble du projet (incluant MySQL, Nginx et PHP FPM) pour une portabilité optimale. Intégration de Sentry pour la supervision et la gestion des erreurs.
- Qualité et fiabilité du code : Utilisation de PHPStan, CS-Fixer et PHPUnit pour assurer la qualité et la fiabilité du code.
- Automatisation & CI/CD : Création d'un Makefile pour les tâches courantes et mise en place de pipelines via Azure pour des déploiements automatiques.
- Documentation : Élaboration d'une documentation interne structurée en fichiers markdown pour faciliter l'accès à l'information.
- Développement frontend : Création de scripts avec JavaScript (ES6) pour améliorer l'interface utilisateur.
- Agence web - Dernier CriCDI - Projet de 8 mois
- La Fabrique by Credit AgricoleJuin 2022 - Jan. 2023
- Frontend Developer React.js / TypeScript
- Objectif : Développement d'une solution SaaS de facturation. Développement frontend de Kolecto, un outil SaaS destiné aux dirigeants de TPE/PME pour simplifier la gestion et le paiement des factures.
- Composition de l'équipe : 1 chef de projet, 1 CTO, 1 lead frontend, 1 lead backend, 4 développeurs frontend et 2 développeurs backend.
- Gestion de projet : Nous avons adopté une approche Scrumban avec des sprints de 2 semaines, incluant des rituels tels que daily écrit, poker planning, rétrospectives et démos clients.
- Mise en place de TailwindCSS : Mise en place de TailwindCSS et Tailwind Styled Components dans le projet en les rendant compatibles avec StoryBook.
- Création de presets : Création de presets TailwindCSS pour avoir un thème pour la marque blanche (Crédit Agricole) et un autre thème pour la marque Kolecto.
- Développement de composants React : Développement de composants React (utilisation de TypeScript) et liaison avec StoryBook.
- Formulaires dynamiques : Développement de formulaires dynamiques via React Hook Form.
- Utilisation de React Query : Utilisation de React Query pour consommer l'API Rest, bénéficier des états des requêtes ainsi que du caching.
- Implémentation d'outils AWS : Implémentation des outils AWS Cognito et Amplify pour la connexion, inscription et mot de passe oublié.
- Intégration frontend : Intégration frontend à partir de maquettes Figma réalisées par des designers.
- Module de paiement Klarna : Implémentation du module de paiement Klarna pour le règlement de factures et recharger son portefeuille.
- Tests unitaires : Utilisation de Jest et Testing Library.
- Agence web - Dernier CriCDI - Projet de 2 mois
- Nos Quartiers ont du TalentMai - Juin 2022
- Backend Developer PHP / Laravel
- Objectif : Modernisation et amélioration d'un back-office existant conçu avec Laravel. L'association Nos Quartiers ont du Talent s'engage activement à créer des passerelles entre les entreprises et les jeunes diplômés issus de milieux modestes. Dans ce contexte, j'ai été sollicité pour renforcer et optimiser leur système d'information.
- Dockerisation : Dockerisation du projet Laravel pour assurer la portabilité et la cohérence des environnements de développement.
- Administration des bases de données : Administration des bases de données à travers la mise en place de seeds et migrations.
- Opérations CRUD personnalisées : Conception d'opérations CRUD personnalisées pour répondre précisément aux besoins spécifiques de l'association.
- Agence web - Dernier CriCDI - Projet de 4 mois
- Groupe CarrefourJan. - Avr. 2022
- Lead Developer Fullstack Symfony / Sylius / PHP
- Objectif : Développement des sites E-commerce Bio c’ Bon et So.Bio.
- Rôle de lead : Dans le cadre de cette mission, j'ai occupé le rôle de lead developer, responsable de l'encadrement de développeurs juniors sur les technologies Symfony et Sylius et de la mise en place des bonnes pratiques.
- Dockerisation : Dockerisation du projet Sylius pour une meilleure gestion des environnements de développement.
- Élaboration de la logique métier : Conception des entités Doctrine, mise en place des fixtures et migrations et développement des contrôleurs et services associés.
- Optimisation de la recherche : Intégration d'Algolia pour optimiser la recherche de produits.
- Modularité du site : Création de blocs réutilisables via Twig pour une meilleure modularité du site.
- Gestion des ressources : Création et personnalisation des pages du back-office pour une gestion efficace des ressources (CRUD).
- API REST sécurisée : Mise en place d'API Platform pour l'exposition d'API REST sécurisée avec JWT.
- Gestion des fichiers : Utilisation du SDK AWS S3 pour gérer l'upload de fichiers sur un bucket.
- ESN - ProxiadCDI - Projet de 3 mois
- VINCI ConstructionNov. 2021 - Jan. 2022
- Fullstack Developer React.js / TypeScript / Apollo GraphQL
- Objectif : Réalisation d'une Progressive Web App (PWA) pour la gestion des bétons sur les chantiers.
- Conception GraphQL : Conception et mise en œuvre de resolvers pour GraphQL au sein d'Apollo Server.
- Consommation de l'API GraphQL : Consommation de l'API GraphQL sur l'application frontend via Apollo Client.
- Méthodologies Agiles : Adoption de méthodologies agiles incluant des réunions quotidiennes, des sessions de planning poker, et des cycles de sprints.
- Optimisation de composants : Création et optimisation de composants en s'appuyant sur Material UI.
- Création d'un back-office : Création d'un back-office avec React Admin en qualité de développeur frontend.
- ESN - ProxiadCDI - Projet de 2 semaines
- AXA FranceOct. 2021
- Frontend Developer React.js
- Objectif : Amélioration de l'expérience utilisateur de l'application.
- Amélioration UX/UI : Intégration de maquettes Figma pour améliorer l'interface utilisateur et ajout de nouvelles fonctionnalités pour faciliter l'utilisation de l'application.
- ESN - ProxiadCDI - Projet de 1 mois
- Proxiad GroupeOct. 2021
- Fullstack Developer React / PHP
- Amélioration UX/UI sur le back-office : Intégration frontend de maquettes Figma pour améliorer l'interface utilisateur du back-office.
- DocuSign : Ajout de champs dans le modèle DocuSign pour la génération des ordres de mission via l'API DocuSign.
- ESN - ProxiadCDI - Projet de 1 mois
- DigiSoftSept. 2021
- Backend Developer PHP / Symfony / API Platform
- Objectif : Développement d'une API avec authentification JWT consommée par Next.js.
- Création de routes API : Création de routes API pour les développeurs frontend React sur l'API Platform.
- Authentification : Mise en place de l'authentification avec Auth0 et JWT pour renforcer la sécurité.
- Tests : Test des appels API avec Postman pour assurer la qualité.
- Agence web - D-ImpulseCDI
- Fullstack Developer React / Next.js / Node.js / SymfonyJan. 2020 - Sept. 2021
- Objectif : Développement de sites internet sur-mesure pour TPE/PME et grands groupes.
- Rôles : Sur ce poste, j'ai occupé plusieurs rôles : Développeur fullstack, lead developer et développeur frontend. J'ai eu l'opportunité de travailler sur des projets variés : sites vitrines, e-commerce, blog, back-office, etc.
- Technologies principales : Symfony 4, Symfony 5, Next.js, Strapi, PHP 7, PHP 8, React, TypeScript, GraphQL, MongoDB, et Node.js.
- Méthodologie : Travail en Agile avec participation aux dailies et planning poker. Utilisation d'Asana et EverHour pour la gestion de projet.
- Environnement de développement : Dockerisation des projets pour un développement local simplifié et déploiements sur Amazon EC2.
- Versionning : Git, Git Flow, et GitLab.
- API & Backend : Création d'APIs via Strapi, Symfony Skeleton, et API Platform. Mise en place d'authentifications JWT et d'une recherche avancée grâce à Algolia. Conception de back-offices avec EasyAdmin et Strapi.
- Projets marquants :
- Site web pour une franchise de salles de sport développé avec Next.js, Material UI, TypeScript, GraphQL et Strapi.
- Sites e-commerce dans le secteur de la distillerie et de la restauration via Sylius (framework e-commerce Symfony).
- Site web pour un concessionnaire automobile avec un back-office pour la gestion des contenus. Ce projet a été réalisé avec Symfony et EasyAdmin. La complexité de ce projet résidait dans la gestion des stocks des véhicules via des flux externes (XML, JSON, MongoDB) et la mise en place d'un système de LOA / LLD avec calculateur de mensualités et de remboursements anticipés via Cetelem.
- Frontend : Intégration à partir de maquettes Figma, développement de composants React réutilisables documentés avec Storybook.
- Maintenance : Interventions sur divers projets, dont Laravel, Grav et Sylius, avec un focus sur l'optimisation et la résolution de bugs.
- Agence web - ForeachCodeCDI
- Fullstack Developer PHP / Symfony / Javascript / React NativeAvr. 2017 - Déc. 2019
- Objectif : Développement d'une trentaine de sites internet sur-mesure avec Symfony pour des TPE/PME et grands groupes (site vitrine, blog, e-commerce, plateforme sur-mesure, ...).
- Développement Web : Conception de sites sur-mesure via Symfony 3 & 4, avec les versions 5.6 à 7.0 de PHP.
- Intégration frontend : Intégration de maquettes avec HTML5, JavaScript (ES6), jQuery, Bootstrap (3 & 4), CSS3 et Ajax.
- E-mailing : Conception de templates de mails et optimisation de la délivrabilité.
- Fonctionnalités Symfony : Développement de bundles, commandes personnalisées et de CRUD.
- Mobile : Développement d'une application de todolist en React Native, déployée sur le Play Store.
- E-commerce : Intégration de solutions de paiement (Stripe, Klik and Pay, SystemPay, Payline) et mise en place d'un module de réservation pour un hôtel.
- Conformité et Sécurité : Mise en conformité RGPD avec diverses mesures dont l'anonymisation et la gestion des cookies.
- APIs : Consommation de l'API Instagram pour afficher les derniers posts d'un compte utilisateur sur un site web.
- SEO : Mise en place et optimisation rigoureuse du SEO pour garantir une visibilité optimale sur les moteurs de recherche (données structurées JSON-LD, plan du document hn, optimisation des metas, sitemap, etc.).
- Optimisation & Performance : Amélioration des performances web suite à des analyses via GTmetrix et PageSpeed Insights.
- Développement & Déploiement : Utilisation de VM sous Debian, déploiements via SSH et SFTP, et versioning avec Git et Gitlab.
- Projets marquants :
- Site web pour une MMA avec système de paiement en ligne
- Site web pour un hôtel avec module de réservation, multilingue, galerie photos, back-office et blog
- SPREAD - Plateforme de marketing client tout-en-unStage de 3 mois
- Développeur full-stack PHPJuin - Août 2016
- Intégration de Twig : Intégration du moteur de template Twig dans le back-office SPREAD développé en PHP 5.6, afin de bénéficier d'une syntaxe claire pour les développeurs frontend et facilement maintenable, ainsi que d'une séparation claire entre la logique métier et la présentation.
- Développement de templates Twig : Développement de templates Twig personnalisables en créant des macros, blocks et embeds.
- Proof of Concept (POC) : Création d'un POC pour évaluer les plateformes de paiement en ligne Stripe et Braintree. Développement de prototypes PHP pour Stripe et Braintree, incluant des fonctionnalités telles que l'enregistrement de cartes bancaires, le paiement et le remboursement.
- Club Pongiste Quevillais - Club de tennis de table de Le Petit-QuevillyMission freelance - 3 mois
- React.js Developer2024
- Développement sur-mesure du site web : Utilisation des technologies React.js, Next.js, TailwindCSS, React Hook Form, Zod, GraphQL, NestJS et Forest Admin.
- Développement d'un blog pour les actualités du club : Les administrateurs du club peuvent publier des articles sur le blog depuis l'interface d'administration Forest Admin.
- Contenus dynamiques : La totalité des contenus du site web est dynamique et gérée via l'interface d'administration Forest Admin.
- Gestion des membres et des équipes de compétition : Les administrateurs peuvent gérer les membres du club et les équipes de compétition depuis l'interface d'administration Forest Admin.
- ShopClop - Spécialiste en e-cigarettes, e-liquides & CBDMission freelance - 6 mois
- PrestaShop / React.js Developer2023
- Refonte du site web : Refonte du site web de ShopClop avec PrestaShop, en collaboration avec un designer pour l'intégration des maquettes.
- Développement d'un calculateur DIY pour e-liquides : Le client souhaitait un calculateur DIY pour les e-liquides afin de permettre aux utilisateurs de créer leurs propres recettes. J'ai donc développé un calculateur avec Next.js, TailwindCSS, ShadCn, React Hook Form et Zod en utilisant les formules de calcul de la nicotine et des arômes. Ce calculateur est hébergé sur le PaaS Vercel et sera intégré au site web de ShopClop.
- Vitaliplay - Plateforme numérique de santéMission freelance - 1 mois
- Fullstack Developer React.js / Next.jsJuin 2023
- Diagnostic SEO: Les robots d'indexation de Google ne pouvaient pas lire le contenu des pages du site web réalisé avec Next.js. J'ai donc analysé le code source et le code React pour identifier les problèmes et les corriger.
- Next SEO : Implémentation de Next SEO pour la gestion des balises meta et Open Graph.
- Amélioration de l'UX/UI : Il y avait des incohérences dans le design et l'ergonomie du site web. J'ai donc proposé des améliorations pour rendre l'expérience utilisateur plus agréable.
- Social Kitchen - Gestion de réseaux sociauxMission freelance - 2 mois
- Frontend Developer React.jsDéc. 2022 - Jan. 2023
- Intégration et développement frontend : Intégration des maquettes Figma sur la plateforme SaaS Social Kitchen en utilisant React.js et Material UI.
- Consommation d'API : Consommation d'une API REST avec Axios pour récupérer et afficher des données dynamiques sur l'application.
- Tests d'API : Utilisation de Postman pour tester les appels API et s'assurer de la qualité de l'application.
- Méthodologies Agiles : Travail en agilité, avec des réunions de daily stand-up, des sessions de planning poker, rétrospectives et des sprints avec l'équipe de développement.
- Ville de Grand-CouronneMission freelance - 6 mois
- WordPress Developer2022
- Refonte du site web : Refonte du site web de la ville de Grand-Couronne avec WordPress, en collaboration avec un designer pour l'intégration des maquettes.
- Social Gones - Réseau social et actualités sportivesBénévolat - 4 ans
- Fullstack Developer Symfony / React Native2014 - 2018
- Création d'un réseau social : Développement d'un réseau social en PHP avec authentification (connexion/inscription), espace membre, chat, liste d'amis, messagerie privée et timeline.
- Site web pour les actualités de l'Olympique Lyonnais : Conception et développement d'un site web Symfony pour la diffusion des actualités de l'Olympique Lyonnais, avec un système de gestion de contenu personnalisé pour les rédacteurs et les modérateurs. Obtention de la promotion du site web sur OL TV et de la recommandation du président du club.
- Interface d'administration : Création d'une interface d'administration personnalisée pour faciliter la gestion des publications et la modération des commentaires.
- Partenariats : Prospection de partenaires et mise en place de partenariats pour renforcer la visibilité du site et offrir des lots à la communauté.
- Gestion de communauté : Gestion d'une communauté de 65k followers sur Facebook, 15k followers sur Twitter et 21k followers sur Instagram, avec publication régulière de contenu engageant et réponse aux commentaires et messages privés.
- Interviews : Participation à des interviews de joueurs et d'anciens joueurs de l'Olympique Lyonnais.
- Hébergement : Hébergement du site web sur un serveur dédié.
- Extension Google Chrome : Développement d'une extension Google Chrome pour un accès rapide aux actualités de l'OL depuis le navigateur.
- Application mobile : Développement d'une application mobile React Native dédiée aux actualités de l'OL.
- WeeMove - Réseau social du monde de la nuitBénévolat - 1 an
- Modérateur2013 - 2014
- Gestion quotidienne de la modération : Gestion quotidienne de la modération des publications et des commentaires sur le site internet de la communauté du monde de la nuit, avec un volume de plusieurs centaines de posts par jour.
- Respect de la charte éditoriale : Respect strict de la charte éditoriale du site internet en supprimant tout contenu inadapté ou non conforme aux règles de la communauté.
- Surveillance de la qualité : Surveillance régulière de la qualité des contenus publiés et proposition d'améliorations pour favoriser l'interaction entre les membres.
- Collaboration avec les administrateurs : Collaboration avec les administrateurs du site internet pour résoudre les problèmes de modération les plus complexes.
- Switch Radio 76 - Webradio associativeBénévolat - 1 an
- Développeur web PHP2012 - 2013
- Création du site internet : Création du site internet d'une webradio associative en PHP avec mise en place du player Radionomy, d'un espace membre et d'un chat.
- Démarchage et négociation de partenariats : Démarchage et négociation de partenariats avec des acteurs locaux (discothèques, Laser Game, Temple du foot, etc.) pour obtenir des avantages pour les auditeurs et promouvoir la webradio.
- Recrutement de DJ's bénévoles : Recrutement de DJ's bénévoles pour animer la grille de programmes de la webradio.
- Organisation d'événements : Organisation d'événements pour promouvoir la webradio, comme des soirées en discothèque ou des événements sportifs avec des partenaires locaux.
- Promotion lors d'événements : Tenue d'un stand lors du concert de Keen'v, Lio et Dave à Alizay pour promouvoir la webradio, avec distribution de flyers et d'affiches pour augmenter la notoriété de la webradio auprès d'un public large.