Software Engineer Interview Question

A third party API you depend on starts timing out intermittently. What do you do?

What the interviewer is probing, how to structure your answer, and a spoken example you can adapt.

Quick answer

Contain it first: set an aggressive timeout so their latency does not become yours, retry with exponential backoff and jitter on idempotent calls only, and put a circuit breaker in front so you stop hammering something that is already down. Then decide what degraded behavior looks like: queue the work for later, serve a cached value, or fail that one feature while the rest of the product keeps working.

Why interviewers ask this

Every real system depends on something it does not control, and the interviewer wants to know you design for that provider having a bad day. They are listening for timeouts, which are the most commonly omitted control, retry discipline tied to idempotency, circuit breaking so you do not make the outage worse, and product level thinking about graceful degradation rather than propagating a 500 to the user.

How to structure your answer

  • Set a timeout so their problem stays theirs.
  • Retry only what is safe, with backoff and jitter.
  • Add a circuit breaker to stop piling on.
  • Define the degraded experience for users.

Example answer

Spoken example, first person

The first thing I check is whether we even have a timeout, because the default in a lot of HTTP clients is effectively forever, and that is how one slow provider fills your worker pool and takes down endpoints that have nothing to do with them. So an aggressive timeout, tighter than my own SLA. Then retries, but only on calls that are safe to repeat, with exponential backoff and jitter, because synchronized retries from every instance turn their brownout into a full outage. A circuit breaker goes in front, so after a run of failures we stop calling for a while and fail fast rather than queueing. Then the product question, which is the interesting one: what should the user see? For an address validation call I would let the order through and flag it for review. For a payment authorization I cannot fake it, so I queue the attempt and tell the user honestly. And I would be on their support channel with request ids the whole time.

Walking into this interview soon? GhostPilot listens to your live call, spots the question the moment it is asked, and puts a structured answer on your screen in real time. Try it on your next mock, or grab a $29 Session Pass, no subscription, for the real thing.

See how it works

Follow-up questions to expect

  • How do you decide the timeout value?
  • How would you test that your circuit breaker actually works?
  • What would you monitor to catch this before customers do?

Related software engineer questions

Your interviewer will ask their own version of this. Paste your actual job description into the free Question Predictor and get the 20 questions that role is most likely to ask, with what each one is really probing.

Predict my questions

Rehearse the hard questions before they are asked

Practise with a live copilot, then walk in ready. A $29 Session Pass gets you through the interview with no subscription and no lock-in.

Get GhostPilot