Aller au contenu
Tous les travaux
BFT Group · Développeur Backend

Core banking pour les institutions de microfinance

Développement et évolution d'OpenCBS, plateforme de core banking basée sur Apache Fineract, pour des institutions de microfinance et des banques de la zone UEMOA.

OpenCBS est une plateforme de core banking basée sur Apache Fineract, utilisée par des institutions de microfinance et des banques. Je contribue à son développement et à son évolution : les modules qui déplacent l'argent, et la comptabilité que le régulateur lira ensuite.

Le métier avant le code

Opérations de caisse, gestion des guichets, flux de trésorerie, opérations clients : chacun de ces besoins arrive formulé dans le langage de l'agence, pas dans celui du système. L'essentiel du travail se fait avant la première ligne de code — analyser ce que l'institution fait réellement, puis le traduire en modèles de domaine qui tiennent face aux règles du métier, selon les principes du DDD plutôt qu'en aplatissant tout en tables.

Caisses, coupures et comptabilité

Je développe les modules de gestion des caissiers et des guichets, ainsi que le suivi des coupures monétaires : combien de quelle coupure se trouve dans quelle caisse, et ce qui a changé de main. En aval se trouve la comptabilité financière conforme au SYSCOHADA, la norme applicable dans la zone UEMOA. La conformité n'est pas une couche de reporting ajoutée à la fin : elle contraint d'emblée ce que le modèle de domaine peut représenter.

Interopérabilité avec OpenERP

La plateforme ne vit pas seule. Je personnalise et intègre OpenERP pour assurer son interopérabilité avec le core banking, notamment pour les modules de comptabilité, de gestion interne et de reporting financier — ce qui suppose de s'accorder sur ce qu'est une transaction dans deux systèmes conçus séparément.

Rester maintenable

Au-delà des fonctionnalités, je participe aux revues de code, à l'amélioration continue de la base de code et à la structuration des services. La plateforme est déployée chez chaque client sous forme de microservices : la modularité n'est donc pas une préférence esthétique, elle détermine la part du système qu'il faut comprendre avant de pouvoir changer quoi que ce soit sans risque.