Requirements gathering is the process of finding out what actually needs to be built — and why — before building it. The biggest mistake juniors make is taking a request literally without understanding the underlying problem.
How to approach it
1. ASK WHY → understand the problem behind the request, not just the request
2. TALK to the real users / stakeholders, not just the requester
3. CLARIFY scope → what's in, what's out, what "done" looks like
4. SURFACE assumptions and constraints (deadlines, budget, tech limits)
5. WRITE IT DOWN → confirm your understanding back to them
