Monday, July 31, 2023

Moving to an Agile Mindset


Written by Jack Heath, Information Security Engineer, 2023

Establishing agile teams is hard, especially when the corporate culture is predominantly waterfall. But continuous improvement is a hallmark requirement for an agile methodology to succeed and that means agile teams are grown, not made. Focusing on communication, collaboration, self-sufficiency, metrics, and scope of work; not just the expectation of exceptional results day one is critical. But, transitioning to an agile team isn't just hard for those on the team, it also requires a significant mindset change for leadership. For the process to succeed, both team members and management must support the agile environment and work to reduce the complexity of cross team communication. Furthermore, Diversity in skill sets and perspectives are a crucial part of running a well-rounded agile team, so it will also be hard at first to move forward if there is a mindset on the part of leadership that all work is universally quantifiable on day one.

General Rules for Starting Any Agile Method

1. Manager Buy-In to the Transition Must be Enforced

This is a critical first step in transitioning to an agile framework. Leadership must be receptive to change and willing to let go of some control, empowering Level 1 (L1) teams to manage their own processes and tasks. This shift requires managers to accept and encourage pushback on deliverables, fostering an environment where team members feel confident to express their concerns and suggest improvements. Managerial support and flexibility are essential to create a culture that embraces agile principles and ensures successful implementation. Often a company will attempt to move to agile first at the L1 level because it's easier. But this often just delays obvious and critical blockers to migration later resulting in waterfall methodologies deployed under Kanban boards with significant duplication and excessive meetings.

2. Lines of Communication Must be Cleared

Reflecting on and improving communication strategies regularly allows for better understanding and alignment on project goals and technical solutions. Team members should feel empowered to voice their opinions and concerns, while managers should provide constructive feedback. This mutual understanding fosters a collaborative environment where everyone is clear on the project expectations and outcomes. Effective communication is the cornerstone of any successful agile team. High-performing agile teams prioritize open and transparent communication among team members and between the team and management. 

3. Metrics Must Properly Reflect Effort

Things will take the time they take, and different tasks take different amounts of time. In an agile team, stories need to address items fairly and leadership should not be setting an expectation to produce deliverables at a given rate or a certain number of deliverables by a specific time; this needs to be done at the team level. When dictated by leadership, it can force teams to prioritize low-hanging fruit over blocked (but critical) items and create the illusion the project is advancing faster than it is.

It is important to track the health of the agile team itself. Metrics such as sprint burndown, epic and release burndown, team velocity, control charts, cumulative flow diagrams, and release frequency can help teams set measurable goals for themselves. However, these metrics should not be used by leadership to determine productivity overall. Agile teams need the ability to continuously improve their processes and collaboration. Leadership should focus more on overall team performance and the quality of the deliverables they receive.

4. Unique Skillsets are OK, Even Essential

It's a premise on the part of leadership that "everyone be replaceable" under agile. But while cross-training is important, a cross-functional team comprises individuals from different functional areas within the company. These teams are empowered to make decisions at a lower level, allowing them to control the entire scope of a project from start to finish. For a cross-functional agile team to succeed, everyone can't do everything. The team must consist of individuals with both shared and complementary skill sets. This diversity allows team members to assist each other on various features or projects without relying on external resources. 

Often there is pressure from management to cross-train everyone to make a one-size fits all work queue. But specialized team members facilitate balanced workloads, encourage greater appreciation and respect for each other’s contributions, gives individual team members a sense of value, and enhances overall project success.

5. Favor Collaboration Instead of Oversight

Collaboration is vital in agile environments. Agile teams operate in short iterations, or sprints, that demand close collaboration not only within the team, but also with other teams and business partners. This collaborative approach ensures that everyone is aligned and working towards the same goals. Agile teams understand that project success relies on collective effort rather than isolated tasks handed from one team to another. Regular feedback loops and the ability to adapt quickly are essential. A big part of leadership’s obligation therefore revolves around reducing siloed procedural steps, complex cross-team intake procedures, and not adding large amounts of approval overhead to the change process.

6. Encourage Autonomy and Self-Sufficiency

For an agile team to thrive, it must be self-organizing and self-sufficient. Team members should be capable of determining their tasks and organizing meetings with minimal guidance from higher-level executives. This autonomy leads to consistent performance and better results for the organization.

To support self-sufficiency, agile teams often use project management tools to plan their sprints and manage tasks independently. This approach reduces the need for traditional managers to interject themselves as approvers and empowers teams to take ownership of their work.

In Summary

The success of an agile transformation hinges on top-down support. Agile requires a shift in expectations about team operations and necessitates leadership stepping back to allow teams the autonomy and time they need to thrive. This means managers must trust the process, remove themselves from approval workflows, and allow agile practices to take root, which is challenging when critical projects impose tight timelines and resource constraints. But it can also make them wonder where their place is in the new process.

Managers are needed. Because achieving this requires their leadership to focus on other leaders, on clearing blockers, facilitating agile processes, and avoiding anti-patterns. But the teams have to control their workflows, approval processes, and be given the flexibility around task management. Without this, it isn't agile. With it, building a high-performing agile team becomes quite manageable.