ls projects/

Production-grade distributed systems, government-grade security, and cloud-native solutions.

Monorepo to Polyrepo5 Independent ServicesNetflix PatternOPEN SOURCE

Cloud-Native E-Commerce Microservices Platform

From Monorepo to Polyrepo: Production-Grade Distributed Systems Evolution

Enterprise-grade microservices architecture demonstrating real-world architectural evolution from monorepo to polyrepo patterns. Built with Spring Boot and Spring Cloud, this project showcases the journey from a single-repository architecture to independently deployable services—the same architectural pattern used by Netflix, Amazon, and Uber. Features 5 independently deployable microservices with service discovery, centralized configuration, API gateway with circuit breakers, OAuth2 authentication, and individual CI/CD pipelines per service.

System Architecture (Excalidraw Style)

ClientHTTPSCloud GatewayPort: 9090OAuth2 + Circuit BreakerAuth0OAuth2 ProviderConfig ServerPort: 9296Product ServicePort: 8081RESTOrder ServicePort: 8082RESTPayment ServicePort: 8083Eureka ServerPort: 8761Service DiscoveryproductDbMySQLorderDbMySQLpaymentDbMySQLLegendHTTP RequestConfig/DiscoveryService-to-ServiceDatabase ConnectionAPI Gateway / AuthInfrastructure ServicesBusiness ServicesDatabasesExcalidraw style

Architectural Evolution

V2: Polyrepo Architecture

Independent repositories per service following Netflix/Amazon patterns. Each service can be deployed, scaled, and maintained independently.

Polyrepo5 ReposIndependent CI/CDK8s ReadyNetflix Pattern
Benefits
  • + Independent deployments per service
  • + Team autonomy and ownership
  • + Isolated failure domains
  • + Technology freedom per service
  • + Parallel CI/CD pipelines
  • + Scalable per service
Trade-offs
  • - More complex initial setup
  • - Requires service discovery
  • - Need contract testing
  • - Distributed configuration
Performance Comparison
Build Time
15 min3 min
Deploy Time
20 min5 min
Blast Radius
100%20%
Rollback
FullPer Service

Microservices Architecture

  • Service Discovery - Netflix Eureka
  • API Gateway - Spring Cloud Gateway
  • Circuit Breaker - Resilience4j
  • Config Server - Git-backed storage
  • Inter-service - OpenFeign
  • Database per Service - MySQL

Architectural Patterns

  • Polyrepo - Independent repos per service
  • API Gateway Pattern
  • Saga Pattern - Distributed transactions
  • Config Externalization
  • Service Mesh Ready
  • OAuth2 + JWT Authentication

DevOps & CI/CD

  • Individual pipelines per service
  • Docker containerization
  • Kubernetes manifests
  • Jenkins + GCP + GKE
  • GitOps ready (ArgoCD/Flux)
  • Distributed Tracing - Zipkin
Java 17Spring BootSpring CloudMySQLDockerKubernetesAuth0EurekaResilience4jJenkinsGCPGKE
Government GradeAES-256 + RSAProduction ReadyPROJECT CLOSED

Government Vehicle Registration Security System

Military-grade cryptographic security for national infrastructure

Security system developed for the Government of Burkina Faso to combat vehicle document fraud. Implements military-grade cryptographic algorithms generating tamper-proof QR codes with multi-layer encryption (AES-256 + RSA digital signatures). Fully developed and production-ready, though the project was closed before deployment due to organizational changes at the enterprise.

CryptoQRService.javajava
1@Service
2public class CryptoQRService {
3
4 @Autowired
5 private CryptographicEngine cryptoEngine;
6
7 public SecureQRCode generateSecureQRCode(VehicleData vehicle) {
8 // Multi-layer encryption
9 String encrypted = cryptoEngine.encryptAES256(
10 vehicle.toString(),
11 generateUniqueKey()
12 );
13
14 // Digital signature with government private key
15 String signature = cryptoEngine.signWithRSA(
16 encrypted,
17 getGovernmentPrivateKey()
18 );
19
20 // Generate unfalsifiable QR code
21 QRCodeData qrData = new QRCodeData()
22 .setEncryptedData(encrypted)
23 .setSignature(signature)
24 .setTimestamp(Instant.now())
25 .setVehicleId(vehicle.getId());
26
27 return qrCodeGenerator.create(qrData, QRErrorLevel.HIGH);
28 }
29
30 public boolean validateQRCode(String qrContent) {
31 return cryptoEngine.verifySignature(
32 qrContent,
33 getGovernmentPublicKey()
34 );
35 }
36}

Technical Specifications

Encryption
AES-256
Digital Signatures
RSA-2048
QR Validation
<50ms
Test Coverage
Passed

Security Implementation

  • Multi-Layer Encryption - AES-256 + RSA
  • Digital Signatures - Government PKI
  • QR Code - High error-correction level
  • Timestamp Validation - Temporal auth
  • Public Key Verification - Checkpoints
  • Complete Audit Trail - All operations

Technical Achievements

  • Custom cryptographic QR algorithm
  • Government security compliance design
  • Unfalsifiable digital signatures
  • Production-ready architecture
  • Full integration testing completed
  • Scalable for national deployment
JavaSpring BootCryptographyAES-256RSAQR CodePostgreSQLGovernment APIs
99.2% Hit Rate10x Faster85% DB ReductionOPEN SOURCE

High-Performance Distributed Caching Solution

10x performance improvement with intelligent multi-level caching

Production-grade caching architecture demonstrating 10x performance improvement for high-traffic e-commerce applications. Implements multi-level caching strategy with Caffeine (L1 in-memory) and Redis (L2 distributed), featuring distributed locks via Redisson for cache stampede prevention, intelligent cache warming, and comprehensive monitoring with Prometheus and Grafana dashboards.

Multi-Level Cache Architecture

ClientHTTP RequestSpring Boot APIL1: Caffeine (In-Memory)• Ultra-fast: 1-5ms• Local to each instance• Size-based eviction (LRU)• No network latencyCache MissL2: Redis + Redisson• Distributed: 10-20ms• Shared across all instances• Distributed locks (stampede prevention)• TTL-based expirationCache MissMySQL Database• Persistent storage: 300-500ms• Source of truthMonitoring StackMicrometer(Metrics)Prometheus(Storage)Grafana(Visualization)1-5ms10-20ms300-500ms
ProductCacheService.javajava
1@Service
2@RequiredArgsConstructor
3public class ProductCacheService {
4
5 private final RedissonClient redissonClient;
6 private final Cache<Long, ProductDTO> caffeineCache;
7
8 @Cacheable(value = "products", key = "#id")
9 public ProductDTO getProductById(Long id) {
10 // L1: Check Caffeine (1-5ms)
11 ProductDTO cached = caffeineCache.getIfPresent(id);
12 if (cached != null) return cached;
13
14 // L2: Check Redis with distributed lock
15 RLock lock = redissonClient.getLock("lock:product:" + id);
16 try {
17 if (lock.tryLock(5, 10, TimeUnit.SECONDS)) {
18 // Only 1 thread queries DB (prevents stampede)
19 ProductDTO product = fetchFromDatabase(id);
20 caffeineCache.put(id, product);
21 return product;
22 }
23 } finally {
24 lock.unlock();
25 }
26 return fetchFromDatabase(id);
27 }
28}

Performance Improvements

Response Time
200ms to 15ms
Cache Hit Rate
99.2%
Database Load
-85%
Cache Stampedes
Zero

Caching Patterns

  • Multi-Level - L1 (1-5ms) + L2 (10-20ms)
  • Cache-Aside Pattern - Lazy loading
  • Distributed Locks - Redisson
  • Cache Warming - Predictive pre-loading
  • TTL Strategies - Data volatility based
  • Write-Through - Consistent updates

Monitoring & Observability

  • Micrometer - JVM and cache metrics
  • Prometheus - Time-series storage
  • Grafana - Real-time dashboards
  • Hit/Miss Tracking - Efficiency monitoring
  • Latency Percentiles - P50, P95, P99
  • DB Query Metrics - Before/after analytics
Spring Boot 3CaffeineRedisRedissonPostgreSQLMicrometerPrometheusGrafanaDocker
5 Payment ProvidersQR Check-inMulti-Tenant SaaSIN DEVELOPMENT

FitCI - Multi-Payment Gym Management SaaS

Comprehensive fitness platform built for the African market

Comprehensive SaaS platform for gym and fitness center management in West Africa. Features multi-payment provider integration supporting both international (Stripe) and local mobile money operators (Orange Money, MTN, Wave). Includes QR code-based member check-in, real-time analytics dashboard, automated billing, and staff scheduling—built specifically for the African fitness market.

FitCI Architecture (Excalidraw Style)

Next.js 15 FrontendTypeScript + Tailwind CSSQR Check-in + DashboardPort: 3000DeployVercelHostingAPI CallsSupabase BackendPostgreSQL + Auth + Real-timeRow Level Security (RLS)Real-time SubscriptionsPostgreSQLMembers, Payments, ClassesPayment ProvidersStripeCredit/Debit CardsMobile Money• Orange Money• MTN MoMo• Moov • WaveWebhooksKey Features✓ QR Code Member Check-in✓ Digital Membership Cards✓ Class Scheduling & Booking✓ Staff Scheduling & Payroll✓ Real-time Analytics Dashboard✓ CSV Data Import Tools✓ Revenue & Attendance ReportsLegend:BackendFrontendDatabaseExternal APIs

Platform Metrics

Payment Providers
5 Active
Transaction Success
98.5%
Real-time Updates
Supabase
Check-in Speed
<2s avg

Core Features

  • Member Management - Registration, profiles
  • QR Code Check-in - Contactless entry
  • Class Scheduling - Capacity management
  • Staff Management - Payroll, performance
  • Analytics Dashboard - Real-time metrics
  • Automated Billing - Invoice generation

Payment Integration

  • Stripe - International cards
  • Orange Money - West Africa leader
  • MTN Mobile Money - Pan-African
  • Moov Money - Regional wallet
  • Wave - Digital wallet transfers
  • Multi-Currency - CFA, EUR, USD
Next.js 15TypeScriptSupabasePostgreSQLStripe APIOrange MoneyMTN APIWave APITailwind CSSQR Code
Nx MonorepoMulti-TenantReal-timeIN DEVELOPMENT

Event Management Platform - Nx Monorepo Architecture

Enterprise full-stack application with modern monorepo practices

Full-stack multi-tenant SaaS platform for event management built with modern Nx monorepo architecture. Features complex scheduling workflows, real-time notifications, integrated payment processing, and automated billing. Demonstrates enterprise-grade code organization with shared libraries, optimized builds, and comprehensive CI/CD integration.

Event Management Nx Monorepo Architecture

Nx Monorepo WorkspaceFrontend AppsEvent PortalReact/Next.jsEvent Management UIAdmin DashboardReact/Next.jsAnalytics & ReportsBackend App (Spring Boot)Spring Boot REST APIMonolithic Application (Port: 8080)Core Modules:• Event Management• User Authentication (JWT)• Payment Processing• Notification System• Admin Panel APIsFeatures:• Multi-tenant Architecture• RESTful APIs• File Upload Handling• OTP Verification• Audit LoggingREST APIShared Libraries📦 @workspace/ui📦 @workspace/data-access📦 @workspace/utils📦 @workspace/models📦 @workspace/auth📦 @workspace/configPostgreSQLMain DatabaseRedisCache LayerCI/CD: GitHub Actions builds Docker images → Deployed to ServerNx OrchestrationLegend:GatewayApps

Backend Features

  • Spring Boot REST APIs
  • Multi-tenant architecture
  • JWT authentication & authorization
  • Payment processing & billing
  • File upload handling
  • OTP verification system
  • Real-time WebSocket notifications

Nx Monorepo Benefits

  • Shared Libraries - Code reuse
  • Affected Builds - Only changed apps
  • Dependency Graph - Visualization
  • GitHub Actions CI/CD
  • Docker Containerization
  • Optimized Build Orchestration
  • Code Generators - Scaffolding
Nx MonorepoReactTypeScriptSpring BootPostgreSQLDockerRedisGitHub ActionsJWTWebSockets