The Swap Shop
Background
Normally the first thing I do in any engagement is to gain credibility and trust that I am there for the teams, not for me. To do this, I begin by exploring or conducting interviews on what the major pain points or problem areas are and then prioritize them based on feasibility to change, importance and those deepest in trouble. The first major problem was easy and didn't take long to surface. I was hearing complaints from the developers that the development servers were getting slower and slower each day.
Actions Taken
The first thing I did was meet with the manager responsible for the dev/production environments. I went into his office and asked him what was going on with the development environment and if he knew what the problem was. He said the development environment was running out of memory. Then showed me a 20 slide ppt deck he had prepared to justify the purchase of $30K worth of memory to the CIO. He also mentioned that the CIO had it on his desk but was refusing to approve it.
A couple days later development environment response time increased to infinity and all development had come to a halt.
My next stop was to drop by the CIO's office. Luckily his door was wide open. I walked in unannounced without introduction and asked him why he hadn't approved the $30K purchase of additional memory. He went off on a rant that he was tired of being nickel and dimed with purchase requests for additional hardware/software. Sometimes you just need to let folks vent. I patiently listened and sympathized with all the points he was making. I then quietly told him that he had 40 developers sitting on their hands not doing any work. He then said he would approve the purchase request and I thanked him.
Resulting Context
The next day I went in to see the manager who was responsible for the environments again to check if any progress had been made. He told me they overnighted the memory and installed it. I then asked which environments? Turns out he only installed half of the memory to the dev environment. And had to install the second half in production because the production server had the same memory swapping problem as development. Uggh.
I later found out that swapping computer boards and parts in order to keep things running was pretty common and continuing to do this will cause more outages because reliability goes down. All due to the tight controls on purchase requests by the CIO.
The good news was the developers were able to do their work again. And I had gained their trust.
Takeaways
At the beginning of any engagement or addition to a new team, find a major problem and do whatever it takes to solve the problem.
Don't boil the ocean. Find the minimal solution that will ease the pain.
Keep your eye on the final solution and look for opportunities to resolve it. In this case, the CIO's reluctance to invest in dev, test and production environments.