Subversive Thoughts
History of the 'e' Language

Building the Abstraction With Customer Driven Organizations

Recently Joel Spolsky published an article entitled The Development Abstraction Layer where he describes the need for management to create an abstraction layer between developers and the infrastructure required to develop.  I also recently heard an interesting anecdote about how difficult it can be to get work done when you're held back by Byzantine organizational rules (ex. yes, we agree you need that XYZ to get your job done and it doesn't cost us anything to do it, but we can't do it because the proper procedure is to wait until...).  That got me thinking that in order to make Spolsky's abstraction layer concept work management and IT (to name two) need to behave as customer driven organizations instead of operations driven organizations.  In other words, help me do my job instead of telling the rule that prevents me from doing my job. 

Some organizations have this down cold.  When I was at Intel I watched our engineering support team convert from operations to customer focused over the course of a few years and boy, did it make a huge difference!  We were able to work together as a team to modernize the compute environment of our remote site.  Strictly speaking, they did most of the work, but life was much easier for me since I just had to say things like "It would be helpful if our servers didn't crash on a regular basis" and they would come back after doing some research and say "We agree, we've contacted the hardware vendor, determined there's a known bug in the hardware, gotten a quote for new hardware at a deeply discounted price, and have a proposal ready to go for management to sign off on".  To which I would say, "Cool."  This attititude extended to things like getting software installed, backups restored, etc. 

Other organizations have serious problems.  Imagine an IT department explaining why they refused to backup data that took days to generate because it could always be reproduced later, or upper management refusing to hire an IT person in the first place because any engineer ought to know how to configure a rack of 30 servers, right?  I'm sure others could provide more interesting horror stories.  If anyone cares to share but doesn't want to have their name/email listed in the comment section here feel free to send me a mail at jl at coolverification dot com, and I'll share your stories anonymously (Cooley style).