“How I Estimate Work as a Staff Software Engineer”:
[S]oftware engineering projects are not dominated by the known work, but by the unknown work, which always takes 90% of the time. However, only the known work can be accurately estimated. It’s therefore impossible to accurately estimate software projects in advance.
In other words, I don’t “break down the work to determine how long it will take”. My management chain already knows how long they want it to take. My job is to figure out the set of software approaches that match that estimate.
If you refuse to estimate, you’re forcing someone less technical to estimate for you.