Développeur PHP / Symfony
Yomeva
août 2024 - octobre 2024
Contexte :
Suite à ma mission chez Emeria, développement en interne d&rsquoun outil de matching intelligent entre CV et offres d&rsquoemploi, au sein d'une équipe de 3 développeurs. J'étais en charge de créer une librairie PHP afin de faciliter l'interrogation des API d'OpenAI.
Réalisations :
Création d'un projet PHP &ndash un bundle basé sur certains composants Symfony &mdash et publication sur packagist afin de pouvoir l'installer via Composer : ********-ai-bundle
Mise en place d&rsquoune configuration de bundle &ndash pour les credentials OpenAI &ndash en utilisant les best practices Symfony (Configurator, Loader...).
Contexte :
À la suite de ma mission chez Emeria, développement en interne d&rsquoun outil de matching intelligent entre CV et offres d&rsquoemploi, au sein d'une équipe de 3 développeurs. J'avais la charge de créer une librairie PHP afin de faciliter l'interrogation des API d'OpenAI.
Réalisations :
&bull Création d'un projet PHP &ndash un bundle basé sur certains composants Symfony &mdash et publication sur packagist afin de pouvoir l'installer via Composer : ********-ai-bundle
&bull Mise en place d&rsquoune configuration de bundle &ndash pour les credentials OpenAI &ndash en utilisant les best practices Symfony (Configurator, Loader...).
&bull Création d&rsquoun ensemble de services & modèles PHP représentant les endpoints et les payloads attendus par OpenAI, et permettant aux développeurs utilisant le bundle de construire leurs appels de manière structurée.
PHP 8+, Symfony 7+, MySQL, PHPUnit, Docker, Makefile, Git, GitLab, Svelte
Développeur full stack
Emeria
janvier 2024 - juillet 2024
Contexte :
À la suite de ma mission chez Emeria, développement en interne d&rsquoun outil de matching intelligent entre CV et offres d&rsquoemploi, au sein d'une équipe de 3 développeurs. J'avais la charge de créer une librairie PHP afin de faciliter l'interrogation des API d'OpenAI.
Réalisations :
&bull Création d'un projet PHP &ndash un bundle basé sur certains composants Symfony &mdash et publication sur packagist afin de pouvoir l'installer via Composer : ********-ai-bundle
&bull Mise en place d&rsquoune configuration de bundle &ndash pour les credentials OpenAI &ndash en utilisant les best practices Symfony (Configurator, Loader...).
Contexte :
Après avoir tenté de trouver un post de développeur iOS SwiftUI junior, je suis finalement retourné sur le marché du PHP. Mon ESN Yomeva m&rsquoa trouvé cette mission, qui concernait le backend API/admin d&rsquoune application d&rsquoétat des lieux de logements, au sein de la DSI. Seul sur le projet mais pas tout à fait : un développeur mobile s&rsquooccupait de l&rsquoapp, et un lead nous épaulait sur les deux.
Réalisations :
&bull Correction d&rsquoun bug de longue date se trouvant dans le parser XML des data legacy, en découpant l&rsquoalgorithme en 2 parties, ce qui a permis d&rsquoéliminer des corrections manuelles récurrentes.
&bull Développement d&rsquoune fonctionnalité d&rsquoimport/export JSON des données. La difficulté résidant dans le fait que ce sont des formulaires dynamiques (donc les champs sont décrits en base au lieu d&rsquoêtre composés de colonnes SQL traditionnelles). Cette fonctionnalité a permis de transférer les configurations de formulaires entre environnements (qualif &harr prod) en gérant tous les cas : création, mise à jour, suppression douce. Le résultat a été la suppression des erreurs humaines liées à la configuration des formulaires, et un gain de temps énorme.
&bull Développement des pages admin manquantes, base en twig mais certaines features dynamiques en React (via Stimulus).
&bull Debugging courant en utilisant Datadog pour traquer les erreurs en prod, et en buildant l&rsquoapp mobile en local et fouillant le React Native quand le besoin s&rsquoen faisait sentir.
PHP 8+, Symfony 6+, PostgreSQL, Docker, React, Stimulus, Git, GitLab, React Native, Datadog
Développeur iOS SwiftUI
Pause professionnelle
septembre 2022 - juin 2023
'ai tout d'abord suivi une formation en ligne « 100 days of SwiftUI » pour apprendre à coder dans l'écosystème Apple : ********
Puis, j'ai développé une petite application personnelle de mise en pratique de la formation : ********
Swift, SwiftUi
Développeur full stack puis Lead développeur backend
Bimpli
avril 2018 - novembre 2021
Contexte :
Au sein d&rsquoune équipe technique comportant le CTO et entre 6 et 8 développeurs, développement de nouveautés et bugfix de legacy sur une plateforme de comité d&rsquoentreprise. Une trentaine de micro-services et une demi-douzaine de bundles maison regroupés dans un repo unique.
Après plus d&rsquoun an en tant que prestataire Yomeva, je suis recruté en interne en tant que lead backend, afin d&rsquoofficialiser ce qui s&rsquoétait mis en en place naturellement : rigueur, pédagogie, et pertinence des code review.
Réalisations :
&bull Mise en place des règles métiers concernant les subventions utilisées dans le panier de la marketplace. La complexité des configurations en base était élevée, beaucoup d&rsquoobjets différents pouvant influer sur le prix final (réductions d&rsquoorigines différentes, cumulables ou pas, codes promos, cartes cadeau, frais de ports avec ou sans forfaits etc.). Utilisation massive de tests unitaires pour vérifier les combinatoires des cas possibles.
&bull Bien que lead backend, afin de pallier le manque de ressources front, j&rsquoai beaucoup travaillé sur la SPA du panier de la marketplace, qui était en VueJS 2 (+ VueX + VueRouter), et qui devait utiliser les règles métiers susnommées.
&bull Une fois lead, j&rsquoai été responsable de nombreuses mise en production, on livrait 1 ou 2 fois par semaine.
&bull En passant d&rsquoexterne à lead interne, j&rsquoai fait beaucoup plus de code review, et j&rsquoai eu des retours très positifs, que ce soit du CTO ou des autres développeurs dont je regardais le code.
&bull Les produits de la marketplace étaient indexés dans Algolia, j&rsquoai :
o Implémenté la modification à la volée des requêtes Algolia via un proxy sous Symfony
o Créé des widgets VueJS de tri et de filtre, se basant sur les Algolia Vue Components
PHP 7.1 / 8.1, Symfony 3 / 4 / 5 / 6, MySQL, VueJS 2, PHPUnit, Redis, Algolia, Google cloud platform, Bootstrap 4, Tailwind, Docker, Git, GitHub, Crontab, PHPCS, Webpack, ES Lint, Shell scripting
Développeur full stack
La Centrale
février 2018 - mars 2018
Au sein d&rsquoune équipe d&rsquoune demi-douzaine de développeurs dont 2 leads, j&rsquoai fait de la correction de bugs sur le legacy du site de vente de voitures, ainsi que des réunions préparatoires pour découper en tickets la refonte en Symfony. J&rsquoai mal évalué l&rsquoobsolescence du projet lors des entretiens, j&rsquoai été très déçu, j&rsquoai donc demandé à Yomeva de changer de mission.
Développeur full stack
Next Interactive
octobre 2017 - janvier 2018
Appartenant à Altice (à l&rsquoépoque BFM / RMC / SFR etc.), Next Interactive possède le site 01net. Sur ce projet j&rsquoétais le seul développeur, et il s&rsquoagissait de corriger les bugs dans l&rsquoadministration du site pour les journalistes. Le code était dans un état très dégradé, que ce soit les versions ou l&rsquoarchitecture, et comme l&rsquoobjectif n&rsquoétait pas une refonte, mais simplement de faire survivre l&rsquoexistant, j&rsquoai fini par demander une autre mission à Yomeva.
Développeur full stack
BNP Paribas partners for innovation
septembre 2014 - août 2017
Contexte :
Après 5 ans passés sur la technologie BMC Remedy, le chef du pôle PHP annonce monter une équipe Symfony de 5 développeurs pour créer une nouvelle application, je demande à l&rsquointégrer en mettant en avant mon expérience sur des projets personnels en PHP. Je découvre à cette occasion le framework, et la méthode Scrum.
Réalisations :
&bull Forte montée en compétence globale grâce aux best practices enseignées via Symfony (concepts comme l&rsquoinjection de dépendances, l&rsquoarchitecture MVC)
&bull Grâce à notre PO qui était très qualifié, j&rsquoai pu m&rsquoaméliorer grandement sur :
o La capacité à livrer par étape, de livrer des choses qui fonctionnent avec peu de features et de construire dessus
o Décider ce qui est important, donc livrer les attentes du client et pas les features qui font envie aux développeurs
PHP 5.4, Symfony 2 / 3, jQuery, Bootstrap, Shell scripting
Développeur BMC Remedy
BNP Paribas partners for innovation
novembre 2009 - août 2014
Premier emploi après mes études, j&rsquoai rejoint cette joint-venture BNP-IBM afin de mettre le pied à l&rsquoétrier. La technologie BMC est propriétaire et c&rsquoest à mi-chemin entre le code et le design à la main. Assez peu de lien avec le développement web, même si cela pouvait générer des pages.