DoorDash·Software Engineer·Technical Phone Screen
- Implement a dasher pay calculation system that takes a stream of order events with timestamps (assigned, picked_up, delivered, cancelled) and computes the total pay owed per order using state transitions, base pay rules, and time-based components.
- Convert the dasher pay calculator into an API endpoint. How would you handle request validation, retries with idempotency keys, and failure scenarios?
“This one took me a while to even parse correctly.”