Amazon interview prep · updated Oct 2026

Amazon Backend Developer Interview Questions

Backend Developer 8 questions

Backend work at Amazon sits behind a store where shoppers search, add to cart and check out at all hours, and behind warehouses that must ship what was promised. Prepare to talk about services that stay up during sale peaks, stock that is never sold twice, calls between many services that can each fail, and times you owned a service in production and fixed it when it broke. What to show here: ownership of services that must hold during peak shopping. Each question below has what the interviewer is checking, an answer frame and a sample spoken answer to adapt.

System Design

1. Design a service that reserves stock when a shopper checks out, where the same item sits in many warehouses and the reservation must expire if the order is not completed.

What they are checking
Checks whether you can design for correctness under many writers, with expiry, and explain where you accept a small delay.
Answer frame
  1. Clarify the needs: no overselling, reservations expire, fast at checkout.
  2. Model stock per item per warehouse, with reserved and available counts.
  3. Describe the reserve, confirm and release steps and how expiry runs.
  4. Discuss hot items, failures and what is shown to shoppers.
Sample spoken answer

“I would keep a record per item and warehouse with available and reserved counts. A reserve call moves units from available to reserved in one conditional update, so it fails cleanly when nothing is left. Each reservation has its own row with an expiry time. Confirm turns it into an order line. Release, or a background sweep of expired rows, moves the units back. For very popular items I would split the stock into smaller buckets to avoid every request fighting over one row. The product page can read a slightly old count, but checkout always uses the true one.”

Red flag to avoid

Weak answers keep a single stock number per item and never say how an abandoned checkout gives units back.

Technical

2. The place order call times out, and the shopper's app sends it again. How do you make sure the shopper does not end up with two orders?

What they are checking
Checks your grasp of idempotent design for retries, including where the key comes from and how long it is kept.
Answer frame
  1. Explain why a time-out does not tell you whether the first call worked.
  2. Have the client send a unique key for each checkout attempt.
  3. Store the key with the result and return the same result on repeat.
  4. Cover two calls arriving together and how long keys are kept.
Sample spoken answer

“A time-out only means the reply did not arrive. The order may already exist. So the app creates a unique key when the shopper presses the button and sends the same key on every retry. On the server, I write the key in the same transaction that creates the order, with a unique constraint. If the key is already there, I return the stored order instead of making a new one. If two copies arrive together, one wins the constraint and the other waits or reads the result. I would keep keys for some days, longer than any client keeps retrying.”

Red flag to avoid

Weak answers rely on the client not retrying, or compare cart contents to guess whether an order is a repeat.

System Design

3. A big sale starts at midnight and traffic to product pages rises many times over in minutes. How do you prepare the backend so pages still load?

What they are checking
Checks whether you plan for a known peak with load tests, caching and ways to shed work, instead of trusting automatic scaling alone.
Answer frame
  1. Estimate the peak from past sales and test against more than that.
  2. Add capacity before the start, since scaling takes time.
  3. Cache what changes slowly and protect what does not.
  4. Decide what to switch off first if things go wrong.
Sample spoken answer

“Because the start time is known, I would not wait for scaling to react. I would load test with a realistic mix of pages, deal pages most of all, and add capacity before midnight. Product details and images change slowly, so they can be cached hard. Price and stock need shorter cache times. I would put limits on each dependency so a slow one cannot use up all threads. I would also agree a list of features to turn off under stress, such as recommendations, so search, cart and checkout keep working. During the sale, someone watches the dashboards with that list ready.”

Red flag to avoid

Weak answers say the cloud will scale on its own and have no plan for what to switch off.

Technical

4. A product page gathers price, stock, reviews and a delivery estimate from separate services. The reviews service becomes slow. How do you keep the page fast?

What they are checking
Checks whether you design calls between services with time limits and fallbacks, and know which parts of a page are essential.
Answer frame
  1. Call the services in parallel, each with its own time limit.
  2. Sort them into must have and nice to have.
  3. Give each nice to have a fallback, such as cached or empty.
  4. Stop calling a failing service for a while and watch the numbers.
Sample spoken answer

“I would call all the services side by side, not one after another, and give each a strict time limit. Price and stock are essential, because a shopper cannot buy without them. Reviews are not. If reviews do not answer in time, the page returns with a cached star rating or with that section loading later. I would also add a circuit breaker, so after repeated failures we stop calling reviews for a short period and let it recover. Then I would track how often the fallback is served, because a silent fallback can hide a broken service for weeks.”

Red flag to avoid

Weak answers wait for every service before replying, or treat all parts of the page as equally important.

Behavioral

5. Tell me about a time you were called at night for a service you owned, and what you changed afterwards so it would not happen again.

What they are checking
Checks ownership of production: how you act during the problem and whether you fix the root cause, not only the symptom.
Answer frame
  1. Describe the service and what the alarm said.
  2. Explain how you limited the damage first.
  3. Share the root cause you found later.
  4. Say what you changed in code, alarms or process.
Sample spoken answer

“At my last job I owned your project, a service that sent order updates to customers. One night I was called because the queue of unsent messages kept growing. I saw a downstream provider was refusing calls, so I paused the sender to stop wasting retries and posted a status note. When the provider recovered, I drained the queue slowly. The next day I found our retries had no back-off, which made things worse. I added back-off with a limit, an alarm on queue age instead of size, and a runbook page. Since then, your result.”

Red flag to avoid

Weak answers stop at restarting the service and never reach what they changed for the long term.

Behavioral

6. Describe a time you disagreed with a teammate about caching data that must be correct, such as a price, and how you settled it.

What they are checking
Checks whether you can argue with evidence, listen, and then fully support the final decision even if it was not yours.
Answer frame
  1. State the two views fairly.
  2. Explain what evidence you gathered.
  3. Describe how the decision was made.
  4. Show that you supported it and what the outcome was.
Sample spoken answer

“A teammate wanted to cache prices for several minutes to cut database load. I worried customers would see one price on the page and another at checkout. Instead of arguing opinions, I measured how often prices changed and how much load the cache would save. The data showed most prices rarely changed, but a small set changed often during promotions. We agreed to cache with a short life and to clear the entry when a price was updated, and checkout always read the true price. It was closer to his idea than mine, and I built the clearing part myself. The outcome was your result.”

Red flag to avoid

Weak answers make the other person sound foolish, or show the candidate quietly doing it their own way.

Scenario

7. Shoppers report that the price in their cart is lower than the price charged at checkout for items from outside sellers. What do you do?

What they are checking
Checks how you investigate stale data across services while protecting shoppers first, and how you communicate during it.
Answer frame
  1. Confirm the size of the problem and which sellers or items are affected.
  2. Protect shoppers: show the true price before they confirm.
  3. Trace the price update path to find the delay.
  4. Fix it, check for harmed orders and add monitoring.
Sample spoken answer

“First I would find how wide it is: all sellers or a few, and since when. While that runs, I would make sure checkout clearly shows the true price and asks the shopper to confirm if it differs from the cart. Then I would follow one seller's price change through the system to see where it got stuck, perhaps a delayed queue or a cache that was not cleared. After the fix, I would work with support to list orders where shoppers were surprised. Last, I would add an alarm on the gap between a price update and when the cart shows it.”

Red flag to avoid

Weak answers jump into the code without checking how many shoppers are affected or what they see right now.

Why this company

8. Why do you want to build backend services for a store and delivery network like Amazon's, where a slow service can delay real parcels?

What they are checking
Checks whether you want the weight of high-traffic, always-on systems and can explain that with your own experience.
Answer frame
  1. Say what kind of backend problems you enjoy.
  2. Link them to stock, orders or delivery.
  3. Mention an experience that prepared you.
  4. Say what you want to learn.
Sample spoken answer

“I enjoy backend work most when correctness and speed pull against each other, and a store has that everywhere. Stock must be right, yet checkout must be fast. Orders must never be lost, yet services fail every day. In my current job I worked on your project and learned how much design goes into a simple retry. At Amazon the same problems exist at a size where shortcuts stop working, and the result is a parcel that arrives or does not. I want to own a service like that fully, including running it, and learn from engineers who have done it through many sale seasons.”

Red flag to avoid

Weak answers praise the company in general terms and do not name any backend problem they want to work on.

Salary questions come last

No figures on this page: pay depends on the level, the city and the offer in front of you. When the offer comes, the free salary negotiation script helps with that part.

For the call itself

The questions above are the prep. On the real call, ClapAssist helps with the ones you did not practice.

ClapAssist is an AI interview assistant for Mac and Windows. It listens to the interview on your computer and shows you what to say, in short lines you can read while you talk. Your live interview audio and screen are never stored. Your resume and notes are saved to your account so the app fills them in on any computer. It is hidden from screen share on every plan, including Free; only you can see it.

Download with 10 free minutes
Mac and Windows · Stays out of screen share · No card