Decentralize the Junk
I’ve been thinking about how infrastructure teams can get more from their employees. There are all kinds of things you can assign people to take care of: backups, security, patching, deployments, new systems design, daily administration, monitoring….the list just keeps going. Some of the stuff is really easy to do, like patching, but when you patch 1000 machines a month, even if each one only takes a few minutes to analyze, you suddenly have a big job on your hands.
Lots of work has gone into making these things easier. Automation, centralized management systems, and nice GUIs are available for basically any product that does this kind of work. For example, your company may buy SCCM to help deploy software and it comes with everything. There’s a nice GUI you can use for one-off kinds of things. There are PowerShell cmdlets you can use for scripting stuff out. There is reporting built in that you can use to investigate deployment steps that didn’t work the way you thought they would. It’s a very big package, but everything is covered. That way, one person can handle basically all software deployments for a big company with 1000s of client machines. Pretty cool.
My question, though, is why do we really expect central IT to do all this stuff for us? For software deployments, every person working on a computer should have the requisite knowledge to download and install a new software upgrade in a timely manner. Why do we need all this stuff to make it automatic? Can’t central IT simply send out a communication saying, “Do it within a month”, and then report against it to find the exceptions, until everyone is done?
Can’t we do the same thing with Windows Updates? Every one of the employees has a PC or Mac or, at least, a smartphone at home, and they have to do these things there. Nothing is different in the office.
Can’t we do the same with backups? If you are the owner of an application, say the security camera system, should it not be your responsibility to make sure the configuration is backed up regularly? If it isn’t, why should you get to point to IT as the problem, when the fact is, YOU let it slip?
What about daily administration? If you are in payroll and have to deal with a payroll system, shouldn’t you be the one to add/remove users from it? Why should there be a designated support person in IT for it? What about a CRM system? Can’t someone in sales take care of that?
Some of these things, such as the payroll admin work, are probably already delegated to the right departments, but there are many IT departments that still have to deal with this kind of stuff. Wouldn’t it make more sense for everyone, if instead of doing the work, IT just provided the tools, policy, and reporting so the “owners” could do the work? It would save a ton of employees in the IT department, thereby saving money. It would eliminate a bunch of conference calls, used for the owners and IT and anyone else to “get on the same page” about who does what. It would force responsibility for the work to the actual people who really do need to show ownership of it anyway.
I just find this to be a no brainer. Give me the tools, tell me the requirements, and let me be the one to do the work. If I’m the owner and it blows up, I have a lot fewer directions to point my finger to blame. It also provides me CONTROL OVER MY OWN DESTINY. If I don’t regularly backup, update, and maintain my stuff, that’s on ME.
I just like it this way better. Sure, IT may have to reduce the number of services they provide, but that’s fine, as the work is going to the right place. At Miller, that was called “Making Decisions at the Right Level”, and it’s proven to be a better way.