Profile

Arya

Back to Projects
RS Inventory (Microservices)

RS Inventory (Microservices)

A scalable hospital inventory system built with Microservices architecture, Node.js, and Docker, featuring a custom API Gateway and rate limiting.

Node.jsExpressMicroservicesDockerMySQLRailwayKubernetes

Overview

RS Inventory is an ambitious backend project designed to manage hospital inventory at scale. As both the Project Manager and Lead Backend Developer, I guided a team of 4 to deliver this system within a tight 1-week deadline.

We adopted a Microservices Architecture to ensure independent scalability and fault isolation for critical hospital operations.

Architecture

Does a hospital inventory need microservices? For this project, the goal was to simulate high-scale operations. We split the application into 5 distinct services:

  1. Auth Service: JWT-based authentication.
  2. Inventory Service: Core stock management.
  3. Notification Service: Alerts for low stock levels.
  4. Purchase Service: Procurement workflows.
  5. Tracking Service: Audit logs for all actions.

All services communicate via a centralized API Gateway built with Node.js/Express.

Data Isolation

We enforced strict data isolation by provisioning separate MySQL databases for each service on Railway. This prevents tight coupling and allows services to evolve independently.

Technical Highlights

  • Custom API Gateway: Handled routing, authentication, and simulated rate limiting to manage traffic flow.
  • Docker Orchestration: All services were containerized, preparing the system for Kubernetes deployment.
  • 100% Test Coverage: We utilized Postman for comprehensive API testing, ensuring every endpoint was robust before deployment.

Outcome

This project demonstrated the complexity and power of distributed systems. Despite the short timeline, we delivered a fully functional, documented, and testable microservices ecosystem.