This Coreweave system design question evaluates a human workflow distribution system with queueing, assignment, and progress tracking concerns. It is useful preparation for discussing fairness, retries, state transitions, and observability in work allocation systems.
Design a workflow system that distributes tasks to human workers and tracks progress until completion. The system should assign work, prevent duplicate work, handle timeouts, and expose progress to operators.
### Constraints & Assumptions
- Tasks can be completed by humans through a web UI.
- Workers may abandon or time out.
- Operators need progress tracking.
- The first version can use a centralized service and database.
### Clarifying Questions to Ask
- Are workers interchangeable or skill-based?
- Do tasks require review or multiple approvals?
- What are the SLA and throughput targets?
- Can a task be reassigned?
- What audit history is required?
### What a Strong Answer Covers
```premium-lock What a Strong Answer Covers
```
### Follow-up Questions
- How would you prevent two workers from claiming the same task?
- How would you prioritize urgent tasks?
- How would you add quality review?
- How would you handle workers going offline mid-task?
Quick Answer: This Coreweave system design question evaluates a human workflow distribution system with queueing, assignment, and progress tracking concerns. It is useful preparation for discussing fairness, retries, state transitions, and observability in work allocation systems.
Design a workflow system that distributes tasks to human workers and tracks progress until completion. The system should assign work, prevent duplicate work, handle timeouts, and expose progress to operators.
Constraints & Assumptions
Tasks can be completed by humans through a web UI.
Workers may abandon or time out.
Operators need progress tracking.
The first version can use a centralized service and database.
Clarifying Questions to Ask
Are workers interchangeable or skill-based?
Do tasks require review or multiple approvals?
What are the SLA and throughput targets?
Can a task be reassigned?
What audit history is required?
What a Strong Answer Covers Premium
Follow-up Questions
How would you prevent two workers from claiming the same task?
How would you prioritize urgent tasks?
How would you add quality review?
How would you handle workers going offline mid-task?