All projects

AEBIS

Backend Developer · HABTechFeb 2025 – Present

Adin Ethiopian Blood Information System — the national platform tracking donors, donations, testing, inventory and transfusions across Ethiopia's blood banks and hospitals.

  • Java
  • Spring Boot
  • OAuth2
  • PostgreSQL
  • RabbitMQ
  • Liquibase

Overview

AEBIS (Adin Ethiopian Blood Information System) is the modernized platform for blood services in Ethiopia, built by HABTech with the Ethiopian Blood and Tissue Bank Service. It replaces a legacy system with a multi-tenant Spring Boot platform behind three apps: ADIN for blood-bank staff, a facility web app for hospitals, and Adagn, the donor mobile app. On the backend team I built the donor lifecycle, the notification platform, plasma and tissue workflows, and the hospital order and transfusion flows.

Results

12
Notification trigger events
3
Channels: email, SMS, in-app
3
Apps served
ISBT 128
Labelling standard

Challenge

Ethiopia's blood services ran on a legacy system that couldn't serve every blood bank and hospital from one platform, keep donors engaged, or give a clean audit trail from donation to transfusion.

Solution

A multi-tenant Spring Boot platform with an OAuth2 identity server, covering donor appointments and eligibility, testing, components, plasma, inventory, hospital orders and transfusions — with event-driven notifications and a star-schema analytics layer.

Key technical decision

Notifications run through a message-template platform driven by domain events: trigger events and scheduled bulk sends render multilingual templates (including Amharic SMS) and dispatch through RabbitMQ with rate limiting and jitter. A nationwide donor-recall campaign can't flood the SMS gateway, and every message is tracked for analytics.

Highlights

  • Donor lifecycle: appointments, versioned multilingual eligibility questionnaires, and assessments that auto-defer and notify donors
  • Event-triggered and scheduled bulk notifications with Amharic SMS, preference-aware delivery and nearby-donor targeting
  • Plasma workflows: automatic unit creation, box and pallet management, and configurable ZPL label printing
  • Tissue recipient waiting lists and allocations; hospital orders, transfusions and returns
  • Star-schema analytics (fact and dimension tables) and legacy-to-tenant data migration scripts
  • Multi-tenant PostgreSQL behind an OAuth2 identity server, with a Hibernate Envers audit trail

Government health system — code is private.

Gallery