Last year, my team received a challenge from our CEO to try to significantly improve our purchase flow along with a bit of time pressure.
For several months, I’d had a good, high-level idea of how we might improve our purchase flow. But, as the idea lacked concrete implementation details, we kept prioritizing other work ahead of it.
But, with a directive from our CEO and some time pressure, prioritizing other work ahead of this was no longer an option. Knowing this, I reached out to a friend who had experience in the part of the codebase I’d need to make my changes in to ask him for advice on how to move forward. His reply was succinct:
Have you tried it yet to see what breaks?
As soon as he asked me this question, as silly as this sounds, it occurred to me that I hadn’t actually tried it. I then had the realization that I had paralyzed myself by thinking of it as a large problem that would take months to untangle rather than a series of small problems that could be addressed as needed.
Armed with this outlook, I immediately dug into the codebase and emerged with a proof of concept within a couple of days.
I often think about this interaction when I’m a bit paralyzed with a problem.