Symfony Live Paris 2025

Du partage, de la DX et une conf qui tombe à pic !
Les 27 et 28 mars, j’ai eu la chance d’assister au Symfony Live Paris 2025, un événement que j’attendais avec impatience, et je n’ai pas été déçu. L’organisation était au top, l’ambiance conviviale, et surtout : des rencontres passionnantes avec des développeurs Symfony venus de toute la France. C’est toujours un plaisir de sortir de sa bulle et d’échanger autour des bonnes pratiques, des galères partagées, et des retours d’expérience concrets.
Ce que j’ai beaucoup aimé aussi, c’est le fil rouge de cette édition : la DX, ou Developer eXperience. Honnêtement, je ne connaissais pas ce terme avant l’événement — ou du moins je ne mettais pas ce mot-là sur ce que je vis au quotidien. La DX, c’est cette attention qu’on porte à la qualité de l’expérience de développement : une API agréable, des outils bien pensés, de la documentation claire, du feedback rapide… bref, tout ce qui fait qu’on prend plaisir à coder. Et chez Symfony, on sent que c’est une vraie priorité.
Parmi toutes les conférences que j’ai pu suivre, il y en a une qui a particulièrement retenu mon attention : “Asynchrone avec Symfony Messenger et Mercure” par Grégoire Pineau. Ce sujet m’a parlé tout de suite, car justement, chez le client où j’interviens en ce moment, on va bientôt devoir gérer des traitements longs en arrière-plan tout en gardant l’utilisateur informé de l’avancement. Bref, cette conf tombait à pic.
Une conf concrète et bien rythmée
Grégoire a commencé par un constat que je partage complètement : il est fréquent d’avoir des actions utilisateur qui déclenchent des traitements lourds — génération de PDF, export CSV, appels à des API lentes… Et si on ne fait rien, ces actions bloquent tout et détériorent l’expérience utilisateur.
C’est là qu’intervient Symfony Messenger. L’idée, c’est de déléguer ces tâches à des workers, qui les traiteront en arrière-plan. On gagne en réactivité côté frontend, et on évite de bloquer des requêtes HTTP pendant 10 secondes.
Mais une fois le traitement terminé… il faut bien notifier l’utilisateur. Et là, Grégoire nous a montré comment Mercure permet de pousser des mises à jour en temps réel directement dans l’interface utilisateur, via du Server-Sent Events. J’ai trouvé ça hyper fluide : on envoie un message via Messenger, et une fois le traitement fini, on publie une mise à jour Mercure que le frontend reçoit instantanément. Magique.
Démo live et partage de code
Grégoire nous a présenté une démo en live, très claire et bien rythmée. Il a également mis à disposition le code source sur GitHub, ce qui est super pratique pour rejouer l’exemple chez soi. On sent qu’il maîtrise son sujet et qu’il a pensé à tous les détails.
Je suis ressorti de cette conf avec des idées très concrètes pour notre projet : utiliser Messenger pour déléguer les exports, brancher Mercure pour informer l’utilisateur en direct, et le tout avec une configuration assez simple à mettre en place grâce à Symfony.