"How do I implement this feature?"
standardbeginnerThe implementation question, and it is a good question — the code has to work, and someone has to write it. What defines it is scope: it takes the requirement, the architecture and the technology as given, and asks how to build within them. That is exactly right when those things really have been decided, and it is where most of the actual value in software gets produced. The failure mode is not asking it; it is asking only it, on a problem whose decisions have not been made. Then the implementation quietly makes them: a schema shape becomes the data model, a synchronous call becomes the coupling, a retry loop becomes the failure policy, and none of it was reviewed because none of it looked like a decision. The way to keep the question at its correct scope is to notice when an answer requires inventing something that was not specified — a status field nobody described, a timeout value nobody chose, a rule about what happens when the third-party call fails. Each of those is a decision escaping into code, and the useful move is to name it out loud rather than to pick one silently.
Think of it as
Building the room from a plan. It is skilled work with real judgement in it, and it assumes somebody has decided where the room goes and what it is for. When the plan is silent, the builder still has to do something — and that something becomes the design, whether or not anyone meant it to.
- In scope — a good question
- The requirement is written and testable
- The architecture and the store are chosen
- The failure behaviour is specified
- What is left is genuinely how to build it well
- Past scope — decisions escaping into code
- A status value nobody described
- A timeout nobody chose
- A retry around a call nobody said was safe to repeat
- A query inside a loop nobody sized
What the implementation question covers, and what it assumes
Decisions that escape into code when nobody names them
Remember: The implementation question is correct and narrow: it takes the requirement, the architecture and the technology as given. The failure is asking only it on a problem where those were never decided — then the implementation decides them, invisibly, because a schema shape and a timeout value do not look like design decisions. The signal is having to invent something unspecified, and the whole upgrade is naming it out loud rather than picking one silently.
See also: the intermediate question · the senior question · the low level design checklist · what belongs in a low level design

