Great article and insights.
I find the most important thing is understanding the problem you are trying to understand. You can't solve I a problem you don't understand.
Talking with end users is also key. Often product managers are often not good at understanding or communicating the problem.
Next, understand your current tech stack, probably 50% of what you need to do is already done.
And finally, the simpler the solution is better. KISS. Don't over engineer.