Intelligent Supply Chain

AI-assisted logistics and inventory optimization platform.

Distributed SystemsApr 2026 – May 20262 monthsCompleted
View Repository

Overview

Intelligent Supply Chain is a cloud-native, event-driven microservices platform built to simulate how modern distributed supply chain systems operate internally. The project focuses on distributed systems, event-driven architecture, Kubernetes orchestration, AWS EKS deployment, observability, and production-style infrastructure. It was first deployed locally using Minikube for Kubernetes testing and debugging, and later deployed on AWS EKS. :contentReference[oaicite:1]{index=1}

Problem Statement

Supply chain platforms need to coordinate users, orders, inventory, payments, shipments, and returns across multiple business functions. As the system grows, a monolithic backend becomes harder to scale, monitor, and evolve. This project explores how those responsibilities can be separated into independently deployable microservices that communicate through events, while remaining observable and deployable in a cloud-native environment. :contentReference[oaicite:2]{index=2}

Features

  • Cloud-native microservice architecture
  • API Gateway for centralized routing
  • Service discovery with Eureka
  • Event-driven communication with Kafka
  • PostgreSQL database per service
  • Kubernetes deployment
  • Local Minikube support
  • AWS EKS deployment
  • Prometheus monitoring
  • Grafana dashboards
  • Zipkin distributed tracing
  • Helm-based packaging

Core Services

The system is composed of independently deployable services, each responsible for a single business capability.

01

API Gateway

Central entry point for all external client requests.

02

Discovery Server

Provides Eureka-based service discovery.

03

User Service

Manages users and user-related data.

04

Order Service

Creates and manages orders.

05

Inventory Service

Handles product inventory.

06

Payment Service

Processes payments.

07

Shipment Service

Manages shipment workflows.

08

Return Service

Handles product returns.

Technology Stack

Technologies, frameworks, infrastructure, and tooling used throughout the development of this project.

Backend

Java 21 • Spring Boot • Spring Cloud • Spring Data JPA • Spring Cloud Gateway • Eureka Discovery Server

Database

PostgreSQL

Messaging

Apache Kafka

Infrastructure

Docker • Kubernetes • Minikube • AWS EKS • Helm

Developer Tools

Prometheus • Grafana • Zipkin • Git • Docker Compose • kubectl

Engineering Decisions

Architectural choices made to improve scalability, maintainability, reliability, and long-term evolution of the system.

01

Microservice Architecture

The platform is split into independent services so user, order, inventory, payment, shipment, and return concerns can evolve separately.

02

Event-Driven Workflow

Kafka is used to coordinate asynchronous workflows across services, reducing coupling and making the system closer to a real distributed backend.

03

Service Discovery

Eureka is used so services can find each other dynamically instead of relying on hardcoded addresses.

04

Kubernetes Deployment

The project was designed to run locally on Minikube and later on AWS EKS, which makes it useful for cloud-native deployment practice.

05

Observability First

Prometheus, Grafana, and Zipkin were included so the platform can be monitored and traced across service boundaries.

06

Helm Packaging

Helm charts were used to make deployment and configuration management more repeatable across environments.

Challenges

The most significant engineering challenges encountered while building the system.

01

Splitting supply chain workflows into clear service boundaries.

02

Coordinating request flow across multiple services.

03

Managing asynchronous events with Kafka.

04

Deploying and debugging the system on Kubernetes.

05

Keeping the platform observable during local and cloud deployment.

What I Learned

Key technical concepts and engineering practices gained during the implementation.

01

How cloud-native distributed systems are structured.

02

How Kafka supports event-driven workflows.

03

How Kubernetes changes deployment and debugging.

04

How observability tools help trace service interactions.

05

How different services can be modeled around business capabilities.

Future Improvements

Potential enhancements that could improve scalability, reliability, and maintainability.

01

Add CI/CD automation.

02

Improve scaling experiments.

03

Add advanced analytics for supply chain operations.

04

Introduce stronger security hardening.

05

Explore predictive inventory intelligence.