Design a Print Job Queue

Problem

Design an object-oriented print spooler / job queue.

Requirements

  • Submit, cancel, prioritize print jobs
  • Multiple printers, dispatch to a free one
  • Job states: queued, printing, done, failed

What evaluators look for

  • Clean classes: Job, Printer, Spooler, Scheduler
  • Priority and fairness
  • Retry on failure

Extension

Add per-printer capabilities (color/duplex) and route jobs accordingly.

added …
LeaderboardSalaryAccount