GF
Geoffrey Franz
Stack : React From Scratch & AWS Amplify

FEDE — Plateforme
Équivalences de Diplômes

Afin d'optimiser le traitement des dossiers et de garantir la qualité des candidatures, j'ai piloté la transition vers un service qualifié. J'ai développé une application React from scratch introduisant un verrou transactionnel et une validation documentaire automatisée, assurant l'intégrité des flux financiers et la conformité des justificatifs avant toute instruction.

Challenge Technique

Conception en autonomie d'une architecture transactionnelle cloud. L'enjeu résidait dans l'orchestration asynchrone entre le paiement sécurisé, le stockage des justificatifs sur AWS S3 et le moteur de notification, tout en garantissant une isolation totale des données et une persistance éphémère pour le traitement de l'emailing.

Composants Clés

Frontend SPA From Scratch

Développement d'un formulaire multi-étapes réactif. Gestion d'état complexe pour la validation progressive des dossiers étudiants.

Tunnel de Paiement & Webhooks

API Node.js sécurisée traitant les notifications de paiement en temps réel pour débloquer automatiquement le workflow de traitement.

CI/CD & DevOps

Automatisation du cycle de vie via AWS Amplify : déploiement continu depuis la branche main pour une production agile.

equivalences.fede.education/checkout

Finalisation de la demande

Étape 3 : Paiement et justificatifs

diplome_master.pdf (Uploadé vers SharePoint)
Frais d'équivalence 145.00 €
Transaction sécurisée par Webhook Node.js

Intégration API AWS

L'application pilote nativement les services AWS S3 via le SDK pour le stockage des pièces jointes. Ce pont technique garantit un flux de données sans persistance serveur et une purge automatisée, alignant performance et sécurité.

Workflow Asynchrone & Cloud

  1. 1

    React SPA

    Tunnel multi-étapes

  2. 2

    SharePoint

    Upload via Graph API

  3. 3

    Stripe webhook

    Consommé via API Node.js

  4. 4

    Mailing Engine

    Notifications

  5. 5

    AWS Amplify

    Hébergement & CI/CD

Ingénierie Frontend & UX

Architecture React "From Scratch"

Développement d'une application sans boilerplate, centrée sur la performance. J'ai conçu un state manager personnalisé pour gérer les données du tunnel de paiement et les validations complexes de formulaires en temps réel.

Mailing Hybride & Rétro-compatibilité

Optimisation du système de mailing pour inclure des pièces jointes dynamiques. J'ai implémenté un moteur conditionnel (Attachement vs Inline) pour moderniser les notifications sans casser les anciens process de réception.

Back-office & Cloud Logic

Déploiement Continu (CI/CD)

Mise en place d'un pipeline de livraison automatisé sur AWS Amplify. L'intégration du dépôt GitHub (branche main) permet des mises à jour instantanées et une gestion fluide des environnements de staging et production.

Sécurisation des Flux de Données

Mise en place d'un pont sécurisé entre le front React et AWS S3. Le stockage des justificatifs est géré de manière éphémère : les fichiers sont hébergés temporairement avec une politique de suppression automatique sous 48h, garantissant qu'aucune donnée sensible ne persiste au-delà du temps nécessaire au traitement administratif.

"Une plateforme robuste, agile et sécurisée, démontrant ma capacité à orchestrer des services tiers complexes dans un environnement moderne."

Ce que j'en ai retenu

Construire React from scratch change tout

Sans Create React App ni Next.js, chaque décision d'architecture est consciente. Gérer l'état d'un tunnel multi-étapes sans Redux m'a obligé à comprendre réellement le flux de données dans une SPA — pas juste l'utiliser.

Les webhooks ne se testent pas comme une API classique

Tester les webhooks Stripe en local (ngrok, événements simulés, ordre d'arrivée non garanti) m'a appris à traiter les systèmes asynchrones avec une logique d'idempotence — ne jamais supposer qu'un événement arrive une seule fois.

La sécurité des données n'est pas une feature optionnelle

Gérer des justificatifs de diplômes implique données personnelles, RGPD et durée de rétention. La suppression automatique sous 48h sur S3 n'était pas un détail technique — c'était une exigence légale pensée dès la conception.

Voir aussi

FEDE Intervenants — Symfony + Entra ID + AWS Voir tous les projets