We (Matt Hinze) and I were asked to put together a list of questions that could identify common pains and troubles that development teams feel. Here is a list of some questions that identify symptoms that a development organization is in need of some help. This help may be in the need of guidance or support from the management team to let them do the right thing.
If you answer Yes to these…. You need to give your teams moral support and financial help.
- Does your team roll back deployments of custom software applications because of quality or unforeseen side-effects to existing functionality in the application?
- Does your team consistently work weekends and nights to meet project deadlines?
- When your team deploys a new application or an update, are they fixing bugs after the deployment?
- When a team members leaves the company, is there a panic to turn over knowledge to someone else?
- If yes. When this happens do you feel that the replacement is going to have to “Step-Up” to meet this new challenging role?
- Does a small change to an application cause a ripple of changes in other systems, transforming a seemingly small task into a large, organization-wide project?
- Are there one or two team members that keep your organization and application systems running?
- Does supporting one or two systems consume the majority of your operational budget?
- Do projects go over budget or get delayed because of scope creep?
- Do your custom applications get deployed with incremental features or do they deploy yearly with all the outstanding change requests?
- Do you have your best people working on your biggest problems?
If you answer No to these… You should change your position on how your support your developers.
- Do your developers participate in the local developer community?
- Are they encouraged to?
- Do your development teams innovate, hoping to deliver more value to your customers?
I have been lucky enough in my career to work, for product companies, consulting companies, and as a developer and manager in a enterprise. I have had the chance to see these problems from all angles and I can understand how easy it is to get into a situation where you can live with the problems described by these questions. As a developer working for an organization that allows the habits and lack of process to wear on the Hero developers keeping the ship afloat it is a horrible experience. One in which the first thing you do every morning is look at the email alert from Dice.com and Monster.com. That should really frighten the management that runs these organizations….
I have found that it does not have to be like this, and getting out of the mess takes some work, but it is possible and it can be done with time or money, or both. It cannot be done without one of those two… It does take courage from the managers to support your lead developers who know what the right thing to do. Unfortunately, managers rarely look at the long term health of their team and the applications that they support. It is a sad state when that happens and we should be embarrassed that it is all to common in our industry.