← Back to all experiencesNew Grad Software Engineer
Process Overview
- Applied through careers page, followed by a recruiter call, online assessment, technical phone screen, and a virtual onsite loop.
Interview Rounds Breakdown
Recruiter Call30 mins
LogisticsBackground
The call focused on candidate background, motivation for joining DoorDash, and logistical preferences regarding location and team placement.
Online Assessment90 mins
Data StructuresAlgorithms
The assessment required clean, runnable code with consideration for edge cases.
The first problem involved a sliding window technique to find peak delivery volume.
The second problem required modeling a driver assignment system using a greedy approach with a min-heap.
Technical Phone Screen45 mins
Data StructuresSystem Design
The candidate implemented a merchant rating system using a hash map of deques to manage time-based expiration of reviews.
The interviewer probed for time complexity optimizations.
The discussion evolved into a bucketing approach by day to handle data more efficiently.
Virtual Onsite - Coding60 mins
GraphsBitmasking
The problem required finding the shortest path for a driver to visit multiple locations and return to a depot.
The solution involved BFS combined with bitmasking to track the state of picked-up orders.
The candidate successfully implemented the logic but faced time constraints regarding full optimization.
Virtual Onsite - System Design45 mins
System DesignScalability
The candidate proposed a architecture involving WebSockets for real-time updates and Kafka for location ingestion.
Geohashing was discussed as a strategy for managing driver locations at scale.
The discussion included trade-offs between consistency and latency, demonstrating an understanding of distributed systems.
Virtual Onsite - Behavioral45 mins
Behavioral
The interview followed the STAR (Situation, Task, Action, Result) format.
The interviewer focused on conflict resolution and the ability to learn new technologies quickly.
Questions Asked
Tell me about a time you disagreed with a teammate.Behavioral
Key Takeaways & Advice
Candidate Advice
- Do not overthink the interview process; interviewers are generally supportive and provide hints when candidates get stuck.
- Prioritize preparation for behavioral rounds as they are a significant part of the evaluation.
- Focus on demonstrating the ability to reason about scale and trade-offs during system design interviews.
Final Verdict
The candidate received an offer! 🎉
Find the peak delivery window of size K given a list of orders with timestamps.Sliding WindowArrays
Solve Assign drivers to orders based on proximity and availability.GreedyHeaps
Solve Design a merchant rating system that supports adding reviews and calculating the average rating over the last N days.Hash MapDequeSystem Design
Find the shortest path for a driver to pick up multiple orders in a grid and return to the depot.GraphsBFSBitmasking
Solve Design the backend for DoorDash's real-time order tracking system.System DesignScalability
Describe a project where you had to learn something new quickly.Behavioral
Practice sliding window, graph algorithms, and priority queue problems extensively.Understand fundamental system design concepts such as load balancers, message queues, caching, and database sharding, even for new grad roles.Prepare behavioral stories using the STAR method.