Réalisé avec Le Collectif 40

Lonn

SymfonyVue.jsTypeScript
Lonn, capture d'écran 2 de l'interface (Symfony, Vue.js)
Lonn, capture d'écran 3 de l'interface (Symfony, Vue.js)

Contexte

SaaS B2B pour centres de bien-être, avec un module de gestion du planning des salariés côté manager (façon pré-paie, règles horaires) et un système de prise de rendez-vous côté client final. Le MVP a été construit en équipe via Le Collectif 40, et j'étais responsable de l'architecture backend, du modèle de données et des choix techniques côté serveur.

Mon approche

Le cœur du projet côté serveur, c'était de poser une archi qui tient : modéliser une base propre pour faire cohabiter deux scopes, le planning RH et les RDV clients, sans les mélanger, puis exposer tout ça via une API BFF Symfony sur mesure. J'étais en échange continu avec le client, qui faisait office de product owner, et chaque arbitrage de scope, chaque règle métier, était discuté avant d'être tranché. On a gardé une discipline MVP stricte : trancher ce qui ne rentre pas dans la première version plutôt que de livrer en retard.

  • Archi backend et modèle de données pensés pour faire cohabiter deux scopes, le planning des salariés et la prise de RDV client, sans qu'ils s'écrasent l'un l'autre.
  • Une API BFF Symfony pensée pour un seul client, le front Vue, avec agrégation des données, des contrats clairs et les validations métier centralisées côté serveur.
  • Le scope MVP a tenu : on a tranché fonctionnalité par fonctionnalité pour poser des bases propres, prêtes à être étoffées ensuite.

Stack & choix techniques

Symfony était demandé par le client, un cadre solide pour porter de la logique métier. PostgreSQL pour la persistance, avec un ORM mature et des garanties relationnelles utiles dès qu'on mélange RH et calendaire. Côté front, Vue et TypeScript étaient développés par un autre membre de l'équipe, avec un contrat d'API stable et typé pour éviter qu'un front duplique la logique métier.

SymfonyVue.jsTypeScript

Résultat & apprentissages

Le MVP a été livré, sans plus de bruit que ça : l'enjeu, c'était de poser les bases proprement et de tenir le scope. Pour moi, c'est le projet où la discipline du « qu'est-ce qui ne rentre pas dans la V1 » a été au cœur du brief, et où l'archi posée au départ a directement conditionné la vitesse de delivery.

Décrivez-moi votre projet, je vous dis honnêtement si je peux vous aider.

Développeur fullstack freelance senior. J'aide les startups et les équipes tech à construire ce qu'il faut, et à le construire bien.

Basé à Chambéry, full remote ou déplacement selon le projet. Lyon, Grenoble, Annecy, Paris…