Software Development Engineer I Amazon Interview
I wanted to share my interview experience for the Software Development Engineer I role.
Online Assessment March
I completed the Online Assessment (OA) in March. After that, I received an email in June regarding interview scheduling.
There were multiple interview rounds, with approximately 1 hour between the first and second rounds.
Round 1
There were two interviewers in the round.
The interview started with a brief introduction, followed by two DSA questions.
DSA Question 1
The first problem involved Priority Queue + Greedy.
I first explained my approach, then implemented the solution. After coding, I was asked to:
- Explain the time and space complexity
- Dry run the solution with an example
DSA Question 2
The second problem was something like:
Given names for some reason i have to return the name with the maximum count.
I used a HashMap + Priority Queue approach.
Again, I was asked to explain the complexity and perform a dry run.
Behavioral
Then came a behavioral question:
Tell me about a time when you had to meet a difficult deadline. What did you do?
There were several follow-up/cross questions based on my answer.
After that, the interviewer asked about one of my projects, and we had a discussion around the project and my technical decisions.
Round 2
The second round started with a Leadership Principle (LP) question.
I was asked about a situation where I had gone beyond my normal responsibilities. There were several follow-up questions around the situation.
LLD / OOP Question
Then I was given a system-design/OOP-style problem.
The interviewer asked me to design a system where a user could:
- Deposit money
- Credit money
- Generate a summary
- Potentially support additional functionality in the future
- Apply tax as part of the system
I was asked to think about the classes and objects and how I would structure the system so that it could be extended later.
Round 3 — GenAI + DSA
Around 10–12 days later, I received a call for the third round.
This round focused heavily on Generative AI, along with a DSA question.
The interview started with my introduction and then the interviewer asked whether I had worked on any GenAI projects.
I explained one of my projects and was asked several questions around it, including:
- How do you reduce hallucinations?
- How do you verify that the output is correct?
- Which model did you use and why?
- How did you secure the input?
- How do you make sure sensitive/personal information isn't unnecessarily sent to or returned from the model?
- How did you approach prompt engineering?
We then moved to a DSA problem.
DSA - Currency Conversion
The interviewer gave an example where:
1 USD = 100 INRand there was a table containing conversion rates between different currencies.
The question was essentially to find the conversion rate from a source currency to a destination currency.
I represented the currencies as a graph and used DFS to find the conversion path.
I explained the time complexity and performed a dry run.
After this round, I got a call after 2 days told that I had moved forward to the final round.
The final round started with a brief introduction and then moved into three main questions.
- Deep Dive / Problem Solving
The interviewer ask me a time where I had to dig deeper into the problem.
My answer involved a race-condition-related scenario.
The interviewer then asked me to explain my approach in more detail and followed up with:
How would you avoid a race condition in a distributed database?
This was one of the questions I wasn't able to answer well.
- Most Complex Problem You Have Solved
The second question was:
What is the most complex problem you have solved?
I explained one of the projects/problems I had worked on and answered several follow-up questions about my implementation and the decisions I made.
The interviewer then connected it back to the earlier race-condition discussion and asked follow-up questions such as:
What if the same race condition occurred in this scenario?
How would you resolve it?
Would your solution be scalable?
What would happen under higher concurrency?
This part of the interview went quite deep into the technical details of my solution.
- Negative Feedback
The final question was behavioral:
Tell me about a time when you received negative feedback.
I explained the situation and how I handled the feedback.
Overall, this round went much deeper into concurrency, scalability, system behavior under load, and the technical decisions behind my projects than the previous rounds.
Result
After the final interview, I didn't receive a direct call or email regarding the result.
Around two weeks later, my application portal was updated to:
No longer under consideration
And that was the end of the process.


