There is a trend in the agile/scrum world to focus on soft skills rather than hard skills. When I talk to a typical “agile coach” or “agile transformational coach,” they are able to summarize scrum and might have some good skills on organizational change, dealing with resistance and getting introverted developers to talk. These are soft skills, important but limited. The lack of hard skills (e.g., requirements, design, estimation, risk management, and verification) leads to chronic quality and schedule problems.
Consistent and excellent results comes from a balance of hard and soft skills. If in doubt, ask your mechanic, plumber, or surgeon if they have hard skills, soft skills, or both. Beware if your surgeon only has a sharp knife and soft skills!
When I ask an agile coach, scrum team, or scrum master, “How do you write a great backlog, beyond one-line user stories?”, “What practices do you use to find defects throughout the project?”, “How should the team baseline and version its backlog?”, or “What design practices do you recommend to reduce design errors?” there is silence.
The people in question are very capable and bright; they just don’t have those hard skills. They know the scrum framework, and the developers know how to code, often exceptionally well, but in terms of skills to manage and engineer the work (for which coding is one practice), not so much.
Why does this matter?
The results of the project and organization are based on the engineering, technical, and management skills of the teams. Exceptional developers can do exceptional work, but in chaos, their potential is limited. Success isn’t the result of one thing. It is the result of many practices and skills employed at the same time.
If you are having challenges with scrum, or another variation of agile, consider the problems you have faced in the last six months and the skill gaps that are the underlying cause.
Here is a list of example skills that are useful within a team:
- Goal setting
- Setting priorities
- Eliciting, writing, and analyzing requirements (user stories, use cases, exceptions, quality attributes, interfaces)
- Release planning
- Project planning
- Stakeholder management
- Risk management
- Communication and expectation-setting with stakeholders
- Schedule creation (dependencies, resource leveling)
- Work tracking, project status, and metrics
- Design practices
- Configuration management
- Coding (language and domain)
- Peer reviews and verification
- Supplier selection and management
What is another way to think about this?
If you bought a house, and it was just a wooden frame (no walls or roof), it would be clear that you have little protection against the slightest storm. Or similarly, a tree with no roots and leaves doesn’t have the stamina to hold up against the elements.
When you focus on the goals of the project, you naturally uncover problems in the way. These problems are solved by learning new practices and skills. Scrum is a framework designed to house these practices, but usually teams don’t go beyond the wood frame.
Look at the results of your Agile teams. What do they do well, and where do they have chronic problems? What does this tell you about their skills?
Neil Potter will be presenting a free webinar with ITMPI on November 16! Sign up here: 10 Leadership Practices to Lead Agile Teams: It Doesn’t Have to Be like Oil and Water!