Full-Stack En pauseOn hold Stage Saaje C&E

Mediconnect

Plateforme hospitalière complète pour digitaliser la gestion médicaleComplete hospital platform to digitalize medical management

Plateforme hospitalière full-stack avec 451 endpoints API, 101 composants Angular standalone et 8 rôles utilisateurs. Conçue pour remplacer les systèmes papier/Excel par une solution digitale intégrée et sécurisée. Full-stack hospital platform with 451 API endpoints, 101 standalone Angular components and 8 user roles. Designed to replace paper/Excel systems with an integrated and secure digital solution.

Novembre 2025 — Avril 2026November 2025 — April 2026
Saaje Engineering & Consulting
Mediconnect Dashboard
En 30 secondes
ContexteContext Plateforme hospitalière complète conçue chez Saaje Engineering & Consulting pour digitaliser un workflow papier/Excel : dossiers patients, ordonnances, pharma, facturation, hospitalisation.Complete hospital platform designed at Saaje Engineering & Consulting to digitalize a paper/Excel workflow: patient records, prescriptions, pharmacy, billing, hospitalization.
Mon rôle & défiMy role & challenge Développeur full-stack : architecturer un backend .NET 8 + CQRS / MediatR et un front Angular 21 standalone, avec 8 rôles RBAC et JWT.Full-stack developer: architect a .NET 8 + CQRS / MediatR backend and a standalone Angular 21 front-end, with 8-role RBAC and JWT.
Résultat mesurableMeasurable outcome 451 endpoints, 101 composants, bundle 62 KB gzip, et SonarQube A / A / A avec 91 % de couverture (back + front audités).451 endpoints, 101 components, 62 KB gzip bundle, and SonarQube A / A / A with 91% coverage (back + front audited).

Problème → Solution → Impact

Le problème clientThe client problem

Les structures hospitalières ciblées par Saaje E&C géraient encore dossiers patients, ordonnances et facturation sur papier ou Excel, sans coordination entre médecin, pharmacie, labo, hospitalisation et caisse.The hospital structures targeted by Saaje E&C still managed patient records, prescriptions and billing on paper or Excel, with no coordination between doctor, pharmacy, lab, hospitalization and cashier.

Conséquences : erreurs de saisie, doublons, pertes d'archives, risques médico-légaux, et zéro vue temps réel sur les flux patients.Consequences: input errors, duplicates, lost archives, medico-legal risks, and zero real-time view of patient flows.

Ma solutionMy solution

Architecture Clean (.NET 8 + CQRS / MediatR + Repository / UoW) et front Angular 21 standalone (zero NgModule = chunks fins), JWT + RBAC 8 rôles, notifications temps réel via SignalR.Clean Architecture (.NET 8 + CQRS / MediatR + Repository / UoW) and a standalone Angular 21 front-end (zero NgModule = lean chunks), JWT + 8-role RBAC, real-time notifications via SignalR.

Rejeté :Rejected: Spring Boot (équipe plus à l'aise sur l'écosystème .NET), MongoDB (besoin de transactions ACID pour la facturation et le stock pharma).Spring Boot (team more comfortable with the .NET ecosystem), MongoDB (need for ACID transactions for billing and pharmacy stock).

Impact concretConcrete impact

Workflow patient digitalisé bout en bout (admission → consultation → ordonnance → pharma → facturation) : 451 endpoints, 101 composants, bundle 62 KB gzip.Patient workflow digitalized end-to-end (admission → consultation → prescription → pharmacy → billing): 451 endpoints, 101 components, 62 KB gzip bundle.

Audit SonarQube A / A / A sur back ET front, couverture 91 %, 0 hotspot de sécurité.SonarQube audit A / A / A on backend AND frontend, 91% coverage, 0 security hotspots.

Qualité du Code — Audit SonarQube

Analyse statique réalisée avec SonarQube Community • Quality Gate PassedStatic analysis with SonarQube Community • Quality Gate Passed
A

Security

0 issue ouverte0 open issues

A

Reliability

0 bug détecté0 bugs detected

A

Maintainability

669 code smells (A grade)

91,0%

Test Coverage

Couverture mesuréeMeasured coverage

3,6%

Duplications

AcceptableAcceptable

0

Security Hotspots

Aucun point à auditerNo items to audit

451
Endpoints APIAPI endpoints
101
Composants AngularAngular components
42
Contrôleurs .NET.NET controllers
16
Migrations BDDB migrations
8
Rôles utilisateursUser roles
51
Services AngularAngular services

Gains de Productivité — Comparaison Workflow

Estimation basée sur la comparaison workflow papier/Excel vs fonctionnalités de l'applicationEstimate based on the comparison between paper/Excel workflow and the application's features
Accès dossier patientPatient record access -97%
3-5 min AvantBefore
<10 sec AprèsAfter
Génération factureInvoice generation -93%
15 min AvantBefore
<1 min AprèsAfter
Validation ordonnancePrescription validation -95%
10 min AvantBefore
<30 sec AprèsAfter
Recherche résultat laboLab result lookup -98%
20 min AvantBefore
<5 sec AprèsAfter
Vérification stock pharmaPharmacy stock check Real-time
30 min AvantBefore
InstantanéInstant AprèsAfter

Bénéfices Ciblés par la Conception

Objectifs fonctionnels visés par l'architecture — non mesurés en production hospitalièreFunctional goals targeted by the architecture — not measured in hospital production

Processus FacturationBilling Process

  • Calcul automatiqueAuto calculation ImplémentéImplemented
  • Détection doublonsDuplicate detection Validation uniqueUnique validation
  • Rappels RDVAppointment reminders NotificationsNotifications

AutomatisationAutomation

  • Gestion stock pharmaPharmacy stock management Temps réelReal-time
  • Saisie administrativeAdministrative entry Formulaires guidésGuided forms
  • Recherche dossiersRecord search Indexé BDDB indexed

Sécurité & ConformitéSecurity & Compliance

  • Traçabilité actionsAction traceability Logs auditAudit logs
  • AuthentificationAuthentication JWT + RBAC
  • Chiffrement donnéesData encryption HTTPS + BDHTTPS + DB

Stack Technique

Frontend (Angular 21)

Angular 21
TypeScript 5.9
Tailwind CSS
SignalR
RxJS

Backend (.NET 8)

C# 12 / .NET 8
Entity Framework
MySQL 8
JWT Auth
QuestPDF

DevOps & CI/CD

Docker
GitHub Actions
Nginx
CodeQL + Trivy

Architecture & Patterns

Clean Architecture

Angular (101 Components) Nginx (Reverse Proxy) API Controllers (42) 51 Services + MediatR Repository + UoW MySQL (16 Migrations)

8 Rôles Utilisateurs8 User Roles

MédecinDoctor Consultations, ordonnancesConsultations, prescriptions
InfirmierNurse Soins, suivi patientsCare, patient follow-up
PharmacienPharmacist Stock, délivranceStock, dispensing
LaborantinLab technician Analyses, résultatsAnalyses, results
CaissierCashier Facturation, paiementsBilling, payments
Admin Gestion complèteFull management
AccueilReception Enregistrement des patientsPatient registration
PatientPatient Prise de rendez-vousAppointment booking

Sécurité MulticoucheMulti-Layer Security

  • JWT + Refresh Tokens
  • BCrypt Hashing (cost=12)
  • Rate Limiting
  • CSRF + XSS Protection
  • Audit Trail completFull Audit Trail
  • 0 issue sécurité (audit SonarQube)0 security issues (SonarQube audit)
Repository Pattern
Unit of Work
Dependency Injection
FluentValidation
AutoMapper
MediatR (CQRS)

Performance & Métriques

Mesures issues du build Angular (ng build --configuration production) et de l'analyse du code source. Pas de campagne de charge en environnement hospitalier.Measurements from the Angular build (ng build --configuration production) and source-code analysis. No load campaign in a hospital environment.

Frontend (mesuré)Frontend (measured)

Build Time 45,23 s45.23 s
Bundle Size (brut)Bundle Size (raw) 245,67 KB245.67 KB
Bundle (gzip) 62,45 KB62.45 KB
ComposantsComponents 101

Backend (structure)Backend (structure)

Endpoints 451
Contrôleurs .NET.NET controllers 42
Pattern CQRS + MediatR
AuthentificationAuthentication JWT

Base de donnéesDatabase

Migrations EF CoreEF Core migrations 16
ORM EF Core
Index stratégiquesStrategic indexes
SGBD MySQL 8

Fonctionnalités Principales

Dossier Médical PatientPatient Medical Record

Consultation centralisée, historique complet, antécédentsCentralized consultation, full history, medical antecedents

Workflows ConsultationConsultation Workflows

Médecin, Infirmier, Anesthésiste, GynécologueDoctor, Nurse, Anesthetist, Gynecologist

Ordonnances ÉlectroniquesElectronic Prescriptions

Linkage direct pharmacie, traçabilité complèteDirect pharmacy linkage, full traceability

Gestion Stocks PharmaPharmacy Stock Management

Alertes automatiques, FIFO trackingAutomatic alerts, FIFO tracking

Facturation IntelligenteSmart Billing

Auto-calcul, intégration assurances, échéancierAuto-calculation, insurance integration, payment schedule

HospitalisationHospitalization

Gestion lits/chambres/services temps réelReal-time bed/room/service management

Bloc OpératoireOperating Room

Planning interventions, coordination multidisciplinaireProcedure scheduling, multidisciplinary coordination

LaboratoireLaboratory

Prescription → Résultats → Notification autoPrescription → Results → Auto notification

Notifications Real-Time

SignalR, changements critiques instantanésSignalR, instant critical changes

Avant / Après

Comparaison du workflow papier/Excel usuel vs fonctionnalités apportées par MediconnectComparison between the usual paper/Excel workflow and the features delivered by Mediconnect

Workflow Papier/ExcelPaper/Excel Workflow

  • Recherche patient manuelle dans archivesManual patient search in archives
  • Génération facture manuelle (erreurs fréquentes)Manual invoice generation (frequent errors)
  • Pas de synchronisation entre servicesNo synchronization between departments
  • Traçabilité limitée ou inexistanteLimited or no traceability
  • Risques de perte de documentsDocument loss risks
  • Aucun backup systématiqueNo systematic backup
  • Risques médico-légaux élevésHigh medico-legal risks

Mediconnect (Digitalisé)Mediconnect (Digitalized)

  • Recherche indexée sur identifiant ou nomIndexed search by ID or name
  • Génération facture automatisée et validéeAutomated and validated invoice generation
  • Synchronisation temps réel (SignalR)Real-time synchronization (SignalR)
  • Logs d'audit sur les actions critiquesAudit logs on critical actions
  • Stockage centralisé sécuriséSecure centralized storage
  • Architecture compatible backup automatiséArchitecture compatible with automated backup
  • Conformité : chiffrement, RBAC, traçabilitéCompliance: encryption, RBAC, traceability

Discutons de votre projet

Vous avez un projet similaire ? Je serais ravi d'en discuter.