Coordinate a Fleet of Restaurant Robots

Read the full interview experience this question came from →

Quick Overview

Design restaurant robot coordination with task assignment, durable progress, local safety boundaries, uncertain physical outcomes, and human recovery.

Coordinate a Fleet of Restaurant Robots

Company: Amazon

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

Design a system that coordinates many robots working in a restaurant. Begin by clarifying what work the robots perform, then explain task assignment, execution state, failures, and the boundary between fleet coordination and each robot's local motion control. ### Constraints & Assumptions - The source leaves the restaurant operations vague. State a narrow baseline, such as delivering prepared orders, before designing the system. - Physical actions may continue after a communication failure; a lost acknowledgement does not prove an action did not occur. - Treat local motion safety and emergency controls as an independent robot capability, not something guaranteed by a cloud scheduler. ### Clarifying Questions to Ask - Do robots deliver orders, clear tables, prepare food, or perform several task types? - What capabilities, battery constraints, route restrictions, and human handoffs must assignment respect? - What should a robot do when disconnected, blocked, or uncertain whether a task is complete? ```hint Distinguish task ownership from physical progress Reassigning a task after a timeout can create duplicate physical work if the first robot is still executing it. Track evidence of progress and reconcile uncertain outcomes. ``` ### What a Strong Answer Covers - A concrete task model, robot capabilities/state, and an assignment policy. - Commands, acknowledgements, progress, completion, and cancellation semantics. - Local autonomy and coordination boundaries for shared resources. - Failure recovery, human intervention, and prevention of duplicate fulfillment. - Observability and an incremental simulation/testing plan. ### Follow-up Questions - How would two robots avoid being assigned the same delivery after a scheduler failover? - What happens when a robot loses connectivity while carrying an order?

Overview: Design restaurant robot coordination with task assignment, durable progress, local safety boundaries, uncertain physical outcomes, and human recovery.

Read the full Amazon Software Engineer interview experience this question came from

|Home/System Design/Amazon
Amazon logo
Amazon
Sep 20, 2026
mediumSoftware EngineerTechnical ScreenSystem Design
0
0

Design a system that coordinates many robots working in a restaurant. Begin by clarifying what work the robots perform, then explain task assignment, execution state, failures, and the boundary between fleet coordination and each robot's local motion control.

Constraints & Assumptions

  • The source leaves the restaurant operations vague. State a narrow baseline, such as delivering prepared orders, before designing the system.
  • Physical actions may continue after a communication failure; a lost acknowledgement does not prove an action did not occur.
  • Treat local motion safety and emergency controls as an independent robot capability, not something guaranteed by a cloud scheduler.

Clarifying Questions to Ask Guidance

  • Do robots deliver orders, clear tables, prepare food, or perform several task types?
  • What capabilities, battery constraints, route restrictions, and human handoffs must assignment respect?
  • What should a robot do when disconnected, blocked, or uncertain whether a task is complete?

What a Strong Answer Covers Guidance

  • A concrete task model, robot capabilities/state, and an assignment policy.
  • Commands, acknowledgements, progress, completion, and cancellation semantics.
  • Local autonomy and coordination boundaries for shared resources.
  • Failure recovery, human intervention, and prevention of duplicate fulfillment.
  • Observability and an incremental simulation/testing plan.

Follow-up Questions Guidance

  • How would two robots avoid being assigned the same delivery after a scheduler failover?
  • What happens when a robot loses connectivity while carrying an order?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...