• HamsterRage
    link
    fedilink
    English
    arrow-up
    8
    ·
    22 hours ago

    In the very first real programmer job that had, back in 1986, the IT department estimated that they had a 51 man-year backlog of development work. That would have translated to two or three calendar years of work. Probably more, considering how crappy estimates always are, and the always under-estimate.

    It turns out that this is pretty much the industry standard. Virtually ever place I worked for the next 35 years had a similar size of backlog. And that backlog isn’t standing still, either. All you can hope is that 3 more years worth of new requests don’t come in during the two years it takes to complete what you already have.

    Some of those new things are going to have a higher priority than stuff that’s already in the backlog. The reality is that some item that’s down at the low end of the list is going to get bumped down, again and again, and never get done. Or it’s going to someday become an urgent priority that can’t wait any more.

    So the pressure is always intense for the developers to go faster, faster, faster. And the business doesn’t understand or care about good engineering practices, even though the shit hits the fan when a critical bug gets released to production. And God help you if that backlog of 51 man-years has grown to 70 after a year because of the technical debt you introduced trying to go faster.

    The fight to rein in scope is constant. At that first job, the head of the department told us, “to build Volkswagens, not Cadillacs”. It was laughable, because they were struggling to keep up while building Skodas.

    You can’t just add more programmers because the productive backbone of the development team is a group of programmers that have all been there for at least 5 years and they are domain experts. It’s going take at least 5 years to bring new hires up to that level of knowledge.

    And that’s all three sides of the project triangle: scope/quality, resources and time. You can’t meaningfully add resources, scope’s already stripped down to bare bones and the time is too long.

    And the truth is that every one of those projects in that 51 man-years backlog is important, even critical, to some aspect of the business. But the development process is unfathomable to muggles, so can’t you just go faster? Can’t you wring a bit more productivity out of those domain experts?

    • MonkderVierte@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      22 hours ago

      And God help you if that backlog of 51 man-years has grown to 70 after a year because of the technical debt you introduced trying to go faster.

      The joke is, i had to explain the concept of “technical debt” to the “supercoder” that did most of the programming in my last company.

      He was a great guy otherwise tho.