When ServiceCentral found itself growing exponentially as customer demand increased, it needed to look at ways to maintain its agile processes while working collaboratively with Cinq.
Jeff Foster, Chief Technology Officer and VP of Product Development at ServiceCentral, explains that when ServiceCentral acquired his company RepairQ in 2017, they needed to grow the development team.
RepairQ is a retail point of sale (PoS) software solution that also manages service operations, such as sales and repairs of mobile phones. “I knew that we needed to grow a team, and I had experienced growing teams all over the world, in India, Pakistan, China, Russia, Belarus; but I hadn’t had experience in Nearshore then,” he says, adding that it was a meeting at Nearshore Nexus in 2018 that ultimately connected him with Cinq.
At the time, ServiceCentral’s Nearshore team was small, comprising a team of five, including a scrum master, a couple of developers, and a QA person. Since then, the team has doubled in size every year and now numbers 34. “When we were growing our team up to about 20, we managed projects as agilely as possible. Our agile process started to fall apart a little as we were scaling up, and so we had to restructure the team,” Foster says.
The result has been a focus on expanding the team together with Cinq, formalizing the processes, and finding ways to scale up their approach to agile while they scale up the teams. They created the concept of pods, smaller teams, each of which has a scrum master, a pod leader, several developers, and one QA person. Each pod has one or more projects assigned and has access to other business stakeholders, such as product owners, as needed.
The Challenge of Scale
The team is global, with pods in Russia, Brazil, and the United States, and within the US they have developers in three time zones; together they are working on 24 projects in parallel. “We’re growing so fast and have multiple customers demanding things immediately, so we are having to facilitate a great deal of development, whether it is custom development work or enhancing our core products to suit customer needs,” Foster says.
To meet all these needs, they’ve had to focus on scaling up fast, while minimizing bottlenecks and ensuring that the agile approach works for this kind of growth.
Initially, the Cinq’s team in Brazil were all working on one project. “When you’re working on one project and it’s a longer-term project, it’s easier to be true to the agile approach,” he says.
Foster explains that it is easier than having your sprint ceremonies and iteratively work on building features, and once you release the product, you can continue to iterate and improve the product or fix bugs. “But then as we started scaling up and needing to do multiple projects in parallel with our smaller team size, what we found is that people were working in silos,” Foster adds. This resulted in some turnover as people became burnt out, and there was a lack of collaboration.
From Fragmentation to Pods
“The more you segment the team, the more technical debt you add because now you have people working on different projects in parallel. You have to merge the data, and you may cause regression bugs. Initially, when we took on more projects in parallel, the team fragmented. But now we’ve turned those lemons into lemonade,” Foster says.
“When you’re working on one project and it’s a longer-term project, it’s easier to be true to the agile approach” — Jeff Foster
“Now we have an environment to build, test and deploy, and we don’t have one person working in isolation,” he says. “It doesn’t totally solve the problem of technical debt, though. You still have all these projects running in parallel and have to merge them, which can create regressions. So, to help solve that problem we’ve been trying to ramp up our QA department and focus on test automation.”
This means that, as the company builds new things, they will have a library of automated tests they can run to prove that the things they built in the past are still working, he explains.
“Another area where we faced challenges was bottlenecks. As we add more developers, then we start to find bottlenecks in other places like QA or architecture. We have developers that are starting on projects before they’ve gone through UX, UI design, or before they’ve gone through the architecture review. So, we end up doing the project twice, because we don’t have all the user interface and all the architecture done upfront,” he says.
Getting the Right Agile Team
Cinq has worked with ServiceCentral to solve those problems through, for example, increasing the size of its QA department. “Together with Cinq, we have dedicated one QA analyst to each pod and a senior QA analyst to handle higher-level queries,” Foster says. “We’ve also started delegating, so now the pod leaders are doing architecture and design, instead of all waiting for the architect.”
Foster advises those looking to scale up with Nearshore teams to look beyond just developers. “Originally, the plan was just to hire developers offshore or nearshore, and then we would manage it all from the US, and I think that would have been a big mistake. We were a little hesitant to see the value in the scrum master at that point,” he says. “I’m really thankful that we did that, and I would suggest anyone do that.”
He adds that businesses also need to consider what the minimal viable team size is for making agile development work. “If you’re going to outsource, just hiring one developer or two developers, I think is a bad idea because they don’t really have everything that they need to do the development and be proficient. So, defining what are all the roles that you need to be proficient, and to be autonomous, and then start with that team size is my advice.”
“Together with Cinq, we have dedicated one QA analyst to each pod and a senior QA analyst to handle higher-level queries” — Jeff Foster
ServiceCentral’s starting position was a scrum master, a senior developer, a few mid-level devs, and a QA analyst. Foster adds that, while ServiceCentral has not opted to have a product owner as a part of the pods at this stage, that is something companies could consider. Service Central’s approach was to hire a scrum master with a business analysis background who could handle those aspects of the projects as well.
Having those agile processes in place with remote teams in different geographies made it easy for Service Central to navigate the changing environment during the height of the pandemic, since the collaborative tools were already in place, as were the processes around remote working. The approach has enabled Service Central to rethink its own approach to agile collaboratively so that it could work at scale.