RejectedSoftware Engineer - Level E4 at DoorDash
- Difficulty
- Process took
- 2-3 Weeks
- Rounds
- 4
- Format
- On site
- Applied via
- Referral
How it went
- Don’t Overthink Rejections, If you don’t receive feedback, don’t dwell on the interview process. Take it as a learning experience and improve for the next opportunity.
- In behavioral interviews, always maintain a positive attitude and confidently discuss your experiences, even when pushed back.
What they would tell you
- Don’t Overthink Rejections, If you don’t receive feedback, don’t dwell on the interview process. Take it as a learning experience and improve for the next opportunity.
- In behavioral interviews, always maintain a positive attitude and confidently discuss your experiences, even when pushed back.
How to prepare
- In systems like review ranking algorithms, you’ll need to consider trade-offs between real-time updates and data consistency. For example, if you're implementing a ranking system, how would you manage real-time updates without breaking performance? Think about fault tolerance, redundancy, and how you’ll handle system failures.
- When solving problems, Don’t just write the first solution you think of; always aim to improve. Explaining how you arrived at the solution and why it’s efficient is just as important as solving the problem.
- Recursion can be tricky, but it’s key for problems like this. When dealing with recursive problems, always explain how the function works step-by-step and focus on how to optimize recursion for better performance.
Round by round
- 1
System Design60 min
This round focused on designing a system that allows users to write and rate reviews, where the best reviews receive rewards each month. The interviewer was friendly and encouraged me to think through the design before jumping into specifics. We discussed different approaches to scaling the system, maintaining the data, and optimizing for performance. Key Topics & Approach:
- Data Flow: Discussed how reviews would be created, rated, and tracked.
- Scalability: We talked about using distributed storage and caching mechanisms to handle high traffic.
- Rewards Mechanism: Considered implementing an algorithm to determine top reviews each month, possibly integrating rankings and user engagement metrics.
- 2
Coding Problem Round 1 (DSA)45 min
During this round, I was given the problem, Check if One String Swap Can Make Strings Equal. It seemed straightforward at first, but I quickly realized there were some key things to consider. As I worked through the solution, I made sure to keep time and space complexities in mind. After testing the edge cases, I was able to solve the problem correctly within the expected constraints.
- 3
Hiring Manager Round45 min
The Hiring Manager (HM) seemed to have a negative mindset during the discussion. He was particularly focused on questioning my STAR responses (Situation, Task, Action, Result), suggesting that I could have made different decisions. It felt like he was not fully open to my perspective, which made the conversation uncomfortable. Despite this, I tried to stay calm and provide well-thought-out responses. Discussion Topics:
- Teamwork: How I handled disagreements on technical decisions.
- Project Ownership: Discussing challenges from past projects and how I contributed to improving performance.
- Behavioral Questions: The focus was more on my actions rather than results. I tried to showcase my problem-solving approach and ability to learn from mistakes.
- 4
Coding Problem Round 2 (DSA)60 min
I was given an advanced DSA problem that started with reversing nodes in a linked list and then moved on to a maximum sum path in a binary tree. The interviewer began by discussing alive and dead nodes, gradually increasing the difficulty of the problem. For reversing nodes, I tackled the basic problem of reversing nodes in a group first, then expanded to handle the more complex scenarios. When it came to the maximum sum path, I used a recursive approach to calculate the sum, initially solving it for a generic maximum path, then adapting the solution to account for negative values and the alive/dead node cases.
What came up
A candidate-reported account, lightly edited. Interview processes change by team and date.