Why are developers expected to estimate tasks at all?
Worked in a position as a nominal &#x27;team lead&#x27; for a couple years.  Small group, as they got funded and grew, more management and ceremony kept creeping in, and... we had more planning&#x2F;estimating meetings.<p>I was asked a few times &quot;when will this be done?  We need to know when X will be done&quot;.<p>So... already, I&#x27;m bristling because we don&#x27;t have a shared definition of &#x27;done&#x27;.  My pushback was... probably seen as not helpful&#x2F;aggressive&#x2F;whatever, but I responded with something like:<p>&quot;I can&#x27;t tell you specifically, because I don&#x27;t have control over all the people and processes that get us to &#x27;done&#x27;, meaning it&#x27;s tested&#x2F;reviewed&#x2F;deployed&quot;.<p>At that point in time, I already had code developed locally with tests, and had pushed up something sitting on an ephemeral dev branch for others to poke&#x2F;test&#x2F;verify.<p>&quot;What do you mean you can&#x27;t be specific?  We need a date&quot;.<p>&quot;OK... Oct 28&quot; (at the time, it was 2 calendar weeks away).<p>&quot;Well... I can&#x27;t trust anything you say at this point - I&#x27;m going to say Nov 9&quot;.<p>Pissed me off to no end because... why ask if you turn around and say &quot;I do not trust anything you say&quot;?<p>I tried explaining further:<p>&quot;We have to have an internal code review, some internal testing, some testing with the client on this feature, some testing of it merged in with everything else, then a deploy.  All of these involve other people.  I&#x27;ve <i>asked</i> multiple times for the people responsible for these to pick up the task and give me any necessary feedback.  3 of them have told me &#x27;Not now, MrX told me ABC is my highest priority&#x27;, so... short of you, MrX, telling them to cooperate with me ahead of the other items, I have no ability to move this forward.  It&#x27;s been ready&#x2F;sitting&#x2F;waiting for 3 days already, but without some explicit authority from you telling other people to take this task seriously, and prioritize it and cooperate with me, I can not give a date when it will be &#x27;done&#x27;, because I don&#x27;t control &#x27;done&#x27;.  The entire group does, and they&#x27;re all politely telling me it&#x27;s their lowest priority, on your order.&quot;<p>I got some reply along the lines of &quot;now you&#x27;re just being argumentative and pedantic!&quot;<p>Me: &quot;I could roll it out now - I&#x27;m relatively confident in the code, docs and tests I have in place, but our process is steps ABC, then XYZ, and other people who are not me are tasked with that.  If I roll it out now, I&#x27;m violating the group process&#x2F;agreement, and this will be seen as aggressive, or passive-aggressive, or &#x27;non-team-player&#x27;, etc.  So... it could be &#x27;done&#x27; tomorrow, but not through normal processes.&quot;<p>&quot;No, we have processes in place for a reason, we have to follow those&quot;.<p>Me: &quot;OK... so, if my code is dependent on people who can deprioritize or skip over or ignore any requests I ask of them (many were documented in tickets as &#x27;waiting on personX&#x27;)... how can I both follow the process, and give you a specific date when something will be &#x27;done&#x27;?  I can not.&quot;<p>I was so frustrated here because the &#x27;process&#x27; was brought in to &#x27;make things better&#x27;, but it spread everyone too thin.  We (group of 4-5) had routinely been missing estimated delivery dates for months - it got worse after new processes, not better (but we put more in jira, so there were nicer charts showing how bad it was getting week to week!).<p>We just went around in circles for another 5 minutes or so then I left the meeting.  It was a constant state of feeling like I&#x27;m being talked down to, and &quot;I can&#x27;t trust anything you say&quot;.<p>I get it - people need some degree of estimates&#x2F;delivery dates.  Extra &#x27;agile&#x27; processes along with spreading people too thin, siloing people, then ignoring the day to day impact - none of this was good.<p>This was a few years ago - I&#x27;ve thought some more about how I might handle that differently if it comes up again, but I keep coming back to &quot;avoid projects&#x2F;teams&#x2F;processes like that again&quot; as the easiest path.  I&#x27;m not sure there&#x27;s any productive way to get out of the logical &#x27;rock and a hard place&#x27; that ended up being (from my POV).<p>It boiled down to &quot;give us a specific date on something which requires multiple other people who you have no control&#x2F;authority over, and whom I&#x27;ve also told to ignore you and&#x2F;or deprioritize your requests&quot;.  The only options seemed to be<p>a. give me control over those other people needed to follow the process<p>b. bring in more people to help follow the process<p>c. allow me to bypass the current process<p>FWIW, someone else got wind of this on the client end and we collaboratively did option C a few days later, and it was just rolled out (to the client&#x27;s satisfaction) well before the end of October.