Related Object-Oriented Design
Design an Expense Management System
Model the core domain objects, state transitions, approval policies, and audit history for an employee expense management system.
Design a vending machine that manages inventory, accepts money, supports product selection and cancellation, returns change, and enforces a clear transaction state machine.
Design a vending machine that tracks products and stock, accepts supported denominations, lets a user select or cancel, dispenses only after sufficient payment, and returns exact change safely.
Work in the provided coding workspace while explaining your decisions to the live interviewer. Validation may use inline tests, examples, comments, or a verbal walkthrough.
Practice this problem in the live coding workspace while the interviewer probes your clarification, implementation, trade-offs, and validation.
Continue to DashboardHidden because they name the technique, which a real interviewer would not tell you.
Continue preparing
Related Object-Oriented Design
Model the core domain objects, state transitions, approval policies, and audit history for an employee expense management system.
Related Object-Oriented Design
Design an extensible validator that applies different password policies to regular users, administrators, and super administrators, handles Unicode input, and rejects passwords on a forbidden or breached-password list.
Related Object-Oriented Design
Model the core domain objects for tracking physical condition assessments of rare library books, with immutable scan history and structured condition report generation.
Related Object-Oriented Design
Design an airline domain model covering airports, aircraft seat layouts, scheduled flights versus dated flight instances, passengers, reservations and tickets, seat assignment, and flight status transitions.