I'm a developer. I always thought I was a pretty good one. But of course, when my skills as a developer were recognised and I was considered an 'expert' (what does that mean anyway?), I was moved into another position where I was expected to design and build a corporate network. This was a new concept to me, since I knew very little about networks. But I put the network together, and it worked fine. So obviously, I needed to be moved into a new career path where I knew less about the subject matter. I was placed in charge of configuration management.
For those who aren't familiar with configuration management, here's the general idea. Everyone in the company has a computer. Configuration management is the outrageously boring job of keeping track of who has what kind of computer and which software they have installed on it. For example, Rich Powers has a Pentium 60 with 32 megabytes of RAM and a 1.2 gigabyte hard drive. When a new shipment of Pentium 75 systems with 16 megabytes of RAM and 2.5 gigabyte hard drives comes in, Rich needs to be upgraded, since his hard drive is packed full. But in order to upgrade him to the Pentium 75, we also cut his RAM in half. So we need to enter a new upgrade request to put 32 megabytes of RAM in the Pentium 75. It would be a simple matter to switch the RAM chips, leaving a Pentium 60 with 16 megabytes of RAM, but there is no paperwork available for a system downgrade; therefore, we have to issue an upgrade request on the Pentium 75 and leave the Pentium 60 as it is.
The obvious solution to this, in my mind, was to order a new hard drive for Rich's Pentium 60, but management decided it was better to upgrade his whole system. Another obvious solution is to create paperwork which allows us to move hardware from one machine to another. But that's not the idea.
Once we have Rich's new machine installed, and we upgrade the RAM, we have the problem of software. Rich wants to just copy his existing hard drive over, and that seems like a good idea, but of course that won't really work because the Pentium 75 has a different hardware configuration. Everything has to be reinstalled; it's company policy. So we pull out the list of what software Rich has installed on his machine, and we reinstall it. At this point, we've taken three days to install Rich's new machine. Rich has been unable to do any productive work. That's 24 hours of company time. Now, I don't know what Rich makes, but I would expect he gets paid around $40,000 a year or about $20 an hour. So the upgrade of Rich's machine has cost almost $500 in company time already. This does not count my own salary of $13 an hour, bringing the tab to about $750 spent to do absolutely nothing other than set Rich up with a machine which is not configured to his preferences yet. The reconfiguration of preferences will take about another two or three days, I figure, so the company has now spent $1250 in man hours alone to install a $3000 computer on Rich's desk when all he needed was a $500 hard drive.
Configuration management, of course, is more efficient. That's why we spent $4250 instead of $750 -- five hundred for the hard drive, and a day of my time and Rich's to install it and copy the existing hard drive over.
Of course, this isn't the end of it. The internet, after all, is where things go, and I end up in charge of internet development and marketing at another company. (That's why I can talk about Rich and his disastrous upgrade without worrying about who reads this.) After doing about seven or eight months worth of web work, I end up being told to write reports.
I hate reports. Right now, my assignment is to locate the technical support resources available for 43 different products I don't use, and write up an evaluation and summary. I'm doing this for a department manager, who says this is being done to assist the regional budget directors in determining the needs of the regional technical managers with respect to technical support for the developers. The problem is, am I writing this for the department manager, the budget director, the regional manager, or the developer? I can't make all of them happy; the developer wants a wide variety of technical support resources, the regional manager wants resources geographically appropriate to his location, the budget directors want a bottom line, and the department manager wants something quick and concise.
I feel like I'm in a Dilbert cartoon. In fact, I almost always feel like this.
Now if you'll pardon me, I need to go write a report.