Thursday, May 8, 2008

To Every Manager, His Day

Let me tell you the story of a semi-young, very agressive man; who has worked his way up through the ranks of corporation mania. At first a trainer of the system, then for a short time a programmer (of some sort, he says JAVA), until finally a Manager of a group (of what, we don't know), and now the chance to start his own branch as any title he chooses. Now before you critic him in back of your of your and say he didn't deserve it. Imagine the amount of talking it would take, or the odds to overcome, to get a company to invest in your ideas of a new branch that you would lead to produce a new version of the company product; that is is badly needed. Certainly you would be a believer in whomever speaks the loudest for the longest is surely correct and the winner.

You are probably thinking at this point, who cares?! Met a thousand of them! They are always on walking on everyone around them to get to where they want to be. Don't care the cost of any given issue as long as it doesn't cost them... I understand all that, but the one thing that just pushes my buttons right now is someone who has become a GURU (apparently over night) on an IT area (like architecture or Frameworks or even .NET programming techniques because they have discovered Team Foundation Server and followed its instructional training) or many of them for that fact.

First he shows a brief presentation of the previous product (written in PHP and using mySQL). His presentation in short is, it is badly written, performs poorly, the customer is complaining about it; so, we (as sales persons) have promised the customer a brand new look and feel and outstanding performance and we will let them look in our progress as we produce these new products or versions. I knew right then he (and likely the VP) were trying to save a large client for the company. And this customer was apparently large enough to the company to justify this new branch of an investment. They had already tried the overseas solution because it was cheaper. But they couldn't communicate with these folks, so it seemed. So they never produced what was asked of them per the specifications. The company even sent the director of development (who originated from that country) back to India to get them straightened out. But he was there for like four days in daily meetings with us, then disappeared for a week. I think that was a prearranged vacation or something. Just always it seemed that the left hand had no idea what the right hand was doing and in the meantime, this new Branch boss (a self proclaimed know it all on every topic, just ask him) was running loose learning how to do this or that daily through experiment or calling someone for guidance. And in the end, HE HAD THE SOLUTION! HE HAD THE ARCHITECTURE of the new product, and he knew exactly what we were to do as programmers. Just follow the guidelines of TFS, it can't be so hard!

So he jumped right in the middle of the programming group, said, YES, I need some of the patterns and practices, I need Workflows, I need webparts for a web 2.0 portal, and I need widgets.... And as LEAD, I stood up and said, that is not the way to do that. What you have presented is NOT architecture for .NET coders. And what you have assembled is an alphabet soup at best of .NET frameworks that now comprise your primary product root folder. It is a mess and will be impossible to support.

I even submitted a document, requested by the Director of Development, stating the details and what the architecture should look like. Later that day, I was informed that I was released.

There were lots of other corporate agendas going on as welll within the ranks making it impossible to LEAD the group. The VP was calling one of the programmers in my group telling him to do this or that while the programmer appeared to give a daily report on the branch boss. And all the while, even though communication with the offshore group was diffifcult, they were always ready to listen to guidance and assignments. And maybe the real issue was that I did not stand up to the VP or Branch Boss and say, you hired me to LEAD this group of programmers; now back up and out, lend your suggestions and designs, but let me LEAD the programmers in a solution we can support. Pretty sure that one would have gotten me fired too. And as an old professor from UMC said in my BS days in education, not only do they not know, they don't even suspect how deep they are.