CGB

Description

CGB ou Crédit Général Bank est le deuxième projet de l’année que nous avons eu à développer en AP. Cette fois-ci, l’objectif était de travailler sur une API REST bancaire qui permettait de gérer des virements simples et des virements par lots, à destination des entreprises clientes comme Galaxy Swiss Bourdin. Le but était d’améliorer les services existants et de garantir un fonctionnement fiable et sécurisé.

Au début, on nous fourni une base de projet en Java avec Spring Boot, mais contrairement à GSB, nous avions beaucoup à réaliser nous-mêmes. Il a donc fallu reprendre pas mal de choses de zéro : configuration de l’environnement, mise en place de tests unitaires avec MockMVC, ajout de la documentation avec JavaDoc mais surtout ajouter de nouvelles fonctionnalités telles que la gestion des comptes bénéficiaires.

Missions réalisées : 

• Mission 1 – Test et amélioration de l’API de virement simple : Mise en place de l’environnement, test des endpoints via Postman, ajout de logs, documentation du code et des retours API. 
• Mission 2 – Validation des IBAN : Implémentation d’un validateur d’IBAN conforme aux normes européennes avec gestion d’exceptions personnalisées pour les formats incorrects. Création d’une classe singleton + tests unitaires. 
• Mission 3 – Développement de l’API de virements par lots : Cette partie m’a demandé pas mal de réflexion, notamment sur l’architecture REST à mettre en place. J’ai développé un endpoint capable de recevoir plusieurs virements en une seule requête et de les exécuter de façon asynchrone. J’ai aussi géré les cas d’échec (transaction non aboutie) pour qu’elles soient enregistrées et éventuellement rejouées plus tard. 
• Mission 4 – Génération de rapports et notifications : Développement d’un système de rapports JSON consultables à la demande et envoi d’une notification de résumé par email à l’utilisateur. 
• Mission 5 – Sécurisation de l’API : Implémentation d’un système d’authentification sécurisé via OAuth2, avec gestion des droits d’accès et des comptes utilisateurs autorisés.

Référentiel BTS SIO

• B1.1 – Gérer le patrimoine informatique
• B1.2 – Répondre aux incidents et aux demandes d’assistance et d’évolution
• B1.3 – Développer la présence en ligne de l’organisation
• B1.4 – Travailler en mode projet
• B1.5 – Mettre à disposition des utilisateurs un service informatique
• B1.6 – Organiser son développement professionnel