The end of 2008 presents us with a very weak economy. We hear the words economic crisis, gloomy outlook, recession, and economic decline in the news again and again. We are also seeing small to massive layoffs in a number of sectors and IT is certainly not immune. The question for those CM'ers in light of this economic downturn is how do I adjust my configuration management (CM) planning for the coming year when budgets are being slashed and projects are being cancelled?
It can be tough to focus on how to handle a downturn especially when this may imply staff reductions. However, this is the reality in today's market. This is where it is very important to factor the economy into our CM planning. The key is to make adjustments in a methodical and objective manner while at the same time continue to advocate for CM whenever possible. Here are some steps that can help you consider the changes around you and how to apply them to the planning process for the upcoming year. Also, as the year progresses, it is important to periodically visit the steps provided and adjust accordingly.
Consolidate the Work
The first thing to do is to consolidate the known CM work. Get a good snapshot of the work load separating the "keep the trains running work" (a.k.a., non-discretionary) from the "advance into the future work" (a.k.a., discretionary). Effectively, you are determining what is non-discretionary work versus discretionary.
Non-discretionary work is the core work that must continue to keep the company afloat or work that your company cannot live without. In the case of CM, an example of non-discretionary work is to maintain the code repositories and continue the builds and releases. While this is not a definitive list, it is important for you to identify what your non-discretionary list of work includes and be ready to explain the importance.
We have to be cautious here because I have seen a few cases where companies think they no longer need CM at all (e.g., they consider it discretionary). This can be disastrous in the long run. However, the key takeaway is that there will be varying levels of CM understanding by your senior management so do not be surprised if they think they can cut something that may be critical to the integrity of CM. Be ready to explain the importance of what you believe to be the non-discretionary parts of CM within the company.
Discretionary work is the work that improves the service or capability of the organization but would not impact the core running of the company if it did not occur. In the case of CM, this could be work to create a CM coop environment, to automate processes, and to introduce new CM tools. While this is not a definitive list, it is important for you to identify what your discretionary work list includes.
As you list both the non-discretionary and the discretionary work, it is important to list the skills needed to complete the work. This will be important as you consider the staff needed to perform the work. Typically there is a need for more skilled resources to complete discretionary work since this typically involves designing, architecting, and scripting improvements and establishing new processes while non-discretionary work typically involves utilizing and repeating the processes already in place.
Prioritize the Work
The next action is to prioritize the CM work. The non-discretionary work should rise to the top of the priority list. The challenge becomes how to prioritize the work in the discretionary work list. A good formula to use is to indicate the amount of effort in hours to perform the work, include any outgoing costs to the company to initiate or complete the work, and estimate the payback or benefit of completing the work. For example, a discretionary task may be to automate the build process. The formula would read:
- The effort in hours to automate the build process is 160 hours (from planning to designing to scripting to testing)
- The outgoing costs are none since there are no tools being purchased
- The benefits in a calendar month frees up 10 hours a week of a Build Engineer's time or 480 hours in a calendar year
- This means that the effort to complete the task would pay for itself in 4 months leaving 8 effort months in a calendar year available for other work.
Rank the People
If you are in management or leadership, you often get the distasteful task of ranking your people. However, in my experience, if a CM Manager or Lead does not do it, then someone who has much less knowledge of the CM personnel will do so which can be very dangerous. If you have been in the CM field long enough, you learn that during a downturn in the economy, cuts can happen to the CM team whether you like it to or not. Of course staff cuts are typically occurring at all levels so this should be of no surprise.
CM Managers or folks who lead CM teams have to make the hard decision to rank order their staff based on their skills and experience. A good way to start this process is establish a skills matrix listing the various skills that are needed for CM work and indicate the level of experience the people have. A simple example of a skills matrix is:
CM Skills Matrix | Employee A | Employee B | Employee C |
AccuRev | 5 | 4 | 2 |
Scripting | 5 | 4 | 3 |
Makefile | 3 | 3 | 5 |
As you review your skills matrix, you may also include another field (or column) and that is the cost of the resource. Unfortunately during a downturn in the economy, cost is a factor. However, I have seen in some cases where the reduction is more a factor of a headcount number than the cost of the headcount. If cost is the driving factor, then including the cost of the resource on this matrix is important. If the driving factor is number of headcount, then while it still may be a good idea to include the cost of the resource, the skills become more of a deciding factor.
Within this framework, a senior person does not necessarily have precedence over a mid-level or junior person. This is because as you consider moving forward with less staff, it is important to align the staff with the work ahead. As an example, if you have to halt all discretionary work, then not as many senior skills are needed. Another example using the matrix above, Employee B appears to have better overall skills than Employee C. However, if the discretionary work of Makefile improvements takes a high priority, then Employee C with better Makefile skills may be preferred over Employee B.
Advocate for CM
Now is also the time to either visibly or subtly advocate for CM. The objective to advocating is to either keep staffing levels status quo or reduce as little as possible. During these downturns, many managers are advocating for their groups or functions in order to minimize the potential number of staff reductions. CM'ers should do the same if it is possible. Indicate the importance of the non-discretionary work. Indicate the advantages of some of the more important discretionary work and how it can benefit the company or reduce costs in the long run. The amount of positive impact this campaigning will have will vary. It is also important to note that there are various ways to advocate for CM and a lot of it is subtle. Individually talk to engineering managers highlighting where CM has helped them out of trouble in the past and how CM can help them in the future.
Summary
As the economy gets tough, it is important to make adjustments in planning. In general, the more regular you are in adjusting for changes whether they be the economy or project needs, the more successful you will be. Adjustments to planning can take the form of a balancing act between identifying the type of work you have, prioritizing it, and understanding the skills on the team. By applying an objective approach, you will better be able to more objectively handle cost and staff reductions when they are thrust upon you. It is always better for those who understand CM to help make the unenviable decisions of staff reductions than those who do not. Ultimately, it is important to be in a position to adjust your CM planning so that you have the resources that best meets your needs according to the work moving into the future.