Projet d’appui au système de santé (INAYA élargi)

Un Développeur d’applications web & Backend

Date limite : 1 juin 2026
Lieu : Nouakchott

 

République Islamique de Mauritanie

Ministère de la Santé

Projet d’appui au système de santé (INAYA élargi)

No de Prêt/Crédit/Don : P179558

AVIS A MANIFESTATION D’INTERET

RELATIF AU

Recrutement d’un Développeur d’applications web & Backend pour la digitalisation de la santé No. de référence: 03/PI/INAYA ELARGI élargi/2026

Le Ministère de la Santé de la République Islamique de Mauritanie a reçu un financement de l’Association internationale de développement (IDA), et a l’intention d’utiliser une partie du montant de financement de ce projet pour effectuer les paiements au titre du contrat suivant : Pour le Recrutement d’un Développeur d’applications web & Backend pour la digitalisation de la santé.

1. Contexte et objectif général

Dans le cadre de la modernisation du système de santé mauritanien, le Ministère de la santé vise à déployer un Système d’Information Hospitalier intégré (HIS) adapté aux environnements aux ressources limitées.

L’objectif est d’assurer une gestion complète des hôpitaux (administrative, clinique, logistique et financière), d’intégrer le Financement Basé sur la Performance (FBP), ainsi que des modules transversaux (ressources humaines, enquêtes de satisfaction, parc informatique/automobile, etc.).

Le/la développeur(se) recruté(e) travaillera à temps plein, basé à Nouakchott, avec des déplacements régions.

2. Missions principales

2.1 Développement et intégration du Système d’Information Hospitalier (HIS) – cœur

Module administratif & financier

  • Gestion des patients (identité, NSS, contact, tiers).
  • Facturation et recouvrement (tarifs, devis, reçus, avoirs).
  • Interface avec le FBP (génération d’indicateurs pour le paiement).
  • Tableaux de bord financiers (recettes/dépenses par service, taux d’impayés).

Module clinique

  • Dossier patient informatisé (DPI) avec chronologie médicale.
  • Prescriptions (médicaments, examens, actes) avec règles de sécurité.
  • Gestion des résultats biologiques et d’imagerie (intégration images).
  • Compte rendu d’hospitalisation et lettres de sortie

Planning & scheduling

  • Planification des ressources (lits, blocs opératoires, équipements).
  • Agenda médical partagé (disponibilité des médecins, infirmiers).
  • Système de rappels (SMS/email) pour les rendez-vous.

Archivage scanné

  • Numérisation et indexation (métadonnées : patient, date, type).
  • Recherche full-text sur documents scannés (OCR léger).
  • Gestion des durées de conservation (conformité légale).

Statistiques sophistiquées

  • Mortalité (standardisée, par pathologie, par service).
  • Comorbidité (indice de Charlson automatisé, regroupements).
  • Coûts par séjour, par pathologie, par patient.
  • Export pivotant (Excel, PDF, JSON) et dashboards dynamiques.

2.2 Financement basé sur la performance (extension & IA)

  • Calcul automatique des indicateurs FBP (quantité, qualité, équité).
  • Règles paramétrables (pondérations, seuils, périodes).
  • Module IA :
    • Détection d’anomalies dans les déclarations.
    • Prédiction des cibles à vérifier (audit intelligent).
    • Import/Export depuis/vers fichiers normalisés FBP.
  • Suivi des contre-visites et ajustement des paiements.

2.3 Enquêtes de satisfaction

  • Création de campagnes (communautaire, hospitalière).
  • Collecte hors ligne (tablette, mobile) + synchronisation.
  • Analyse automatique (NPS, scores par thème).
  • Génération de rapports comparatifs (par période, région, département, service).

2.4 Parc informatique & automobile

  • Inventaire complet (ordinateurs, serveurs, véhicules, consommables).
  • Suivi des maintenances préventives/correctives.
  • Alertes sur expiration de licences, garanties, visites techniques.
  • Affectation des équipements aux agents/services

2.5 Gestion des Ressources Humaines (GRH)

  • Annuaire structuré (compétences, diplômes, contrats).
  • Planification des présences/congés (plannings horodatés).
  • Paie avec intégration coût par service (utile pour FBP).
  • Évaluation annuelle avec objectifs personnalisés.

2.6 Interopérabilité & asynchrone

  • API REST FHIR (niveaux 1 à 3) pour échanges avec laboratoires, pharmacies, assureurs.
  • Bus asynchrone (RabbitMQ / Redis Streams) pour :
    • Désengorger le système rural.
    • Gérer les pics (campagnes de vaccination).
    • Notifications en temps réel (alertes biologiques, rappels).

2.7 Sécurité & conformité

  • Chiffrement des données sensibles (AES-256 en base, TLS 1.3 en transit).
  • Traçabilité complète (logs d’accès, modifications).
  • Anonymisation pour recherche (pseudonymisation réversible).
  • Gestion fine des rôles (RBAC : médecin, infirmier, admin, auditeur).

2.8 Optimisation pour environnements contraints

  • Mode dégradé avec réplication différée (serveur rural ↔ central).
  • Compression des médias (WebP, HEVC, OPUS) pour stockage local.
  • Auto-ajustement de la qualité d’image selon bande passante.
  • Journalisation allégée en zone insulaire.

2.9 Production et documentation

Cette section définit l’ensemble des productions attendues du développeur durant la mission, ainsi que les standards de documentation applicables. Tous les livrables sont la propriété du maître d’ouvrage.

2.9.1 Production logicielle

2.9.1.1 Code source

  • Tout le code produit sera versionné dans un dépôt Git central (GitLab ou Gitea auto-hébergé).
  • Branches : main (production), dev (intégration), feature/*, hotfix/*.
  • Règles de commit : messages conventionnels (type: sujet) – ex: feat: ajout moteur indicateurs FBP.
  • Revue de code obligatoire avant fusion dans dev (minimum 1 relecteur technique).

2.9.1.2 Architecture et conception

  • Diagrammes UML (obligatoires pour chaque module livré) :
    • Diagramme de classes (modèle de données)
    • Diagramme de séquence (au moins un flux critique par module)
    • Diagramme de cas d’utilisation (vue d’ensemble)
  • Documentation d’architecture : schéma global des microservices, flux asynchrones, points d’interopérabilité (FHIR, bus)

2.9.1.3 Base de données

  • Modèle relationnel documenté (diagramme MCD/MLD).
  • Scripts de migration versionnés (ex: Alembic pour Python, Flyway pour Java).
  • Politique d’indexation documentée par requête critique.
  • Stratégie de sauvegarde / restauration (script fourni).

2.9.1.4 Base de données (NoSQL et cache)

  • Scripts de gestion Redis (cache, sessions, files).
  • Modélisation MongoDB pour documents scannés (indexation, recherche).

2.9.2 Documentation technique

  • Guide pour ajouter un nouvel indicateur FBP (étape par étape).
  • Procédure pour connecter un nouvel objet connecté (télésanté).
  • Guide de reprise du code par un autre développeur.

2.9.3 Documentation utilisateur (multilingue)

Langues obligatoires : Français, Arabe.
Langues optionnelles : Anglais, langues nationales (Pulaar, Soninké, Wolof) – à prioriser pour les modules patients.

3. Profil recherché

3.1 Formation / Qualifications

  • Formation minimale : Bac + 3 (Licence) en Informatique, Génie logiciel, ou équivalent
  • Le candidat doit justifier d’un niveau minimal Bac + 3 dans l’un des domaines suivants :
    • Informatique
    • Génie logiciel
    • Systèmes d’information
    • Développement d’applications
    • Équivalent reconnu (diplôme étranger homologué ou attestation de niveau)

3.2 Compétences techniques

3.2.1 Langages de programmation

  • Scripts : Python (obligatoire), Ruby ou PHP (un au moins)
  • Portables : Java ou Scala ou Groovy (un au moins)
  • Microservices : Rust ou Go ou Haskell (un au moins)

3.2.2 Bases de données

  • Relationnelles : PostgreSQL (obligatoire), MariaDB/MySQL, SQLite
  • NoSQL : Redis (cache/file), MongoDB/ CouchDB (documents scannés)
  • GIS : PostGIS

3.2.3 Architectures & interopérabilité

  • RESTful API, microservices
  • Messagerie asynchrone : RabbitMQ ou Kafka
  • Standards santé : FHIR, HL7 (au moins connaissance opérationnelle)

3.2.4 Conteneurisation & déploiement

  • Docker + Docker Compose
  • Connaissance de base de Kubernetes (optionnel, apprécié)

3.2.5 Tests & qualité

  • Pytest (Python), JUnit (Java), ou RSpec (Ruby)
  • Selenium ou Playwright (tests end-to-end)
  • Locust ou k6 (tests de charge)

3.2.6 DevOps & monitoring

  • CI/CD : GitLab CI ou GitHub Actions
  • Logging : ELK (Elasticsearch, Logstash, Kibana) ou Loki + Prometheus
  • Gestion des secrets : Vault (ou équivalent)

3.2.7 Frontend (complémentaire)

  • React.js ou Vue.js (pour interfaces utilisateur et PWA rurales)

3.2.8 Environnements cibles

  • Linux : Debian, Ubuntu, RedHat, AlmaLinux, Rocky Linux
  • Mini-serveurs ruraux (Raspberry Pi, Intel NUC, anciens PC)

3.2.9 Méthodologie & outils transversaux

  • UML (diagrammes de classes, séquence, cas d’utilisation)
  • Git (avec stratégie de branches)
  • Code assisté par IA (GitHub Copilot, DeepSeek, Codeium) – autorisé sous relecture humaine
  • AGILE (Scrum ou Kanban)

3.3 Expériences

3.3.1 Expérience générale (obligatoire)

  • 3+ ans (Minimum 3 ans) de développement backend/full-stack.
  • Conception et déploiement de microservices en production.
  • Utilisation avérée d’architectures asynchrones (message broker, queues, workers).
  • Conteneurisation et orchestration de base (Docker)

3.3.2 Expérience spécifique - Santé (indispensable)

  • Participation à au moins un projet de DPI, HIS, ou système d’information hospitalier.
  • Connaissance des standards FHIR ou HL7 v2.x
  • Gestion de données de santé – anonymisation, consentement, journalisation
  • Financement Basé sur la Performance (FBP)
  • Avoir développé ou maintenu un moteur de calcul d’indicateurs (notation, scores composites).
  • Connaissance des logiques de vérification (audit, contre-visite, abattement).
  • Implémentation de flux d’import/export avec données agrégées FBP.

Condition obligatoire – Attestation FBP

Le candidat doit justifier d’au moins une expérience avérée dans le domaine du Financement Basé sur la Performance (FBP) appliqué à la santé.

Preuves acceptées (au moins une des trois) :

  1. Attestation professionnelle signée par un employeur ou un maître d’ouvrage (hôpital, ONG, ministère, projet de développement, entreprise, … etc) décrivant clairement le rôle du candidat et les fonctionnalités FBP développées ou maintenues;
  2. Liens vers un livrable technique (dépôt de code, documentation d’API, module FBP) avec accès consultable par le recruteur ;
  3. Déclaration sur l’honneur (dans le dossier de candidature) détaillant le projet FBP, complétée par une référence technique vérifiable (contact d’un responsable technique).

3.3.3 Expérience terrain (environnements contraints)

  • Travail avec bande passante réduite ou intermittente.
  • Adaptation d’applications pour mini-serveurs ruraux (Raspberry Pi, NUC, anciens PC).
  • Mise en place de réplication différée ou « offline first ».

3.3.4 Expérience transversale utile

  • Tournant en UML (au moins cas d’usage, séquence, classes).
  • Méthodologie AGILE (Scrum/Kanban) – daily, rétrospective.
  • Formation utilisateur rédaction de guides, sessions pratiques.

3.4 Langues

Français (courant), Arabe (courant), Anglais (atout)

4. Livrables attendus

  • Code source documenté (dépôt Git, accès projet).
  • Modules HIS conformes aux spécifications (admin, clinique, planning, archivage, stats).
  • Module FBP intégré (calculs, IA, import/export).
  • Modules d’enquête, GRH, parc informatique/automobile.
  • Passerelles d’interopérabilité (FHIR/HL7).
  • Plans de test et résultats.
  • Manuel d’administration et guide utilisateur multilingue.
  • Rapports mensuels d’avancement.

5. Durée et conditions d’exécution

Lieu de résidence : Basé à Nouakchott

Déplacements : Plusieurs régions de Mauritanie à prévoir (Analyses, tests terrain, formation des utilisateurs, déploiement)

Disponibilité : Temps plein (40 heures par semaine)

Durée du contrat : 

  • Durée : 12 mois,
  • Temps de travail : Plein temps (40h/semaine)

6. Composition du dossier de CANDIDATURE :

  1. CV détaillé (expériences + liens vers réalisations).
  2. Lettre de motivation (insistant sur l’adaptation aux environnements contraints).
  3. Copie des diplômes exigées (Bac, Licence ou plus)
  4. Références techniques (2 minimum, dont une dans le secteur santé).

Il est porté à l’attention des candidats que les dispositions relatives aux règles de la Banque mondiale en matière de conflit d’intérêts telles que décrites dans les paragraphes 3.14 et suivants, du « Règlement de Passation des Marchés pour les Emprunteurs sollicitant le Financement de Projets d’Investissement (FPI) », daté du 1er Juillet 2016 et actualisés en septembre 2023, sont applicables.

Adresse de dépôt des candidatures et CONTACT :


Les dossiers de candidature doivent être déposés contre un reçu de dépôt à l’adresse suivante :

Projet INAYA Elargi à l’adresse suivante : Avenue Jemal Abdel nasser ; les anciens locaux de la Direction des Affaires Financières du Ministère de la santé (DAF/MS) ; Derrière la MAURIPOSTE Nouakchott ouest au plus tard le 01 Juin 2026 à 12 Heures.

                                           Mohamed Mahmoud KHATRY

                                           Coordinateur du Projet INAYA élargi