Upload Button Icon Add office photos
Engaged Employer

i

This company page is being actively managed by Amazon Team. If you also belong to the team, you can get access from here

Amazon Verified Tick

Compare button icon Compare button icon Compare

Filter interviews by

Amazon Software Development Engineer Interview Questions and Answers for Experienced

Updated 13 Jul 2025

15 Interview questions

A Software Development Engineer was asked
Q. Given an array of integers, separate the prime numbers from the non-prime numbers. The order of elements in the array does not matter.
Ans. 

Use a hashmap to separate prime and non-prime numbers in an array of strings.

  • Iterate through the array and convert each string to an integer.

  • Use a hashmap to store prime and non-prime numbers based on their divisibility.

  • Convert the hashmap back to separate arrays for prime and non-prime numbers.

A Software Development Engineer was asked
Q. Given an array of integers, separate the prime numbers from the non-prime numbers while maintaining the original order.
Ans. 

Use two separate arrays to store prime and non-prime numbers from the input array.

  • Iterate through the input array and check if each element is prime or not.

  • Store prime numbers in one array and non-prime numbers in another array.

  • Maintain the order of elements in the input array while separating prime and non-prime numbers.

Software Development Engineer Interview Questions Asked at Other Companies for Experienced

asked in Hike
Q1. Given a screen with a button and a full-screen image view, descri ... read more
asked in Hike
Q2. You have an application that displays a list of contacts. The nam ... read more
asked in Hike
Q3. How would you design a screen to display the 10 nearest restauran ... read more
asked in Hike
Q4. Given a string, write a function that returns a boolean indicatin ... read more
asked in Amazon
Q5. A complete binary tree is considered defective if there exists a ... read more
A Software Development Engineer was asked
Q. Given a string of brackets, how do you identify the number of flips required to balance the parentheses?
Ans. 

Count number of flips required to balance parentheses in a string

  • Iterate through the string and keep track of open and close brackets

  • If a close bracket is encountered without a corresponding open bracket, increment flip count

  • Return the total number of flips required to balance the parentheses

A Software Development Engineer was asked
Q. Given a binary tree, find the maximum absolute difference between the sum of nodes at any two levels.
Ans. 

Calculate the maximum absolute difference between the sums of any two levels in a binary tree.

  • Traverse the binary tree level by level and calculate the sum of nodes at each level.

  • Keep track of the maximum absolute difference between the sums of any two levels encountered so far.

  • Return the maximum absolute difference found.

What people are saying about Amazon

View All
sparklingfettuccine
Verified Icon
6d
currently not working
Amazon CSA role Hyderabad
I want to know how much time does it takes for Amazon to approve my badge photo for permanent work from home CSA role as I submitted my badge photo 4 days ago and still did not receive any information regarding my bgv as I was told I'll receive it soon.
Got a question about Amazon?
Ask anonymously on communities.
A Software Development Engineer was asked
Q. Given an array and two operations: idx + arr[idx] and idx - arr[idx], can you reach an index with a value of 0?
Ans. 

Yes, we can use Breadth First Search (BFS) algorithm to determine if we can reach index 0 with the given operations.

  • Use BFS algorithm to explore all possible paths starting from index 0.

  • Keep track of visited indices to avoid infinite loops.

  • If we reach an index with value 0, return true; otherwise, return false.

A Software Development Engineer was asked
Q. Given a linked list of integers, separate the prime numbers from the non-prime numbers while preserving their original order.
Ans. 

Separate prime numbers from non-prime numbers in a linked list while preserving their order.

  • Iterate through the linked list and separate prime numbers from non-prime numbers

  • Create two separate linked lists for prime and non-prime numbers

  • Maintain the order of numbers while separating them

  • Example: Input: 1 -> 2 -> 3 -> 4 -> 5, Output: Prime: 2 -> 3 -> 5, Non-prime: 1 -> 4

A Software Development Engineer was asked
Q. Why did you use JSP servlets?
Ans. 

JSP servlets were used for dynamic web page generation and server-side processing.

  • Used for creating dynamic web pages by embedding Java code in HTML

  • Facilitates server-side processing of user requests

  • Enables separation of presentation and business logic

  • Provides scalability and reusability of code

  • Example: Used JSP servlets to generate personalized user profiles on a website

Are these interview questions helpful?
A Software Development Engineer was asked
Q. How can a priority queue be used to find the k nearest points to a given robot?
Ans. 

Use a priority queue to efficiently find the k nearest points to a given robot's position.

  • Define the robot's position as a point (x, y).

  • Calculate the distance from each point to the robot using Euclidean distance.

  • Use a max-heap (priority queue) to keep track of the k nearest points.

  • If the heap exceeds size k, remove the farthest point.

  • Return the points in the heap as the k nearest points.

A Software Development Engineer was asked
Q. A complete binary tree is considered defective if there exists a level where the height difference between its left and right subtrees exceeds 1. How would you find the first such level from the top?
Ans. 

Find the first level in a complete binary tree where the height difference between left and right subtrees is more than 1.

  • Traverse the binary tree level by level using breadth-first search

  • For each level, calculate the height difference between the left and right subtrees

  • Return the level number when the height difference is more than 1

A Software Development Engineer was asked
Q. Given a length N, how many binary strings of length N do not contain consecutive 1s?
Ans. 

The number of binary strings of length N without consecutive 1s.

  • Use dynamic programming to solve the problem.

  • Create an array to store the number of valid strings for each length.

  • Initialize the array with base cases.

  • Iterate through the array and calculate the number of valid strings for each length.

  • Return the value at the Nth index of the array.

Amazon Software Development Engineer Interview Experiences for Experienced

8 interviews found

Interview experience
4
Good
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
No response

I appeared for an interview before Jul 2024, where I was asked the following questions.

  • Q1. Find mirror node in a binary tree.
  • Q2. Find median in a stream of integers.
Interview experience
5
Excellent
Difficulty level
-
Process Duration
-
Result
-
Round 1 - Technical 

(2 Questions)

  • Q1. Leetcode medium
  • Q2. LLD round not very difficult
Interview experience
4
Good
Difficulty level
-
Process Duration
-
Result
-
Round 1 - Coding Test 

General DSA questions

Interview experience
5
Excellent
Difficulty level
-
Process Duration
-
Result
-
Round 1 - Coding Test 

Two medium-hard leetcode questions

Interview experience
5
Excellent
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Referral and was interviewed before Jun 2023. There were 3 interview rounds.

Round 1 - One-on-one 

(2 Questions)

  • Q1. Maximum absolute difference between any two level's sum in a binary tree
  • Ans. 

    Calculate the maximum absolute difference between the sums of any two levels in a binary tree.

    • Traverse the binary tree level by level and calculate the sum of nodes at each level.

    • Keep track of the maximum absolute difference between the sums of any two levels encountered so far.

    • Return the maximum absolute difference found.

  • Answered by AI
  • Q2. Given an array now we can do 2 operations, idx+arr[idx] and idx-arr[idx]. Identify that can we reach to index having 0 as value.
  • Ans. 

    Yes, we can use Breadth First Search (BFS) algorithm to determine if we can reach index 0 with the given operations.

    • Use BFS algorithm to explore all possible paths starting from index 0.

    • Keep track of visited indices to avoid infinite loops.

    • If we reach an index with value 0, return true; otherwise, return false.

  • Answered by AI
Round 2 - One-on-one 

(2 Questions)

  • Q1. Separate prime from non prime in array if order matters
  • Ans. 

    Use two separate arrays to store prime and non-prime numbers from the input array.

    • Iterate through the input array and check if each element is prime or not.

    • Store prime numbers in one array and non-prime numbers in another array.

    • Maintain the order of elements in the input array while separating prime and non-prime numbers.

  • Answered by AI
  • Q2. Separate prime from non prime in array if order doesn't matter
  • Ans. 

    Use a hashmap to separate prime and non-prime numbers in an array of strings.

    • Iterate through the array and convert each string to an integer.

    • Use a hashmap to store prime and non-prime numbers based on their divisibility.

    • Convert the hashmap back to separate arrays for prime and non-prime numbers.

  • Answered by AI
Round 3 - One-on-one 

(2 Questions)

  • Q1. Separate prime from non prime in linked list , by preserving there order
  • Ans. 

    Separate prime numbers from non-prime numbers in a linked list while preserving their order.

    • Iterate through the linked list and separate prime numbers from non-prime numbers

    • Create two separate linked lists for prime and non-prime numbers

    • Maintain the order of numbers while separating them

    • Example: Input: 1 -> 2 -> 3 -> 4 -> 5, Output: Prime: 2 -> 3 -> 5, Non-prime: 1 -> 4

  • Answered by AI
  • Q2. Given a string of bracket, now identify number of flips require to balance parenthesis
  • Ans. 

    Count number of flips required to balance parentheses in a string

    • Iterate through the string and keep track of open and close brackets

    • If a close bracket is encountered without a corresponding open bracket, increment flip count

    • Return the total number of flips required to balance the parentheses

  • Answered by AI

Interview Preparation Tips

Topics to prepare for Amazon Software Development Engineer interview:
  • Tree
  • Graph
  • LinkedList
  • Sorting
  • two pointers
  • stack
Interview preparation tips for other job seekers - 1. Always keep pen paper near you in interview
2. Be calm and always greet with smiling face.
3. Listen to Introduction carefully and if possible keep notes.
4. Ask question from interviewer at last of the interview.

Skills evaluated in this interview

Interview experience
3
Average
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Not Selected

I applied via LinkedIn and was interviewed before Sep 2022. There were 3 interview rounds.

Round 1 - Resume Shortlist 
Pro Tip by AmbitionBox:
Keep your resume crisp and to the point. A recruiter looks at your resume for an average of 6 seconds, make sure to leave the best impression.
View all tips
Round 2 - Coding Test 

2 questions medium difficulty

Round 3 - Technical 

(2 Questions)

  • Q1. Talked about trees, and my projects, two questions from algo writing also taking about time complexity
  • Q2. Why did you use jsp servlets
  • Ans. 

    JSP servlets were used for dynamic web page generation and server-side processing.

    • Used for creating dynamic web pages by embedding Java code in HTML

    • Facilitates server-side processing of user requests

    • Enables separation of presentation and business logic

    • Provides scalability and reusability of code

    • Example: Used JSP servlets to generate personalized user profiles on a website

  • Answered by AI

Skills evaluated in this interview

I applied via Amazon websi and was interviewed in Aug 2020. There was 1 interview round.

Interview Questionnaire 

2 Questions

  • Q1. 1. DFS based question Find number of rotten tomatoes.
  • Ans. 

    DFS based question to find number of rotten tomatoes in an array of strings.

    • Implement DFS to traverse the array of strings

    • Check each element for rotten tomatoes

    • Keep track of the count of rotten tomatoes

  • Answered by AI
  • Q2. 2. Another question was baed on use of priority queue to find k nearest points to given robot.
  • Ans. 

    Use a priority queue to efficiently find the k nearest points to a given robot's position.

    • Define the robot's position as a point (x, y).

    • Calculate the distance from each point to the robot using Euclidean distance.

    • Use a max-heap (priority queue) to keep track of the k nearest points.

    • If the heap exceeds size k, remove the farthest point.

    • Return the points in the heap as the k nearest points.

  • Answered by AI

Interview Preparation Tips

Interview preparation tips for other job seekers - Practice Data structure and algorithms througly especially graph algorithms.

Skills evaluated in this interview

I applied via Naukri.com and was interviewed in Mar 2019. There were 5 interview rounds.

Interview Questionnaire 

9 Questions

  • Q1. Find shortest path to reach from one point to another in a 2d matrix. Link - -----/
  • Q2. Vertical order traversal of tree. Link - -----/
  • Q3. Sliding window maximum. Link- -----/
  • Ans. 

    Find the maximum value in each sliding window of size k in an array.

    • Use a deque to store indices of array elements.

    • Maintain the deque in decreasing order of values.

    • Remove indices that are out of the current window.

    • The front of the deque always contains the index of the maximum element for the current window.

    • Example: For array [1,3,-1,-3,5,3,6,7] and k=3, the output is [3,3,5,5,6,7].

  • Answered by AI
  • Q4. Number of binary strings of length N, not containing consecutive 1s. Link: - -----/
  • Ans. 

    The number of binary strings of length N without consecutive 1s.

    • Use dynamic programming to solve the problem.

    • Create an array to store the number of valid strings for each length.

    • Initialize the array with base cases.

    • Iterate through the array and calculate the number of valid strings for each length.

    • Return the value at the Nth index of the array.

  • Answered by AI
  • Q5. Next greater permutation. Link:- -----/
  • Ans. 

    Find the next lexicographical permutation of a sequence of numbers.

    • Identify the longest non-increasing suffix.

    • Find the pivot just before the suffix.

    • Swap the pivot with the smallest number in the suffix that is larger than the pivot.

    • Reverse the suffix to get the next permutation.

  • Answered by AI
  • Q6. LRU cache. Link:- -----/
  • Q7. Minimum time required to rot all oranges. Link:- -----/
  • Q8. A complete binary is defected because it has a level at which difference between heights of left and right subtree is more than 1. Find the first such level from top.
  • Ans. 

    Find the first level in a complete binary tree where the height difference between left and right subtrees is more than 1.

    • Traverse the binary tree level by level using breadth-first search

    • For each level, calculate the height difference between the left and right subtrees

    • Return the level number when the height difference is more than 1

  • Answered by AI
  • Q9. In last round only project related discussion.

Interview Preparation Tips

Interview preparation tips for other job seekers - I highly recommend practicing on InterviewBit, other sites are also good but I found this platform as most helpful.

Skills evaluated in this interview

Interview questions from similar companies

I appeared for an interview before Dec 2020.

Round 1 - Coding Test 

(2 Questions)

Round duration - 90 minutes
Round difficulty - Hard

This was an online coding round where we were supposed to solve 2 questions under 90 minutes . Both the questions in my set were related to Graphs and were quite tricky and heavy to implement.

  • Q1. 

    Path Counting in Directed Graph

    Given a directed graph with a specified number of vertices V and edges E, your task is to calculate the total number of distinct paths from a given source node S to all ot...

  • Ans. 

    Calculate the total number of distinct paths from a given source node to all other nodes in a directed graph.

    • Use dynamic programming to keep track of the number of paths from the source node to each node in the graph.

    • Consider using modular arithmetic to handle large numbers and prevent overflow.

    • Start by initializing the number of paths from the source node to itself as 1.

    • Iterate through the edges of the graph and updat...

  • Answered by AI
  • Q2. 

    Course Schedule II Problem Statement

    You are provided with a number of courses 'N', some of which have prerequisites. There is a matrix named 'PREREQUISITES' of size 'M' x 2. This matrix indicates that fo...

  • Ans. 

    Given courses with prerequisites, determine a valid order to complete all courses.

    • Use topological sorting to find a valid order of courses.

    • Create a graph with courses as nodes and prerequisites as edges.

    • Start with courses that have no prerequisites and remove them from the graph.

    • Continue this process until all courses are taken or there are no valid courses left.

    • If there is a cycle in the graph, it is impossible to com...

  • Answered by AI
Round 2 - Face to Face 

(2 Questions)

Round duration - 60 Minutes
Round difficulty - Medium

This was a Data Structures and Algorithms round with some standard questions . I was expected to come up with an
efficient approach and code it as well .

  • Q1. 

    Merge Intervals Problem Statement

    You are provided with 'N' intervals, each containing two integers denoting the start time and end time of the interval.

    Your task is to merge all overlapping intervals a...

  • Ans. 

    Merge overlapping intervals and return sorted list of merged intervals.

    • Sort the intervals based on start times.

    • Iterate through intervals and merge overlapping intervals.

    • Return the merged intervals in sorted order.

  • Answered by AI
  • Q2. 

    Longest Route Problem Statement

    Given a 2-dimensional binary matrix called Mat of size N x M that consists solely of 0s and 1s, find the length of the longest path from a specified source cell to a destina...

  • Ans. 

    Find the length of the longest path from a source cell to a destination cell in a binary matrix.

    • Use depth-first search (DFS) to explore all possible paths from source to destination.

    • Keep track of visited cells to avoid revisiting them.

    • Return the length of the longest path found, or -1 if no path exists.

  • Answered by AI
Round 3 - Face to Face 

(2 Questions)

Round duration - 50 Minutes
Round difficulty - Medium

This was also a DSA round where I was asked to code only one of the questions but I eventually ended up coding both
as I had some spare time and explained my approches very smoothly to the interviewer . This round went preety well .

  • Q1. 

    Longest Increasing Subsequence Problem Statement

    Given an array of integers with 'N' elements, determine the length of the longest subsequence where each element is greater than the previous element. This...

  • Ans. 

    Find the length of the longest strictly increasing subsequence in an array of integers.

    • Use dynamic programming to solve this problem efficiently.

    • Initialize an array to store the length of the longest increasing subsequence ending at each index.

    • Iterate through the array and update the length of the longest increasing subsequence for each element.

    • Return the maximum value in the array as the result.

  • Answered by AI
  • Q2. 

    Search In Rotated Sorted Array Problem Statement

    Given a rotated sorted array ARR of size 'N' and an integer 'K', determine the index at which 'K' is present in the array.

    Note:
    1. If 'K' is not present...
  • Ans. 

    Given a rotated sorted array, find the index of a given integer 'K'.

    • Use binary search to find the pivot point where the array is rotated.

    • Then perform binary search on the appropriate half of the array to find 'K'.

    • Handle cases where 'K' is not present in the array by returning -1.

  • Answered by AI
Round 4 - Face to Face 

(2 Questions)

Round duration - 50 Minutes
Round difficulty - Medium

This was also a DSA round with 2 questions of Medium to Hard difficulty . I was expected to follow some clean code and OOPS principles to write the code in this round .

  • Q1. 

    Rank from Stream Problem Statement

    Given an array of integers ARR and an integer K, determine the rank of the element ARR[K].

    Explanation:

    The rank of any element in ARR is defined as the number of elem...

  • Ans. 

    Given an array and an index, find the number of elements smaller than the element at that index appearing before it in the array.

    • Iterate through the array up to index K and count the number of elements smaller than ARR[K].

    • Return the count as the rank of ARR[K].

    • Handle edge cases like empty array or invalid index K.

  • Answered by AI
  • Q2. 

    LRU Cache Design Question

    Design a data structure for a Least Recently Used (LRU) cache that supports the following operations:

    1. get(key) - Return the value of the key if it exists in the cache; otherw...

  • Ans. 

    Design a Least Recently Used (LRU) cache data structure that supports get and put operations with capacity constraint.

    • Implement a doubly linked list to maintain the order of recently used keys.

    • Use a hashmap to store key-value pairs for quick access.

    • Update the order of keys in the linked list on get and put operations.

    • Evict the least recently used key when the cache reaches its capacity.

  • Answered by AI

Interview Preparation Tips

Eligibility criteriaAbove 7 CGPAFacebook interview preparation:Topics to prepare for the interview - Data Structures, Algorithms, System Design, Aptitude, OOPSTime required to prepare for the interview - 4 MonthsInterview preparation tips for other job seekers

Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.

Application resume tips for other job seekers

Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.

Final outcome of the interviewSelected

Skills evaluated in this interview

I applied via Naukri.com and was interviewed before Nov 2020. There were 3 interview rounds.

Interview Questionnaire 

1 Question

  • Q1. Basic Questions about core concept.

Interview Preparation Tips

Interview preparation tips for other job seekers - Focus on core concepts and basic programs.

Amazon Interview FAQs

How many rounds are there in Amazon Software Development Engineer interview for experienced candidates?
Amazon interview process for experienced candidates usually has 1-2 rounds. The most common rounds in the Amazon interview process for experienced candidates are Coding Test, One-on-one Round and Technical.
How to prepare for Amazon Software Development Engineer interview for experienced candidates?
Go through your CV in detail and study all the technologies mentioned in your CV. Prepare at least two technologies or languages in depth if you are appearing for a technical interview at Amazon. The most common topics and skills that interviewers at Amazon expect are Architectural Design, Computer Science, Clinical SAS Programming, Coding and Medical Coding.
What are the top questions asked in Amazon Software Development Engineer interview for experienced candidates?

Some of the top questions asked at the Amazon Software Development Engineer interview for experienced candidates -

  1. A complete binary is defected because it has a level at which difference betwee...read more
  2. Given an array now we can do 2 operations, idx+arr[idx] and idx-arr[idx]. Ident...read more
  3. Find shortest path to reach from one point to another in a 2d matrix. Link - --...read more
How long is the Amazon Software Development Engineer interview process?

The duration of Amazon Software Development Engineer interview process can vary, but typically it takes about less than 2 weeks to complete.

Tell us how to improve this page.

Overall Interview Experience Rating

4.3/5

based on 6 interview experiences

Difficulty level

Moderate 100%

Duration

Less than 2 weeks 100%
View more

Interview Questions from Similar Companies

Uber Interview Questions
4.2
 • 156 Interviews
Expedia Group Interview Questions
3.7
 • 78 Interviews
LinkedIn Interview Questions
4.2
 • 69 Interviews
OLX Interview Questions
3.8
 • 60 Interviews
Facebook Interview Questions
4.3
 • 55 Interviews
Uplers Interview Questions
3.9
 • 43 Interviews
Groupon Interview Questions
3.1
 • 42 Interviews
Fareportal Interview Questions
3.3
 • 32 Interviews
Yahoo Interview Questions
4.6
 • 30 Interviews
Airbnb Interview Questions
3.7
 • 25 Interviews
View all
Amazon Software Development Engineer Salary
based on 2.2k salaries
₹16.9 L/yr - ₹31.5 L/yr
60% more than the average Software Development Engineer Salary in India
View more details

Amazon Software Development Engineer Reviews and Ratings

based on 140 reviews

3.1/5

Rating in categories

3.6

Skill development

2.3

Work-life balance

4.2

Salary

2.4

Job security

2.6

Company culture

2.7

Promotions

2.8

Work satisfaction

Explore 140 Reviews and Ratings
Software Development Engineer

Bangalore / Bengaluru

3-8 Yrs

Not Disclosed

Sr. Software Dev Engineer

Hyderabad / Secunderabad

5-10 Yrs

Not Disclosed

Software Development Engineer

Bangalore / Bengaluru

3-8 Yrs

Not Disclosed

Explore more jobs
Customer Service Associate
4.2k salaries
unlock blur

₹1.8 L/yr - ₹5 L/yr

Transaction Risk Investigator
3.1k salaries
unlock blur

₹2.4 L/yr - ₹6.5 L/yr

Associate
3.1k salaries
unlock blur

₹2 L/yr - ₹5.5 L/yr

Senior Associate
2.6k salaries
unlock blur

₹4 L/yr - ₹9 L/yr

Software Developer
2.4k salaries
unlock blur

₹23.7 L/yr - ₹44 L/yr

Explore more salaries
Compare Amazon with

Flipkart

3.9
Compare

TCS

3.6
Compare

Google

4.4
Compare

Netflix

4.0
Compare
write
Share an Interview