For Effective Tech Teams, Being “Agile” is More than a Methodology
Over many conversations with technology leaders and managers, I have realized that the term ‘agile software development’ has become synonymous with agile methodologies like Extreme Programming (XP), SCRUM, Lean Development and more. While that by itself is not a problem, not realizing that successful agile software development also requires a significant mindset shift and a leadership style shift from traditional software development is, in fact, a serious problem.
No methodology or process by itself can guarantee results, unless it is applied in the right way in the context of the business needs and has the buy-in of the team members. Understanding the difference between 'being agile' and 'doing agile' is critical.
Tech leaders and scrum masters need to realize that every new product and every software team that builds the product is unique. While they can (and should) lean on past experience to come up with an initial set of methodologies, they need to be constantly on the lookout to make changes based on what they are seeing and hearing from the team.Six Habits of Highly Effective Technology Teams
Agility = Adjusting and Adapting to Situations
Technology leaders who understand the business drivers and end user needs that drive the product tend to drive adoption of methodologies in a way that makes sense to the current context. They realize that ‘one size does not fit all’ and are bold enough to tweak defined methodologies in ways that brings about maximum efficiency.
For example, there are times where strict adherence to a sprint deadline might not make sense from a time to market perspective. Textbooks on methodologies might teach us to be rigid on sprint deadlines, but while that might hold good for most situations, some amount of judgement has to be applied where customer needs and time to market requirements demand flexibility.
Making case by case exceptions and then learning from the experience to ensure those exceptions don’t have to be made again is the key to coming up with processes that works well for that context.Six Habits of Highly Effective Technology Teams
Agility is More than Checking Items Off a Checklist
Teams tend to fall into the trap of going through the motions and checking items off a list just to stay compliant with expectations of their scrum masters without actually leveraging the best practices to learn and constantly improve.
An example of this is how sprint grooming and sprint retrospectives tend to become just items on a checklist that just have to be completed for the sake of process adherence. I have heard of teams who exit these critical meetings at the end of the allocated time, even when the right amount of detail is not available to develop the product or the right leanings have not been obtained from retrospective meetings. These teams (and their leaders) tend to look at these meetings as a necessary evil instead of critical sessions where continuous improvement is fueled.
Well defined touch points and reviews from outside the teams will ensure that these key meetings are used to drive required process changes.Why Tech Teams Should Partner With Product Managers
New England Patriots head coach Bill Belichick has said that “Leadership means building a team that's exhaustively prepared, but able to adjust in an instant.”
For technology leaders, ensuring that their teams are exhaustively prepared translates to process definition, process coaching, tools availability and skills training. Leaders also need to go beyond that and ensure that the teams have the mindset to adjust instantly when the situation demands it.
Agility happens in the most effective way when technology teams understand customer needs, partner effectively with product managers and are able to constantly adjust and adapt based on the business needs. Technology leaders can make this happen by taking time to coach their teams proactively on all these key areas.