Ctrl K
Frontend · Senior · Coding

Write a retry function. It takes an async function and options: the number of attempts, a base delay, and an AbortSignal. It calls the function and, on error, retries it with an exponentially growing delay. It returns a promise with the first successful result or the last error.

~15 min by voice

How to approach it

They're checking whether you can write a reliable, production-grade async utility. What matters is a correct attempt loop, exponential backoff with jitter and a cap, honest cancellation via AbortSignal without leaking timers and listeners, filtering out non-retryable errors, and the ability to clarify requirements and explain your plan before writing code.

Have you seen this question in a real interview?
Answers0
Avg. score—
Strong—
Practiced0
Topics
Similar questionsWrite a memoizeAsync function. It takes an async function of a string key and a cache time to live in milliseconds, and returns a wrapper: a repeated call with the same key doesn't go to the network, concurrent calls share a single request, and errors aren't cached. SeniorThere are price providers, and each one has a price method that takes a SKU and asynchronously returns a CompletableFuture with a price. Write a method bestPrice that takes a SKU and a list of providers, queries all of them in parallel, and returns a CompletableFuture with the lowest price: providers that fail or don't respond within two seconds are skipped, and if nobody returned a price, the result completes with an error. Senior

Answer by voice

The interviewer will ask this question and listen. Think out loud and ask for a hint if you need one. When you're done, pause or tap “That's my answer”. In about a minute, your score and the points you covered show up here.

Sign in to answer

Best with headphones · ~15 min