Thursday, June 5, 2014

Your organization as a sports team

The World Cup in Brazil is about to start and after reading the leading articles about the various team’s line-ups and alignments, I was reminded that there is nothing like the world of sports to serve as an analogy about the importance of structuring a team in accordance with skills. Take for instance Manchester United (MU), one of the world’s top football franchises. MU comfortably won the 2012 English Premiere League championship under the direction of Sir Alex Ferguson.  When Sir Ferguson retired, his assistant was promoted to the coaching role with essentially the same team, but they ended up with an embarrassing seventh place the following season. What gives?
It turns out more often than not that actual results are more dependent not on who is on your team, but on how available skills are used.
I once took over a team that had the reputation of failing to deliver on time. When I analyzed the issue, I discovered that the group had been working under a single development pipeline and, as a result, strategic deliverables were being impacted by the team’s need to do short term firefighting and to address urgent tactical requirements. I also discovered that, although most of the developers where extremely professional and were working very hard, each resource was not necessarily being assigned to the task most aligned to her skills.
It often comes as a surprise to technology dilettantes that not all computer folks are the same. A former CFO initially turned down my request to hire a DBA, given that I already had plenty of “IT guys” doing the PC support stuff (he did approve it once I explained the difference!). Behind the presumably geeky-look of a software developer may lie someone whose core strength is the ability to methodically reverse engineer others people’s code, or someone more attuned to creating highly optimized algorithms; others might be more comfortable dealing with data or with user interfaces.
Our role as leaders is to motivate the team, but we also have a role as managers to make sure each resource is given a role that ensures the highest potential. During my diligence, I found that some team members wanted to serve as team leaders rather than being hands-on developers; whereas others who just wanted to code were being asked to manage others.  Understanding the actual strengths and ambitions of every member is essential. This is an area where you can partner with your HR department to gain a meaningful perspective of all technical assets at your disposal.
As in sports, some of your best players are those who can serve in more than one role, but most typically, you will need to diagnose the strengths of each individual contributor. Just as in American football when you would not position a small player as a defensive lineman or a 340 pound player as quarterback, you would not place someone whose expertize is XML or JavaScript as a data base administrator.
In the end, I solved the problem by splitting the team into two groups: one responsible for all tactical, periodic development deliverables (this included software maintenance), and the other responsible for the larger strategic initiatives. The result of managing two separate delivery pipelines was very successful. After this change, target dates for larger projects were met as well as the deployment of several tactical deliverables. Obviously, the situation was not static (another good reason not to use robots as managers!).   The ongoing process must involve assessing each individual’s transfer and reassignment from one function to another; identifying training needs and mentoring team members so that they can progress in line with (realistic) career objectives while best serving the interest of the organization. In other words, doing the business of managing.
When it comes to IT transformation, part of the process is identifying skill gaps as they pertain to your strategy. This is why it is so important to have a realistic strategy along a well-defined high level architecture.  Calling for a system based on LAMP when the majority of your team has a .NET provenance is asking for trouble. In any case, you will no doubt need to plan for needed re-training, particularly if you are introducing emergent technologies. You may want to check a previous blog of mine on training. In any event, part of the strategy is to identify how you will close these gaps. Sometimes you will hire the needed resource, not unlike a coach during the drafting season. Others, you will consider reaching for external consultants, sub-contractors or by doing outright outsourcing, especially if the need is only temporary. The diagram below was depicted on an earlier blog of mine dealing with the sub-contracting and outsourcing topics.  Only you can make your core team shine!