Aller au contenu
MAD
Lead Backend · Élève-ingénieurÉcole Supérieure Polytechnique de Dakar

MouhamadouAbib DRAME

Je construis ce qui ne se voit pas et qui ne doit jamais céder.

Dakar, Sénégal

Lead Backend chez BATOUCLOUD SARL et élève-ingénieur à l'École Supérieure Polytechnique. Je conçois les API et tout ce qui tient derrière : authentification, modèle de données, traitements par lots.

Projets sélectionnés

Sélection
01

SenAlgo

Environnement de développement pour l'algorithmique en pseudocodeProjet personnel · 2026

Écrire un algorithme sur une feuille ne dit pas s'il est juste. SenAlgo permet de le taper, de l'exécuter et de le dérouler pas à pas en regardant les variables changer, puis de le traduire en Python pour faire le pont avec un vrai langage. La vérification de types se fait à deux niveaux : ce qui est certainement faux empêche le programme de démarrer, ce qui est douteux mais défendable se contente d'un avertissement.

  • Dart
  • Flutter
  • GitHub Actions
02

alphaRedis

Moteur de stockage clé-valeur en mémoire, écrit en CProjet académique · ESP · 2026 · Équipe de 5

Un SGBD NoSQL de type clé-valeur, sans aucune dépendance et sans recourir à une seule structure de la bibliothèque standard : tableau dynamique, table de hachage et listes chaînées sont réimplémentés. Le hachage djb2 et le chaînage séparé assurent un accès en O(1) amorti, le tableau doublant de taille au-delà d'un facteur de charge de 0,75. Les listes doublement chaînées gardent un pointeur de tête et de queue, ce qui rend les quatre opérations d'extrémité O(1) strict et non amorti.

0commandes · SET, LPUSH, EXPIRE, INFO…
0lignes de C · aucune dépendance
  • C
  • Makefile
  • Structures de données
03

MCP Docker Assistant

Serveur MCP pour piloter Docker depuis un assistant IAProjet personnel · 2025

Serveur Model Context Protocol local qui donne à un assistant IA dans VS Code la main sur Docker : cycle de vie des conteneurs, images, stacks Compose, logs, statistiques temps réel et cartographie réseau. Les opérations destructrices, suppression de volume et nettoyage système, passent par une confirmation dédiée.

0outils exposés · observation, action, maintenance
  • Python
  • MCP
  • Docker
04

TranspoBot

Assistant de transport conversationnel sur WhatsAppProjet académique · ESP · 2026 · Équipe de 3

Une plateforme complète servie par cinq conteneurs : une API FastAPI asynchrone, un bot WhatsApp, une interface web, MySQL pour les données et Redis pour les sessions et le cache. La couche d'intelligence n'est liée à aucun fournisseur : Gemini, Groq, Cerebras, GitHub Models et une instance Ollama auto-hébergée sont interchangeables, ce qui évite qu'une panne ou un changement de tarif chez l'un mette le service à l'arrêt.

0services conteneurisés · dev et production séparés
0fournisseurs de modèles · interchangeables
  • Python
  • FastAPI
  • MySQL
  • Redis
  • Docker
  • Node.js
  • Pydantic
05

Geste Main

Contrôle de la souris par gestes de la mainProjet personnel · 2025

Application Python qui remplace la souris par la webcam : détection des points de la main via MediaPipe, puis traduction des gestes en actions système. L'intérêt est moins la démonstration que la chaîne complète, de la capture vidéo au pilotage du curseur.

  • Python
  • MediaPipe

Expérience

Parcours professionnel
Depuis juillet 2026

Lead Backend

BATOUCLOUD SARL · Dakar, Sénégal
  • Spring Boot
  • API REST
  • MySQL
  • GitLab
13 mai au 27 juin 2025

Stage de fin de cycle · Développement backend

InTouch · Dakar, Sénégal
  • Conçu et développé une API REST de planification de paiements pour une fintech présente dans 27 pays africains : les ordres simples ou récurrents, quotidiens, hebdomadaires ou mensuels, s'exécutent à la date prévue sans intervention humaine.
  • Implémenté la reprise sur échec : chaque exécution est historisée avec son statut, réessayée jusqu'à un nombre maximal de tentatives, puis signalée par courriel une fois ce plafond atteint.
  • Traité le cas limite qui fait perdre de l'argent : une planification supprimée entre sa création et son échéance est marquée annulée au lieu d'être exécutée. La suppression est logique, donc réversible.
  • Sécurisé les accès par Keycloak et OAuth2 avec jetons JWT, et documenté l'API sous OpenAPI pour la rendre intégrable par les autres applications métier.
  • Spring Boot
  • Spring Batch
  • Spring Security
  • Quartz
  • Keycloak
  • OAuth2 & JWT
  • MySQL
  • Hibernate
  • Swagger
  • GitLab

Formation

Diplômes
Oct. 2025 à oct. 2028

Diplôme d'Ingénieur de Conception (DIC) · Informatique

École Supérieure Polytechnique de Dakar

Cycle ingénieur en trois ans, en cours. Le tronc commun mêle génie logiciel et fondamentaux systèmes : la conception d'applications y côtoie l'électronique embarquée et le traitement du signal.

  • Algorithmique & complexité
  • Structures de données
  • POO & Java
  • Génie logiciel
  • Patrons de conception
  • Systèmes & réseaux
  • Télécommunications
  • Systèmes embarqués
Oct. 2023 à juil. 2025

Diplôme Universitaire de Technologie (DUT) · Informatique

École Supérieure Polytechnique de Dakar

Formation en deux ans couvrant la chaîne complète, du modèle de données à l'application web déployée.

  • PHP & MySQL
  • Java
  • JavaScript, HTML, CSS
  • Conception de bases de données
  • UML & Merise
  • Développement Android
  • Apache & hébergement
2023

Baccalauréat série S1 · Mention Assez bien

Lycée Maba Diakhou BA

Série à dominante mathématiques et sciences physiques.

Compétences

Stack

Langages

  • Java
  • Python
  • JavaScript
  • Dart
  • PHP
  • C
  • SQL

Backend & API

  • Spring Boot
  • Spring Security
  • Spring Batch
  • Quartz
  • FastAPI
  • API REST
  • OAuth2 & JWT
  • Intégration de modèles IA
  • Swagger

Web & mobile

  • React
  • Flutter
  • HTML & CSS
  • Android Studio

Données & modélisation

  • MySQL
  • Conception de bases de données
  • UML
  • Merise
  • StarUML

Outils & méthodes

  • Git & GitHub
  • GitLab
  • Keycloak
  • Apache
  • Scrum
  • ClickUp

Pas de barres de pourcentage : un niveau ne se mesure pas, il se prouve dans les projets ci-dessus.

Références

Recommandations

Mamoudou Mamadou SOW

Maître de stageInTouch

Ma façon de travailler

Approche

Je pars de la contrainte, pas de la stack. Sur un produit, les décisions intéressantes sont des arbitrages déjà posés avant que quiconque n'ouvre un éditeur : ce qui peut être périmé, ce qui doit être exact, ce que l'utilisateur a le droit d'attendre.

Une page qui met quatre secondes à s'afficher n'a pas de design. On pose le budget d'abord, tout le reste rentre dedans.

J'écris du code que d'autres devront maintenir, donc j'optimise pour le second lecteur. Explicite plutôt que malin, ennuyeux là où ça peut l'être, précis là où la précision achète vraiment quelque chose.

Contact
MouhamadouAbibDRAME
Attrape les lettres