say hello

Stockout Prevention Data Pipeline

Inventory data platform · Nov 2025–May 2026 · Public repo

An inventory data pipeline that converts stock changes into validated analytics, run evidence, reporting outputs, serving payloads, and a stockout-prevention backtest.

What it is

The product covers day-to-day inventory operations and the analytics needed to prevent stockouts.

The frontend monitor is read-only by design: it shows pipeline health, current metrics, data quality, and proof that an inventory write moved through the system.

The loop it has to make believable

  1. 01

    Built the supported local path around inventory writes, pipeline processing, analytics serving, dashboard views, event delivery, and monitoring.

  2. 02

    Used a transactional outbox to avoid dual writes between inventory mutations and downstream event publication.

How it’s built

The important technical choice is the event boundary. Inventory writes stay transactional, then outbox publication and ETL materialization handle downstream analytics.

The analytics service and Redis cache give the project a serving story, while processed-event logs, invalid-event tables, Parquet manifests, dbt marts, and DB run tables give it an audit trail.

Architecture

Operational path
Spring Boot inventory-service handles products, warehouses, adjustments, reservations, sales, and receipts
Event path
Transactional outbox writes in same DB transaction, relay publishes to Kafka with retry/give-up behavior
Analytics path
Python ETL writes current metrics, metric history, processed-event logs, invalid-event rows, Redis hot reads, Parquet manifests, and DQ runs
Decision path
Stockout-prevention backtest records recall, precision, estimated dollars saved, and fails CI below threshold

What has to hold up

  • Made the ETL idempotent through processed-event tracking, persisted invalid events, and separated current metrics from metric history.
  • Added reporting marts over daily sales and a stockout-prevention backtest with a 60% recall CI gate.

How I would present it

I would run the supported demo path and inspect the artifacts: before/after inventory, analytics payload, pipeline run, data quality, Redis key, and Parquet output.

The strongest resume angle is not real-time ML forecasting yet; it is event-driven inventory analytics with deterministic backtest evidence and a CI recall gate.

Proof

This repo has one of the clearest proof paths: `make demo` produces database, serving, data-quality, reporting, and backtest evidence for the supported workflow.

VerifyRepository, checks, stack, status
  1. 01

    Open the GitHub repo and run `make demo`.

  2. 02

    Inspect artifacts/demo, the backtest output, quality reports, and generated reporting artifacts.

  3. 03

    Read the architecture section below for operational writes, event handoff, processing, serving, and reporting.

  4. 04

    Check the README proof path and CI stockout-recall gate.

Role
Backend services, event flow, ETL, analytics API, demo proof artifacts
Scope
Event-driven inventory analytics and stockout-prevention proof pipeline
Proof
README, make demo, artifacts/demo, backtest harness, Docker Compose
Stack
Java, Spring Boot, Kafka, PostgreSQL, Redis, Python, FastAPI
Backtest gate
60% recall
Event path
Transactional handoff
Serving
Analytics payloads
Proof
make demo