2025–26
PMS Connect
PMS Connect est une Progressive Web App de réseau social conçue pour les professionnels de santé — fil d'actualité en temps réel, messagerie, support hors ligne — actuellement en maintenance.
- Role
- Fullstack Developer
- Period
- Jun 2025–Jul 2026
- Type
- Web PWA + GraphQL API + admin dashboard (3 surfaces)
- Team
- Solo
- Status
- En maintenance
Context
Les professionnels de santé avaient besoin d'un réseau dédié à leur usage plutôt que d'une app sociale générique supposant une connectivité constante. PMS Connect combine un frontend PWA, une API GraphQL et un dashboard de modération en un seul produit.
The hard part
Garder le fil en temps réel connecté de façon sécurisée, tout en faisant fonctionner la même application entièrement hors ligne avec des notifications push. Le temps réel et le hors-ligne tirent dans des directions opposées, et les deux devaient fonctionner ensemble.
Decisions
- 01Remplacement d'une méthode de chargement de données liées peu efficace par une approche de regroupement — a empêché le serveur de planter sur les grands groupes ; coût : plus de complexité au départ dans cette partie du code.
- 02Correction d'un bug où deux personnes rejoignant un groupe en même temps pouvaient créer des doublons — corrigé avec une mise à jour de base de données plus sûre ; coût : une logique de requête légèrement plus complexe.
- 03Migration de la base de données de MongoDB vers PostgreSQL, avec ajout d'une couche de cache — gain de fiabilité et de rapidité ; coût : l'effort de migration lui-même.
- 04Suppression de la connexion par session au profit de jetons — supprime une catégorie de risque côté serveur ; coût : révoquer un accès est un peu plus difficile qu'avant.
- 05L'application refuse désormais de démarrer si une configuration requise est manquante, au lieu de se replier silencieusement sur une valeur par défaut non sécurisée — sacrifie un peu de confort de développement pour fermer un vrai risque de sécurité.
Stack
- Frontend
- Next.js 15, Apollo Client, GraphQL-WS, next-pwa (Workbox), Firebase, Formik, better-auth
- Admin
- Refine, React Router v7, Apollo/GraphQL, i18next, Tailwind CSS v4
- Backend
- NestJS 10, Apollo Server 4, Prisma 7, PostgreSQL, Redis, DataLoader, class-validator
- Infra
- PostgreSQL, Redis, AWS S3, Firebase (push, admin)
Links + next
Finaliser le dashboard admin (encore largement à l'état d'ébauche) et rétablir le monitoring avant de sortir le projet de maintenance.