« Alternate Job | Main | World (Rugby) Cup »
October 16, 2003
System Architects
Once upon a time, a long time ago, in a galaxy right about here, I worked as a 'Unix architect'. This involved designing networks of Unix systems and sizing systems for a given set of applications. It was hard work. It was complicated. It required a lot of background knowledge and research. It was heaps of fun.
Fast forward ten years. I can do this stuff in my sleep but I am not a Systems Architect any more. My job description says "Senior Unix Consultant" which means that people can walk up to me and ask the hard questions like "When I try to run su, I get some error about root not existing" and without blinking an eyelid I can say "Run 'mount -o logging,setuid,remount' on the filesystem and it will work".
However, my employer does have some Systems Architects. They get paid lots of money for their skills which seem to consist solely of being able to read IBM patterns and regurgitating them on our letterhead. As a result we are apparently following "best industry practice" (i.e. doing what IBM tells us to do). This then involves installing lots of software made by IBM (who else?) which NEVER works. Effectively we turn into an IBM beta test site for dodgy software.
Take WebSphere which is really just some java mixed in with Apache (but an old, out of date version of apache). You could achieve the same results with standard freeware - apache, tomcat and maybe mysql. Instead we have to install DB2 (we use Oracle not DB2) and WebSphere. Great, it turns out that WebSphere doesn't work in 64 bit mode. This is apparently because we are using an alpha version (the one that is standard industry best practice - everyone is using it). We send IBM instructions on recompiling in 64 bit mode. They send back a patch and the beta version. The beta version is 32 bit again. We send instructions, they send a patch and the next beta. Ad infinitum.
The end result, we pay lots of money to IBM and lots of money to people who can regurgitate IBM material. Most of the material is marketing gumpf and surely IBM can't really expect everyone to be so gullible as to believe that Industry Best Practice involves beta software.... On the other hand we seem to be getting closer and closer into bed with them everyday and the failure of every single piece of rolled out software to date does not seem to deter the process.
In fact, so far, there has not been a single "architected" solution that actually works correctly from an operational perspective. The customers may be happy but the techos behind the scene have to fiddle constantly to keep things alive. Unfortunately senior management (who wouldn't know the difference between Unix and eunuchs) only see the glossy brochures, fantastic presentations (that promise the earth) from the architects and the customers who claim to be satisfied (but they really want this enhancement and that add on and some other bit doesn't quite work as advertised). The real cost in hardware, software and manpower is not measured. Nor are the alternative solutions (like Linux/Apache/TomCat) considered as a way of measuring the real cost of an all IBM solution.
The only token gesture to the anti-IBM sentiment that dwells in the operational teams is to threaten to add .NET to the existing J2EE as a backup standard which has frightened all the project teams into submission. With all the cost cutting that is going on, surely it is time for the CIO to realise that she could fire the entire strategy and architecture group (including some very expensive agency hire people) and get a secretary to cut and paste our logo over the IBM logo on their blueprints or redbooks or whatever the scheme is called today. We would have the same problems as today but save a bucketload of money and angst. Of course a really savvy CIO would have worked out that an IT group of less than 150 people probably doesn't need 10% of them working in S&A in the first place.
P.S. Some of the guys in S&A are nice people - this is not a personal attack on them. They are just performing a useless task that costs a lot of money and serves only to keep IT management happy.
Posted by Ozguru at October 16, 2003 08:10 AM