Thursday, September 19, 2019

The Action Plan

Below is a hypothetical note written to BOSS about the reasons for an employee’s exit.  Read on, if you can relate

Subject: The Action Plan
To : Dave Dumbbuffalo
From : Andrew Freebird
Attached : Resignation.doc

Hello Dave,

This is in response to your email that you sent last week, regarding the schedule slippage of your “boon to this world” product. You asked specific reasons for the schedule slippage and an action plan for you to track it down to closure. (Either of the staff or the task)

Please note that I have attached my resignation letter and hence feel no pressure to be politically correct and provide you worthless suggestions.

I was one of the developers on the team, and contrary to your strong belief, we were not surfing the web for porn, rather than churning out code. Neither the team was full of pumpkins. Engineering was treated with contempt and disrespect. 
We clocked close to 70 hours per week, valiantly trying to tame to raging bull. So, once in a while surfed the web, checked emails, did some pressing personal work on the office laptop, big deal! Yet, bosses like you prowled our desks looking for evidence of slacking. Professionals cannot work in an environment lacking trust.

Let me tell you one thing, PROFESSIONALS are always mostly driven by intrinsic motivation factors that come from within; feeling of being a part of the team, desire for the organization’s success, wanting to deliver a great product, et al. Extrinsic Motivations are those that are imposed from bosses, mostly without any buy-ins from the professionals involved. Artificial measurements are ranked high in extrinsic motivations.

Metrics heavy extrinsic motivations push out the intrinsic ones. Professionals shrug in frustration and work to meet the numbers, rather than trying to make things work the right way. Your imposition of “number of lines of code per day” metric was one of the key examples. Did you even realize the amount of crap that was coded, just to make the numbers? One of our brightest developers, Frank Igiveup, wrote his suicide note in the exception handler function, and reached almighty’s feet. His untimely demise brought in Mary Tenderbabe, a naïve but equally bright newbie to the team. Her name was on the project planner even before her employee ID was created. She neither knew the process nor the coding standards. Poor soul is already contemplating a career in philosophy and yoga.

Your fanatic obsession to use C++ made our software a bloated monster nobody could comprehend. And your decision was based on a business week article? Who makes such fundamental technical discussions? Don’t get me wrong, the article correctly reported the advantages of using OOP in generation of reusable software. Do you remember our lead Nick Guineapig? The one whose wife came on a horse in the middle of the night to the office, wielding a sword, asking him for some family-time. He was the only person on the team who had credible experience in OO based design. Given the tight schedule, you handed us the “C++ for Dummies” books during one of the team building activities at the cafeteria and expected us to deliver production quality code.

People learn a language by working on in-house projects, developing skills before using those skills on production quality code. Nick had requested at least a month of C++ training for developers before we started on the project. You cited schedule pressure and axed it. Now we are a year late, and still the system doesn’t work.
Our earlier projects were small embedded systems, with around 10K lines of code. Dramatic heroism for such small system may work sometimes, but for a behemoth of a system running to more than 250K lines of code, this simply doesn’t work. The heroics are very appealing to the management because the engineers seem so obviously dedicated, but this simply doesn’t scale.

Decent debuggers provide the right set of eyes for developers to debug code. Yet, the $10000 debugger was an unnecessary cost to the project, according to you. “Instead of spending $10000 on the debugger, just stop making bugs” sounds so naïve, doesn’t it? It was uttered by you during the project planning meeting.

And what about schedule? Instead of making one from the set of requirements followed by careful design, you capriciously assigned a date, picking one from a random number generator running in your head. Shamefully, instead of walking out en masse, we nervously tried to make a meaning out of that date, editing the project planner, all the while knowing that each milestone was a charade, and the product a blatant lie.

Finally, if someone makes a movie on the Dilbert comic strip, you sure have a role, Pointy-haired boss! (You are a perfect fit, the only thing pending is the pointy-hair)

Utterly disgusted,
Andrew.

============================================================


Subject : Re : The Action Plan
To : Andrew Freebird
From : Dave Dumbbuffalo

Dear Andrew,
With the new feature demand in our latest product, I was little too busy to read your email, but I am sure there is lot of useful information, in there. I will get to it soon, no doubt. 
Meanwhile, I have promised the customer we can deliver another upgrade next month. So go ahead, update the schedule and get started. We can discuss the specs next week.
Yesterday, during my morning jog, I realized we don’t have any code base in JAVA. And JAVA lets it run on many platforms! I figured out that it even has a garbage collector, for all the buggy code that you guys write, how cool can that be? So I suggest we migrate all our code base to JAVA starting from this product. Also, port this JAVA code on that old 8051 after you getting Linux running on it.

I have been thinking of ways of keeping this new project on-schedule. So from now, all you developers will bring packed lunch from home, and eat at the desk. That, and some overtime should do the trick!

Sincerely,
Dave


Here is a disclaimer, just in case : All the character names are fictitious, and as a matter of coincidence, if the names match,I am sorry about that! Either get better at handling people or use this as a covering letter to your resignation letter. And if you name is Frank, please rest in peace!