At BlackBuck, we have a structure of dedicated teams for each business vertical. Our journey involves continuous improvement of our processes, adapting to evolving product requirements, and finding smarter ways to work, keeping in mind quick turnarounds, predictability, and quality over everything in mind.
Our approach to program management underwent a significant evolution.This article delves into the journey of transforming program management to suit the specific needs for better uptime and predictability.
To achieve 99.99% availability , we've done a comprehensive analysis of our delivery metrics, fine-tuned them to suit the diverse functions across teams. Additionally, we've delved deep into our software development life cycle , identifying areas for process improvement. By focusing on these key areas, we're committed to not only improving uptime but better our delivery predictability.
Planning our way through
Sprint Success Chronicles
Given our cross-team structure, we identified an opportunity to enhance our approach of measuring sprint delivery metrics.
While there are many standard tools for generating sprint reports we needed a cumulative sprint metrics report tailored to our cross-team functions.Putting the quality of our product as our top priority we wanted to build a structure to measure following parameters :
Utilisation: Total number of hours prioritised by total number of hours available in a sprint.
Adherence: Total number of released tasks by total number of tasks planned to be released in a sprint.
Delay Percentage: Total number of spillover hours by total number of prioritised hours in a sprint.
Quality of output: Total number of pO production bugs raised for a feature in a sprint by total number of test cases for that feature.
We noticed that all parameters are interconnected, delays often indicate issues with adherence and utilisation.
Above tailored report really helped in measurement of all the parameters (Adherence, Utilisation, Delay, Quality of Output) and with opportunity to be more efficient.
Streamlining Team Priorities
While each team operates with its own charter, our services are interconnected, which requires collaboration during the development phase. This interdependency sometime creates communication gap in calling out the dependencies and prioritising tasks across teams during planning phase.
To address this, we introduced cross-team sprint prioritisation sync ups at the start of the sprint to provide visibility of business priorities. Implementing a process for cross-team sprint prioritisation has significantly improved planning and collaboration. It has helped us to be more aligned on common goals, priorities and ensuring smoother execution.
Striking the Balance: Engineering and Business
In a startup where fundamental philosophy is to develop fast, deliver fast, we shouldn’t take quality of the product for granted.We needed to strike a balance in our development cycle where quality is also being prioritised.
To achieve this while operating with a lean team we needed a planned strategic approach.We divided our overall bandwidth in three categories:
80% for product development
15% for tech debts
5% for production support
Allocating bandwidth in such a manner has ensured that we are prioritising quality while delivering on the product front on time.
Timeline Tune-Up: Change Management
It is important to stay aligned with our product timelines and one of the major factors that affects those timelines are changing product requirements based on the continuous feedback that we have built with our customer over the years. By keeping a close eye on our sprint metrics we understood how these changes impact our project schedules.
To handle such scenarios more efficiently we have to alter our sprint planning in a way which allows us to adjust our plans, re-prioritise tasks, and re-allocate resources accordingly.
We have implemented above additional steps in our sprint to handle change requests in mid sprint without-impacting any major project timelines .
Cumulative Calendars
For better uptime and predictability we wanted to focus on timeline alignment and collaboration within our development team and product team while maintaining a smooth and uninterrupted user experience, but it can be challenging with frequent releases.
To provide new features to our customers seamlessly without bombarding them with new app updates, we've decided to schedule all of our updates from different teams. This way, we release all the new features together, according to a planned calendar, instead of having frequent, separate updates.
App Release Calendar: Suppose we have three releasable features and all hold different priority and estimates.
- X feature is release ready by the second day of the sprint.
- Y features will be release ready by the fifth day.
- The top-priority Z feature, though delayed slightly, will be ready for release two days after the sprint ends.
So above all three features will need 3 app updates pushed to customer in close vicinity of each other.We publish app release calendar upfront to ensure features are clubbed up and development and release planning can be done accordingly.
This ensures visibility and alignment between the Tech and Product to enhance our planning phase and to safeguard our execution and delivery from lack of clarity on timelines.
Sprint Prioritisation:
We have created a single representation of our spring planning.
All your team's sprint plans are beautifully laid out in a single, dynamic sheet. No more scattered plans, but a unified hub ensuring everyone is on the same page literally, like a well-coordinated dance troupe.
This ensures team alignment, facilitates more effective handling of multi-sprint items, aids in release planning, and provides visibility into overall bandwidth availability. Additionally, it streamlines efforts allocation between teams, fostering better collaboration.
This approach facilitates a harmonious synergy between frontend, backend and app development, painting a clear picture of our tech and product landscapes.
Goal Gauge Guidelines
Monthly Review Success Metrics:
Every month, we conduct a thorough review of our Sprint metrics, Key API metrics, and Uptime Trackers along with Quality metrics, with the leads of every business vertical. This ensures alignment with our goals and the fulfilment of business expectations.This process serves as a crucial checkpoint, enabling us to evaluate our progress. By analysing our metrics and outcomes, we can make necessary adjustments to optimise our output.
This isn't just about keeping track of things—it's about taking accountability and always looking for ways to do better. We had measures in place, but they were more focused on individual teams or services.We took a deep dive into our past sprint metrics and downtime incidents and identified areas where we could do better.
By fine-tuning our planning and execution phase, we've achieved significant outcome:
- Reduced delay percentage by 90%.
- Adherence to uptime SLA improved by 60%.
- Achieved a 20% improvement in the quality of outcomes.
This transformation of program management at BlackBuck epitomises the organisations unwavering commitment to innovation, efficiency, and customer-centricity. We looked closely at how we work and found ways to make it smoother and more efficient. Through better planning, cross-team collaboration and keeping quality as top priority, we achieved remarkable results, from reduced delays and improved uptime to enhanced predictability and higher-quality outcomes. As we continue to navigate the ever-evolving landscape of program management, we remain steadfast in our pursuit of excellence, guided by the lessons learned and the successes achieved along the way.
As BlackBuck evolves, our technology advances, further integrating us into truckers' daily routines. We are committed to adapting to the ever-changing landscape, ready to innovate new processes and technologies as needed. Keep an eye out for an inside look at our journey toward becoming an essential component of the trucking industry.
PS: Along with improved people processes, technology processes under the hood also got matured, to get more details on this refer to our blog titled Agile Development Meets High Availability at BlackBuck.