IT product company (England, UK).
JazzTeam specialists joined the development of the customer’s product, complementing its distributed team. Having immersed ourselves in the processes and technical features, we realized that the project was at a critical point. The most sophisticated ERP system had a large codebase and a huge number of various modules. CI/CD and test automation were not implemented on the project. This significantly complicated the process of scaling up and further development of the software because bugs kept appearing when making changes. Any changes and attempts to expand the functionality led to delays in releases.
In addition to technical difficulties, the project also had problems with the organization of processes (business analysis, testing, and delivery processes were not established). The founders focused on long-term business goals without solving problems that needed to be eliminated as quickly as possible.
This state of affairs affected the psychological atmosphere in the team. Learned helplessness, high toxicity, misunderstandings, and conflicts all led to working under permanent stress.
JazzTeam specialists understood that further evolutionary development of the product under such conditions would be impossible. Therefore, our manager faced a really difficult challenge, which was to implement best practices of development and testing, to change the psychological atmosphere in the team, and to change the culture on the project, all while ensuring that JazzTeam engineers are performing well on the main tasks that have been assigned to our company.
- Working in a distributed team, the participants of which are in completely different parts of the world and time zones.
Approaches and solutions
- JazzTeam manager’s proactive position. Proactivity and the desire to add value are important components of JazzTeam’s culture, and are what often make us stand out from other service providers. We deeply assess problems of a project, and analyze what is missing and what can be improved without compromising the productivity of developers. In this case, it was necessary to start implementing test automation, continuous integration, delivery, and competent test management as soon as possible. In addition to the main tasks related to the delivery of new functionality, the JazzTeam manager constantly focused on the practices that needed to be implemented and what results this could bring. They also communicated with the founders and the team. Our specialists conducted small studies to confirm the objectivity of our vision. This message was opposed to the management approaches of other teams working on the project. It took us six months to get the founder’s approval for the changes. However, the customer saw and appreciated our proactivity, and also gave their approval for the gradual improvement of processes and the technical side of the project.
- Initiation of works on technical debt elimination. After receiving the customer’s approval, we gradually started working on the accumulated technical debt. We launched the following activities:
All innovations were introduced gradually in short iterations, and showed measurable, concrete results. This allowed us to constantly achieve small successes, which motivated the team to work for results.
- Improvement and optimization of processes on the project. In addition to improving the project’s technical side, the following processes had to be improved:
- Scrum methodology implementation. Daily standups, regular demos, and retrospectives increased the level of synchronization of the distributed team and contributed to the achievement of a common understanding of current problems, statuses, and issues. The opinion of all project participants was heard and taken into account. This helped to improve the psychological climate and overcome learned helplessness of the engineers.
- The introduction of Jira best practices improved the transparency of reporting and increased the level of project management.
Results and achievements
- The team implemented best practices of development and testing. By applying the best approaches adopted as a rule in JazzTeam, we could extend our influence to the entire distributed team and significantly improve the situation on the project as a whole. Our initiative, skills, and successes were highly appreciated by the founders. As a result, the JazzTeam manager was asked to manage the entire distributed team.
- A favorable psychological atmosphere in the team was established. Thanks to the introduction of Scrum principles, the project participants began to trust each other and openly discuss issues and complexities. Regular testing, planned deliveries, and honest, trust-based relations in the team helped reduce the stress level.
- A value-based engineering culture was established on the project. Having assessed how small advances towards the goal help to achieve significant results, the engineers began to strive for product development and managed to overcome learned helplessness.