"An expert is someone who knows some of the worst mistakes that can be made in his subject, and how to avoid them."
- Werner Heisenberg
Over the last couple of years we have been transitioning all of our software development teams (as well as our data, marketing and even HR teams) over to agile methodologies for planning, managing, and performing work. We are seeing great improvements in productivity, improved quality, and even team member satisfaction, and while agile has a lot to do with this, I think there's another factor at play here. I think agile is unlocking the way deep expertise can positively impact our projects. I've received many comments from our clients over the years about the expertise our teams have brought into a challenging project through our engagements and solutions. Not often can you find a group of people who are deeply passionate and knowledgeable about diverse topics ranging from investment company complexities to the latest developments in automated build and deployment as you can with Kingland. I've seen our folks regularly contribute in ways that our clients truly appreciate, but now with Agile, something exciting is happening.
Agile is providing a consistent and disciplined way for our unique domain expertise to add value every day. For example when we build a team with a data expert, a cognitive engineer, a project manager guru, and an up and coming engineer, it's fun to watch how the interplay of skills and expertise work during a two week sprint. As you observe their daily stand up meetings you start to see the expertise coming to play every day. As issues come up, the team is able to work through them quicker, but beyond that, individuals are able to lend their expertise in the smallest of tasks. The following snippet of conversation from those meetings gives you some insight into the interplay of skills: "Great work on that hierarchy module, but we are going to want to consider non-traditional hierarchy types and inheritance use cases as we move forward. Let's get a placeholder in the backlog and I'll meet with you later today to tell you what I mean."
Did interaction like this happen in traditional waterfall projects? Kind of. The presumption of those more traditional SDLC models is that if you do a thorough enough job with requirements and have your experts involved, you'll have a much more complete view of what's required and can plan appropriately. The challenge though, is that's not exactly how experts think best. Many times if individuals with expertise are actively engaged throughout a project they can make smaller and impactful contributions regularly, and the combination of those small contributions can really add up over a multi-month release. My view is this daily injection of expertise is one of the reasons we are seeing more productivity, fewer defects, and more excitement on our teams. Agile is promoting problem solving in a much more practical way.
This sounds great, but the one caution I would have for industry leaders is you need to think carefully about team composition. While expertise can really help agile teams, expertise by its very nature is rare and difficult to spread around. Two approaches can work:
There's nothing I love more than to see our teams deliver well. Our Kingland Way video shares how we enable our experts to be creative and pragmatic in the work we do.