Inspiration

In industrial repair shops, there is often a massive disconnect between the shop floor and the warehouse. When equipment is inspected, mechanics generate lists of needed parts, but because the warehouse lacks real-time visibility, parts are searched for manually and ordered too late. We were inspired to bridge this gap by creating Roceel WMS, a system that listens to the heartbeat of the workshop and ensures technicians always have the right parts exactly when they need them.

What it does

Roceel WMS is an event-driven, real-time Smart Warehouse Management System. Instead of manual data entry, it consumes live events from the shop floor to maintain an immutable ledger of inventory. It automatically:

  • Reserves parts the moment an inspection is approved.
  • Detects shortages and generates smart reorder suggestions for the purchasing department.
  • Processes receipts and instantly fulfills pending shortages.
  • Empowers floor workers with a mobile-ready interface to scan locations and parts for quick, accurate check-outs and cycle counts.

How we built it

We built Roceel WMS around an event-driven architecture. The core engine listens to Kafka topics published by the shop floor (catalog updates, work orders, inspections, and purchasing). Instead of editing stock directly, we implemented an event sourcing approach where current stock is calculated as a projection of all historical movements. The backend validates rules (like preventing negative stock and handling idempotency) and exposes a clean REST API. On the frontend, we built a responsive dashboard for the warehouse managers and a barcode-scanning mobile view for the floor technicians.

Challenges we ran into

Real-world data is messy, and our biggest challenges revolved around data integrity and asynchronous events:

  • Out-of-order and duplicate events: We had to ensure strict idempotency and handle scenarios where an inspection arrived before the part was even created in the catalog.
  • Fuzzy Matching: Reconciling free-text purchase receipts from suppliers with our internal catalog SKUs required careful logic to avoid mismatches.
  • Concurrency: Ensuring that two simultaneous approved inspections didn't reserve the same final physical part, keeping our available balance accurate.

Accomplishments that we're proud of

We are incredibly proud of achieving a robust, fault-tolerant system. We successfully passed 100% of the rigorous contract tests (50/50 points), proving our ledger is flawless. We are especially proud of our reconstruction capability: we can completely wipe our database, replay the entire history of workshop events from day one, and arrive at the exact same accurate inventory state down to the last bolt.

What we learned

This challenge pushed our limits in designing distributed, event-driven systems. We learned a lot about idempotency, managing Dead Letter Queues (DLQs) for failed events, and the complexities of translating physical workshop realities (like partial kits, voided inspections, and unidentifiable missing parts) into a clean, predictable data model.

What's next for Roceel WMS

Moving forward, we want to implement the advanced extras for Roceel WMS:

  • AI-Powered Matching: Improving the unmatched receipt resolution using fuzzy logic and machine learning to map supplier part numbers to our catalog automatically.
  • Predictive Forecasting: Analyzing historical breakdown data and Bill of Materials (BOM) to predict which parts will be needed before the equipment even arrives at the shop.
  • Financial Dashboards: Adding average cost valuation and inventory turnover metrics to help management identify dead stock and optimize cash flow.

Built With

Share this project:

Updates

Submission history