Concevoir un système transactionnel concurrent pour une plateforme de paiement mobile
Aperçu
En quoi consiste ce défi.
Analysez des violations de cohérence et refondez un gestionnaire de transactions pour une plateforme de paiement mobile. Obtenez un certificat vérifiable.
Le scénario
Cette startup opère dans l'écosystème du paiement mobile ouest-africain, où les transferts entre particuliers représentent un volume critique. Basée à Dakar, elle traite des transactions entre 8 pays de la zone UEMOA, avec des pics de charge prévisibles mais intenses. La confiance des utilisateurs dépend directement de l'exactitude des soldes — toute anomalie visible entraîne une perte de clients vers les concurrents.
Le brief
Ce que vous ferez, et ce que vous démontrerez.
Le gestionnaire de transactions effectue des débits et crédits en deux opérations séparées sans atomicité, et l'absence de structure concurrente adaptée provoque des violations de l'invariant de conservation des soldes sous forte charge.
Earning criteria — what you'll demonstrate
- Concevoir un système concurrent combinant passage de messages et mémoire partagée pour garantir des invariants de cohérence
- Utiliser des structures de données concurrentes (tables de hachage concurrentes, files bloquantes) adaptées à un scénario transactionnel à haut débit
- Implémenter des opérations atomiques composées (débit + crédit) sans blocage mutuel dans un environnement multi-fils
- Évaluer quantitativement les compromis entre correction, débit et latence dans un système concurrent
- Appliquer le principe de conception « sans course » (race-free design) à un problème métier concret
Adéquation au programme
Où cela s'inscrit dans votre cursus.
Renforce les mêmes compétences que celles attendues par votre diplôme.
Cursus associés bientôt disponibles.
Compétences
Les compétences que vous démontrerez.
Chacune apparaît sur votre certificat vérifié.
- Code Reading
Apply code reading to solve real industry problems and demonstrate production-level capability.
- Architecture Diagrams
Apply architecture diagrams to solve real industry problems and demonstrate production-level capability.
- Data Pipeline Design
Apply data pipeline design to solve real industry problems and demonstrate production-level capability.
- Concurrent Data Structures
Apply concurrent data structures to solve real industry problems and demonstrate production-level capability.
- Message Passing
Apply message passing to solve real industry problems and demonstrate production-level capability.
- Thread Synchronization
Apply thread synchronization to solve real industry problems and demonstrate production-level capability.
Débouchés
Les métiers auxquels ce défi vous prépare.
De vrais intitulés. De vraies passerelles de compétences. Choisissez celui qui se rapproche le plus de votre trajectoire.
Les parcours de carrière que ce défi construit
Métiers de référenceIngénieur de Systèmes Distribués
La conception d'un système transactionnel concurrent à haut débit avec garanties de cohérence correspond directement aux défis quotidiens d'un ingénieur systèmes distribués dans le secteur financier.
Ce défi renforce
- concurrent-data-structures
- message-passing
- architecture-diagrams
Site Reliability Engineer
L'évaluation quantitative de performance sous charge, la vérification d'invariants en production et la conception pour la résistance aux pannes sont des compétences centrales du métier de SRE.
Ce défi renforce
- data-pipeline-design
- thread-synchronization
- concurrent-data-structures
Ingénieur Backend
La refonte d'un service transactionnel critique avec des contraintes de débit et de cohérence prépare au développement backend de systèmes de paiement et de plateformes financières à grande échelle.
Ce défi renforce
- code-reading
- concurrent-data-structures
- message-passing
Ingénieur de Sécurité
La détection de violations d'invariants financiers et la conception de systèmes résistants aux conditions de course développent une sensibilité à la sécurité transactionnelle essentielle en ingénierie de sécurité.
Ce défi renforce
- code-reading
- thread-synchronization
- data-pipeline-design