Yesterday, i stumbled upon a job offer that reminded me of my corporate days. It started with: “This job is very simple and will not require lots of work”.
Recognizable vicious circle: manager comes to you, and said: “could you change this ? quickly ? I mean, it shouldn’t be a lot of work, should it ?” The best kind then asked for an estimate in man-days. The worst kind, who were developers 20 years ago, figured this really IS easy, since they could have done it in 3 lines of Cobol on a mainframe, back in the days. I mean, how different could it be ? (i’m not inventing this)
Often, the amendment really is quite simple. But one time out of five, depending on your system, the quick fix required has a lot of interdependencies, and a lot of complications. And you don’t always know in advance.
So my colleagues and I learned to take a defensive approach. The “This should really be simple” sentence usually was met with the Funeral Face. The Oh My God face. The You Ripped Out My Entrails face. And we over-inflated our estimates. At best, we’d have finished in time to do some refactoring and improve the build system, or other things that did not fit into our timesheet systems. At worst, it really did take that time to finish the job.
It’s a shame, really. In an ideal world, there would be honesty and understanding on both sides. I believe some companies, or some teams, manage to carry it off. Not that many though, because assuming it’s easy is beneficial for fixing Gant Charts, planning tight deadlines, and for selling projects.
In my humble opinion, the words ‘simple’ or ‘easy’ should be forbidden to non-technical analysts in this context. Just saying.