As someone who gets very excited about complex problems I noticed I tend to over-engineer solutions. This was true when I was building apps and is true now when I’m building ML models
I have to frequently remind myself that complex solutions are not necessarily the best ones. If you are like me, here are a few questions that I like to ask myself to make sure I’m on the right path:
• How does the thing that I'm building fit into a larger vision of the product?
• What's the 20% of the work I can do that will bring us 80% of results?
• If I can only build one thing what would it be?
• What are critical parts of the system that have to work well and what are the ones we can polish as we go?
• How can I set up a tight feedback loop?
Usually after I answer a few of the questions mentioned above I have a much clearer path forward.
Have a great day!