Design a Reseller Inventory Management System

Problem

Design an OOP model for Meesho's reseller inventory system where resellers list products from a shared catalogue and manage their own stock.

Requirements

  • addProduct(resellerId, catalogueProductId, price, quantity)
  • placeOrder(buyerId, resellerId, productId, qty) → reserves stock
  • confirmOrder(orderId) / cancelOrder(orderId)
  • getLowStockAlerts(resellerId) — products below threshold

Key classes

Product, CatalogueItem, ResellerListing, Order, InventoryManager

Evaluation criteria

  • Separation between catalogue (shared) and reseller listings (owned)
  • Optimistic vs pessimistic locking for concurrent stock updates
  • Observer pattern for low-stock alerts

Extension

Support bulk order imports from a CSV file.

added …
LeaderboardSalaryAccount