Ai Coding And Product Systems medium
Your inline code completion client sends a request on every keystroke. GPU load is spiking during busy hours, and users sometimes see suggestions that reflect text they typed several characters ago. What should you change?
- A Fire a request on every keystroke but queue them strictly in order, so each suggestion reflects every intermediate state of the file.
- B Debounce briefly, cancel in-flight requests when the user keeps typing, and reuse cached suggestions whose prefix still matches.
- C Raise the debounce delay to several seconds so far fewer requests are sent, accepting that suggestions appear only after long pauses.
- D Move completion to a larger model with higher batch throughput so the extra keystroke requests are absorbed without adding servers.
Answer: B. Debounce briefly, cancel in-flight requests when the user keeps typing, and reuse cached suggestions whose prefix still matches.
A short debounce plus **cancellation and prefix caching** trades a few milliseconds of delay for large compute savings, and it ensures stale requests never render. A multi-second debounce (C) is tempting because it cuts load the most, but it breaks the 200-400 ms budget that makes completion feel useful. Longer delays are acceptable only for heavier, explicitly invoked actions, such as multi-line or whole-function generation.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- Your assistant uses a classifier to route queries to a small or large model, which saves 60% of GPU spend. Analysis shows about 20% of hard queries are misrouted to the small model, which then gives confident wrong answers, and regenerate clicks on those threads have doubled. What should you do?
- Your workspace AI retrieves the top-k chunks from a shared vector index and passes them to the model with ACL metadata and a system prompt saying 'only use documents this user can access.' A user just received an answer quoting a private HR page they cannot open. What is the correct fix?
- Your support bot answers billing questions. One user has asked the same refund question three times, and retrieval confidence for that topic is low. What should the bot do next?
- Your AI review system receives a 4,000-line pull request spanning 60 files. Sending the whole diff in one prompt yields shallow, generic comments, and real bugs in files near the middle of the diff are missed. How should you structure the review?
- In your ChatGPT-style assistant, power users keep single threads running for weeks, reaching about 150K tokens. Cost per turn keeps climbing, latency is rising, and the model increasingly misses facts from early in the thread. What should you do?
- Your workspace AI filters retrieval using ACLs stored in the vector index, which is rebuilt nightly. An admin removes an employee from a confidential project page, but for the rest of the day the employee can still get AI answers drawn from it. What is the right fix?