We start this episode, reflecting on Tim’s journey of realizing the importance of working collaboratively and embracing agile methodologies. Tim noticed early on that he drifted to teaching and providing assistance to others rather than actively developing software. After a while, he moved to consulting in Agile, and in that role, he noticed recurring patterns and struggled with unclogging processes that seemed to be missing something crucial. Over time, frustration set in. He felt like he was fighting an uphill battle and highlighted the disruptive nature of Agile, which aimed to uncover and solve problems but often revealed bigger and deeper underlying issues.
The big problem with Agile adoption, and what we can do to prepare for it
With time and experience, Tim realized that leadership was a crucial factor in the team’s success. He observed a recurring pattern where leadership was either blocking progress or not fulfilling their role effectively. This realization led him to recognize the significance of leadership’s involvement and the impact it had on the overall performance of the team.
From developer, to coach, and finally to leader: learning to help teams at all levels of the organization
Tim shares his journey at WeMaintain and discusses the challenges of scaling while maintaining agility. Before joining, and during the interview process, Tim already sought to identify the problems he could help solve but couldn’t pinpoint a specific issue. His boss expressed concerns about managing fast growth while staying agile. Initially, WeMaintain had two teams working efficiently from a backlog, releasing frequently, and measuring their progress. But, they wanted to grow the company without resorting to a traditional approach of multiple teams working on the same problem, which often led to communication issues. Instead, they advocated for compartmentalized teams with strong ownership and defined success metrics for each team based on specific business streams. Each team had the necessary skills and accountability to achieve their success metrics, ensuring a shared responsibility for success.
From coach to leader, and the critical lessons learned on the way
Tim reflects on the differences between his current approach and what he observed in the past, when he was the coach trying to help teams and organizations. He emphasizes the importance of taking personal responsibility as a leader when facing problems within a team. Previously, their clients would assume that the leaders were right and focused only on changing the teams, and he wanted to avoid that anti-pattern at all costs. Tim shares the tip of starting with leadership and establishing a clear vision, emphasizing the impact of lacking a clear vision and passionate individuals on the organization. When it comes to reflecting on our performance, Tim recommends evaluating oneself against the 12 principles of the Agile Manifesto and highlights the necessity of enabling developers to communicate directly with customers to foster agility.
Scaling with Agility: Building Compartmentalized Teams and other strategies for growing companies, and staying Agile
Tim’s current focus is on stream-aligned teams and metrics. Tim recommends the book “Team Topologies”, whose authors have been guests on the podcast. Tim also shares the tip of asking teams to create a portfolio of metrics that demonstrate they are working on the right things. Various teams have found interesting metrics to track their progress. The PDCA cycle and DORA (DevOps Readiness Assessment) metrics are mentioned. The guest highlights a positive sign of organizational health, with a rate of 1.5 deployments per day across the entire product group. They suggest having frequent discussions with people throughout the organization and implementing practices like showcasing Monday morning deliveries and sharing post-release messages on Slack as early documentation for stakeholders. The book “Accelerate” is also recommended for further insights into metrics.
In this final segment, we also refer to Extreme Programming.
About Tim Bourguignon
Tim is a software leader and mentor who enjoys pushing people to reflect on their journey. He leads the product engineering for a French PropTech startup called WeMaintain and has hosted the Software Developer’s Journey podcast since 2016. Tim’s also been on the podcast before, and also hosted a French language series on the podcast.