Improve the efficiency of a software engineering organisation structure and processes for a German publicly traded company

Challenge

Our client faced a tremendous success setting up a company and delivering customer value with its product and engineering teams. After experiencing an exponential growth of doubling the product development capacity, a few key challenges needed to be addressed:

  • Release times kept increasing (close to two weeks per feature)
  • Communication and dependencies alignment are a constant struggle
  • Domain knowledge concentrated within each team and does not organically spread
  • Attrition rate is higher for more senior engineers
  • Waterfall mixed with agile software development processes to fill the gaps
  • There are no clear owners for each piece of software and a lot falls into “no one’s land”, specially for middleware components

Solution

Inspired in modern agile software development methodologies we adapted the concept of cross-functional teams to the company's way of work. By creating two team types - Feature Team and Domain Team - we increased the focus of each person into the specific needs of the type of work they do.

A Domain Team is a team of people with the mission of ensuring that the subsystem they own is improving and delivering with the level of service agreed with the other Domain specific teams. At the same time the Feature Teams will be able to accomplish their mission with less external dependencies and still allowing the Domain Teams to keep with the necessary skills and level of autonomy to tackle their backlogs by continuously pay back technical debt.

It created an environment which allows the teams to get important technical improvements done and share knowledge by switching between each team type, without the cost of missing deadlines.

Results

  • Delivery throughput increased ~300%, which is expected if you apply Kanban to a relatively new team but not with teams that work together for more than one year, which was the case.
  • Lead Time improved from 10 days down to an average of 3 days in 6 months, for product/tech stories and bugs.
  • Speed in executing longer projects improved by a factor of 3, mainly influenced by a good business case and high level backlog preparation by a group of engineers from all functional areas before sprint zero.

Services

  • Tech Due-dilligence
  • Agile Consulting
  • Change Management

Industry

Advertisement