The worst development jobs are those that end up with runaway scope creep. That happens when the client or project manager doesn't really know what they want and they keep adding to the project as it moves forward.
The cost of this creep is often saddled on us because the scope was never clearly defined in the first place. When we pose these questions up front, it helps the client carefully think through all of the things they need in advance, eliminating scope creep almost entirely.
These questions allow us to: