Recent example from my work-life.
"Hey, how long will implementing filters for a search-results-page take (as in front-end-web-dev)."
I'm thinking of the best case, where everything is specified neatly, the design is there (also the tablet-view!!1!!1), API is well known etc.
10 days (80 hrs).
Now I start asking (myself and the colleague).
Do I know the codebase? If not, I add maybe 2 days. (12)
How well is the design specified? Oh, only the desktop-view? Add 3 days. (15)
Is the REST-API known and documented? Ah it's being currently made and is quite new? Add three more days. (18)
Is the local instance of the shop running reliably on my dev-machine? This projects is based on SAP-Hybris, so I add 3 days for initializations, updates, local fuckups etc. (21)
How well are the requirements written? Don't get me started, adds two days for additional client-communication. (23)
This goes on an in the end I arrive at 25 days, which, telling from experience, is a totally OK amount of time to spend on such a feature.
"But do you really need five weeks for this?"
No, I'll most likely be done in half the time, BUT:
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.