Panda Guru LogoPanda
Guru

Design Distributed Job Scheduler.

Round 1

Questions: Design a Distributed Job Scheduler with the following requirements:

Functional Requirements:

Non-Functional Requirements:

Core Entities:

APIs: a) Job Creation: POST: /schedule/job -> Job_id payload:

b) Check Status: GET: /check/job_status/{job_id} -> Status of job

image

Candidate's Approach

The candidate proposed a design that includes a job entity with necessary attributes and APIs for job creation and status checking. The design emphasizes reliability and availability, ensuring jobs are executed at least once and can be retried in case of failures.

Interviewer's Feedback

The interviewer appreciated the clarity of the functional and non-functional requirements. They suggested considering additional aspects such as load balancing and scaling strategies to handle high job volumes effectively.