You've probably noticed this before: You ask someone how long it would take to implement a feature and the response sounds amazing - only a few hours or days! Fast forward two weeks and the status is still "almost done." What happened?
In the vast majority of cases it boils down to simple miscommunication. By phrasing the question as "how long would it take to implement," you kick off a self-imposed challenge in the engineer's head to figure out how quickly they could build an MVP. As you'll see below, the resultant estimate is only 20% of the actual work that remains to be done.
In this article I'll attempt to de-mystify the engineering process by comparing it to an easy-to-understand task: writing an email.
💡 The Scenario 💡
Imagine you're writing an email that goes out to your entire mailing list by default. You are writing in several languages that are not your mother tongue (the email will change languages depending on the reader). The content consists of text and images, and it can be accessed on desktop, tablets, and smaller mobile devices.
You can break the above scenario down into the following stages:
Every one of the above points has a counterpart in engineering.