Context: I've recently received feedback from my manager that my execution on small-medium tasks was very good, but I do struggle scoping out tasks / projects that are more ambiguous. On my most recent work, this led to delays delivering work on time, and concretely defining when the work can be marked as complete.
Question: How do you approach an ambiguous project, where requirements are not very well-defined ? Walk me through your thought process on how you would scope out the problem, align on with your teammates / TL, and land a design :)
I have faced something similar in my previous job and here is my thought process on approaching an ambiguous project. I'm pretty sure Alex/Rahul are far more knowledgeable than me on this topic, but I'll give it a try:
In summary, I find it helpful to spend time understanding the problem before beginning the design/decomposition/execution. This way, it minimizes the chance I deliver something the team did not quite want.
This resource may be helpful: https://www.jointaro.com/question/MVyu85xVBvFAZFEdSosX/how-do-i-build-my-time-estimation-skills-for-project/
Hope this helps :)
Because you are a SWE, your first though would be technical, ditch that, the problem is there. If the requirements are not defined, this is your first job then.
You have to reach out to the stakeholder, identify main headlines, fill with assumptions, and split into milestone.
What you have now is something that may be 20-40% correct, then use it to circle back to the stakeholders, challenge what they say, let them correct it, it's a lot easier going with something already written, even if far from what they want, other than going with nothing and asking for requirements.
I can guarantee you, by this point, you might have something that's ~70% accurate. Go back again, and get their signoff. At this point, they will be willing to agree on that.
You will not get 100% complete requirments from the first phase, or even the tenth! So live with what you will have at that point, buffer for some last minute changes, and iteratively start the design. Good luck!
Helpful Tarodactyl's advice is spot-on, and their linked resources are very good.
In a nutshell, your goal is to talk to more people and write more stuff down. I need to modernize this course, but it still has a good example on what a good planning doc looks like: System Design Masterclass: Shipping Real Features To Production