Kludge Driven Development
In the last few years I see an overall increase in the busyness of people around in all professions. Everyone keeps telling about how busy they are; always behind tight deadlines and impossible to pursue goals yet they are able to somehow get things done. Managements usually set difficult to achieve deadlines, tightly control budgets, non negotiable scope of work and leave quality as the only leverage for the ground level people.
So people end up kludging together things to make ends meet. One of the dictionary meanings of ‘kludge’ is ‘a machine, system, or program that has been badly put together, especially a clumsy but temporarily effective solution to a particular fault or problem.’ I came across this term when reading this article. Kludge appears everywhere and it looks like a clever hack.
Sending that boolean variable named ‘donotTouchThisFlag’ through multiple layers of code and systems to bring up a new feature effectively cuts the time down by several hours that should have been spent in redesign. An engineer doing this for an aeroplane is beginning to get away from these blatant engineering blunders and instead gets praised for quick delivery of features and leave the headache to the technical support team to handle.
People have no other option than to succumb to this vicious cycle of too much pressure and low quality work. If they don’t fit in, they get kicked out. What is the leverage then? It is very hard to find leverage when people are bossing around in multiple layers, I kind of miss the unions of the yesteryears in many disciplines who demanded the right conditions, pay and working hours.
Good design and quality work can never come from pressure, if an output comes out of extremely forced timeline and budget then chances are high that failure follows suit. Sadly the manager gets rewarded for timely delivery and the engineer gets the stick for poor quality.
Balance people, process and engineering
5 年https://www.reddit.com/r/videos/comments/bdfqm4/the_real_reason_boeings_new_plane_crashed_twice/ekyyd9g/
Technical Co-founder of TarkaLabs
5 年One approach I could think is to be the "Whistle Blower" No business wants poor quality & high maintenance software. When we are not able to educate them that they can put constraint on only 2 out of 3 (cost, quality & time), publish what is missed to public? May be anonymously
Technology Leader | Senior Technology Consultant | MBA
5 年That's a valid issue but how do we solve this, if union is not an option?