Some time ago, Joel Spolsky ("Joel on Software") wrote a good little piece entitles "The Development Abstraction Layer." As always, Joel was right on the money. The last few weeks, I have been trying to arrange training to go to training for Cognos ReportNet, at the request of one of our clients. Arranging the training has been an amazing waste of time. I spent hours on the phone with Cognos, hours searching and filtering and refining course searches, hours trying to make travel arrangements; in short, the kind of things that Joel says should be abstracted out of the development process.
It is not that I feel that this level of work was demeaning. If anything, it was refreshing to not have my head buried in a compiler or an Excel spreadsheet all day long. But all things considered, an administrative assistant could have handled the training arrangements just as competently as I did (maybe even better) at a significantly reduced cost. This is not the first time that this has happened at the company I work for. My current employer is a five person company, and we all have our separate responsibilities and areas of specialization. Whenever some non-core competency item comes up (accounts payable, accounts receivable, travel arrangements, going to the Post Office, etc.) we have to take time away from a project and cease incurring billable hours to do work that an administrative assistant could do just as well if not better.
Even at large companies, this is standard. At every job I have ever had, administrative assistants and other support staff simply did not exist for the IT staff. It seems like every other department had support, except for IT. Ironically, IT professionals (even after the dot-com crash and the offshoring craze) make more than Marketing, Public Relations, Accounting, and all of the other departments. Yet it is still standard to have IT professionals waste their time doing things that have nothing to do with their jobs. I am simply baffled at the attitude that says that spending the time of someone who earns $70,000 per year on trying to order stationary instead of developing software. The modern enterprise is filled with an extraordinary amount of layers. Simply ordering pens can take an hour. Travel arrangements take days to set up through the corporate travel department. Purchasing something from an unapproved vendor or software not on the corporate installation list is nightmarish at best (and IT professionals typically need at lot of non-standard software and hardware). Yet, IT professionals are asked to spend their time doing this. At some large companies I have worked for, the kinds of tasks have frequently consumed 5% of my work time on average over the span of my employment. A 5% reduction in productivity, multiplied by the cost of an IT department is a huge hole in the budget. But this is considered acceptable.
I do not consider this acceptable. I consider it bad business. If you could buy a product from one store for $50 and at a different store for $20, you would get it from the cheaper store, right? So why are companies forcing high priced IT professionals to do the same work that a high school graduate could be doing at $10 per hour? Is it simply prejudice against IT? The mistaken belief that IT professionals do not do anything that is not their core mission? Or something else?
I would love to hear your feedback about this problem.
Justin James is an OutSystems MVP, architect, and developer with expertise in SaaS applications and enterprise applications.