System Design · Karat · Medium
A company operates a fleet of about 100,000 vending machines, each connected over a cellular network. Under the proposed plan, every machine sends its inventory levels and any maintenance problems to a central server at midnight, and once those reports are in, a batch job runs to schedule restocking. Review this proposal. Point out the weaknesses in the design, and then design a reporting pipeline that is more robust.