Notes for the interviewer:
This problem can go in many directions. Allow 5 minutes to brainstorm ideas but then focus the person on architecting a system from end-to-end. The goal is for them to architect an end-to-end system that uses a single algorithm. Describe the specific inputs and outputs, focus on what the model will predict. Connect it to business metrics. They should briefly list issues but not get mired in implementation details.
Positive Examples:
- Frame it as a density estimation problem. What is the distribution of likely delivery times, conditional on features?
- Frame it as a regression problem of accurately estimating arrival time.
- Frame it as survival analysis. How long until food is not high enough quality?
Negative Examples:
- Frame it as an optimization problem of better route planning, especially the goal is to have a single driver pick-up several meals. This is not a computer science oriented solution, not a core data science problem. Steer the interviewee towards a data science based solution. A good solution is complex, see The Meal Delivery Routing Problem paper by Reyes et al. Beware of the "½ solution trap"! In an interview you can say anything, you should never say something you that only "kinda know about." It is better if your first answer is something you know cold. You should play to your strengths. You can mention other solutions during brainstromming or during refactoring steps. But put your all your chips on a winner. Most people (even CS majors) have trouble with Dijkstra's algorithm, especially if it is a subtle variation.
Rubric to score interviewee. Mark your feedback, then hand to the interviewee at the end.
Score each line from 1 to 5: 1 = Very bad, 2 = Bad, 3 = Neutral, 4 = Good, 5 = Very Good
Delivery
- Professional appearance: 1 2 3 4 5
- Overall conduct: 1 2 3 4 5
- Tone: 1 2 3 4 5
- Volume: 1 2 3 4 5
- Speed: 1 2 3 4 5
- 2-way conversation: 1 2 3 4 5
- Body / hand movements: 1 2 3 4 5
- Eye contact: 1 2 3 4 5
- Other:
Technical Merits
- Picked appropriate algorithm: 1 2 3 4 5
- Explained the algorithm: 1 2 3 4 5
- Brainstorm data to be collected: 1 2 3 4 5
- Listed best features: 1 2 3 4 5
- Picked appropriate metrics: 1 2 3 4 5
- Listed common problems: 1 2 3 4 5
- Create solutions for all stakeholders: 1 2 3 4 5
- Discuss model maintenance and updating: 1 2 3 4 5
- Other:
The single thing the person could better:
Sources of Inspiration:
- Question 4.15 from “Heard in Data Science Interviews”
- https://eng.uber.com/elk/
- https://www.wired.com/story/how-data-helps-deliver-your-dinner-on-time-warm/
- Food Delivery Time Prediction https://rstudio-pubs-static.s3.amazonaws.com/560577_64ad2f2ad103472e8dc2a3def4b913cf.html
- Predicting Time to Cook, Arrive, and Deliver at Uber Eats https://www.infoq.com/articles/uber-eats-time-predictions/