How have we improved the predictability and controllability of projects in an IT company? Case

Author of the article: Dmitry Kurdyumov

Participated in Agile transformations in the largest companies in Russia (Alfa Bank, MTS, X5 retail group), with international experience in startups abroad

I was invited as an expert in the implementation of flexible management approaches to an IT company developing solutions in the B2B field. The main task was to set up project management processes, make them predictable and manageable. Before the start of cooperation, the company faced many problems: deadlines were regularly missed, clients were dissatisfied, projects could “hang” in work for up to 8 months without completion, and the team experienced serious overload due to parallel work on several tasks.

All this led to dissatisfaction both within the team and among clients, who often received false promises on deadlines. The main task was create a predictable processwhich would allow the company not to make false promises to customers and complete projects on time. We started with implementation kanban methodwhich made it possible to quickly make changes to the company’s work and make the process more manageable.

Stage 1: Visualization of work

The first step in solving the problem was to create process transparency. We started with visualization of all current work on a kanban board. This step turned out to be especially important, since it was the visualization that helped quickly understand the company’s main problems.

We took all the projects the team was working on and divided them into user storiesthat were at work. Each task that at the time of visualization did not have any planned actions for the next 24 hours was marked with a red sticker. The result was shocking: almost the entire board was covered with red sticky notes, which showed that the team had taken on too many tasks that it did not have time to complete.

This was the first signal to all participants in the process that the company was trying to do more than it was capable of. The system was overloaded with tasks, which prevented the team from moving forward effectively.

Stage 2: Limit concurrent work

After the visualization showed the seriousness of the problem, we agreed with the team that we would temporarily stop taking on new projects and tasks. The decision was made to focus on completing current tasks to reduce team overload and learn how to get work done.

For this we introduced limit on the amount of work performed simultaneously at every stage. This was one of the key steps, since it was the introduction of limits that allowed the team to switch from a “start everything at once” model to a “finish before starting something new” model. A month after implementing this approach, the team experienced significant improvement: work became more dynamic, tasks began to be completed faster, and the team began to see real results from their work.

Stage 3: Aligning task flow with team productivity

The next step was to align the flow of work with the team's productivity. We reached the point where there were exactly as many tasks left on the board as the team could process in a unit of time. This allowed not only balance the loadbut also speed up the completion of projects. Customers who previously faced long delays were forced to line up. We stopped taking on new tasks and projects until the current ones were completed, which significantly increased the predictability of deadlines.

The team began working on projects sequentially, with a maximum of two projects in parallel. This immediately yielded results: tasks stopped accumulating, and projects began to be completed faster, which made it possible to better predict timing.

Stage 4: Create two Kanban boards

To effectively manage work, we have created two separate kanban boards:

  • First board displayed current projects and was used to synchronize with managers and top management of the company. Project priorities, problems and delays were discussed here, as well as where help was needed to speed up tasks. This allowed us to reduce decision-making time and make communication within the company more transparent.

  • Second board was intended for development teams and displayed the user stories that needed to be implemented within each project. On this board, we also introduced a limit on the number of tasks that can be completed simultaneously. Daily team meetings were held on this board, where the plan for the day and the team's focus were discussed. This made it possible to quickly see where delays were occurring and which tasks required intervention.

Regular meetings on the second board helped the team communicate better and also make decisions faster, which allowed for faster problem solving and improved teamwork. If someone on the team was overloaded or couldn't keep up with tasks, other team members stepped in to help.

Stage 5: Collecting statistics and improving forecasting

In parallel with introducing restrictions and optimizing processes, we began collect statistics on the execution time of each user story. This turned out to be important for later forecasting the completion time of the entire project, as it allowed us to more accurately estimate how long each individual task would take to complete.

The transparent system allowed us to immediately see bottlenecks in progress. For example, it turned out that one of the main bottlenecks was in testing. Development proceeded quickly, but many tasks got stuck at the testing stage. This was the first step towards forming a list of improvements that we gradually introduced into the process.

Results

As a result of the changes, the following improvements were achieved:

  1. Delivery predictability. It was possible to achieve predictable project deliveries with a 90% probability. Project completion times now ranged from 2 to 4 months depending on the scope of work, but most importantly, the team could confidently predict the project completion date. Previously, projects could “hang” in work for up to 8 months, which led to customer dissatisfaction.

  2. Transparency of the development process. Transparency of the development process increased from 4 to 9 on a 10-point scale. This was confirmed by a before-and-after cross-section that I conducted in the form of surveys among team members and management.

  3. Make changes easier. Thanks to the regular connection of customers every 2-3 weeks, making changes to the development process has become easier and faster. This allowed us to maintain flexibility and adapt to changing requirements without significant disruption to operations.

  4. Improving communication within the team. Team members began to actively help each other at different stages of work. For example, if there was a problem during the testing phase, an analyst or developer could jump in and help solve problems. This not only speeded up the work, but also brought the team together.

  5. Team satisfaction. The team's satisfaction level increased from 3 to 8 on a 10-point scale. Before the changes were implemented, employees were heavily overloaded, felt pressure from management and did not see the results of their work. As a result of optimization, they began to see the results of their efforts more often, and trust from management increased significantly.

Conclusion

Application kanban method helped not only to restore order in the team’s work, but also to make processes more manageable and predictable. Visualization of tasks, limiting concurrent work, daily synchronization and collection of execution time data allowed the team to quickly adapt to changes and build a transparent development process.

This has led to significant improvements in metrics ranging from employee satisfaction to customer trust. Such simple but consistent steps made the development process not only efficient, but also flexible, ready for further improvements and adaptation to new challenges.

If you liked this article and want to learn more about similar practices, join my Telegram channelwhere I share insights and useful tips on Agile and project management.


OTUS experts talk more about development management in practical online courses. With a complete catalog of courses you can check out the link.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *