How our team handled a high-pressure situation without compromising on quality.
It doesn’t matter whether the drain in your kitchen sink gets clogged, the toilet backs up, or the shower stops working: any plumbing problem brings with it a state of high urgency.
For most people, the first course of action is to quickly look up the contact details of their local Roto-Rooter, long-established as the No. 1 name in plumbing repair and sewer & drain cleaning services.
That means going online to the company’s platform and looking for the nearest location, but if the platform doesn’t load quickly, or if it’s not easy to find what they’re looking for, people will search elsewhere. That’s not ideal for both the customer, and Roto-Rooter.
About a year ago, an opportunity to modernize Roto-Rooter’s platform using an Open Source Solution (OSS) that would run on Azure architecture was identified.
The result of our work didn’t just deliver outstanding business results for Roto-Rooter. It also won Architech Microsoft’s Global Partner of The Year Award for OSS on Azure. One way we’re celebrating is to share the story of how we didn’t compromise quality for speed, despite a high-pressure situation.
When Legacy Architecture Is Gumming Up The Works
Like many organizations, Roto-Rooter’s legacy platform had reached a point where its architecture was getting in the way of key business objectives. This included the ability to market itself effectively to new customers, to provide existing customers a strong user experience, and the ability to make meaningful changes to the platform without incurring high costs.
“The site performance was below standards for our client, there were accessibility issues, and the application wasn’t scalable, which meant that there could be a high degree of customer churn,” Ajith Menon, who served as Product Owner on the Roto-Rooter project, recalls.
The team outlined a product roadmap that would see Roto-Rooter move to a cloud-based architecture on Azure. Roto-Rooter’s original CMS-driven platform had a lot of business logic bundled as plugins and modules in the CMS, which made it difficult for the Roto-Rooter team to make upgrades or changes to the platform fast and efficiently. The platform was a monolith Java application that had modules spread across the platform, leaving Roto-Rooter constantly frustrated with the platform’s performance and scalability.
We needed to give Roto-Rooter the best combination of reliability and flexibility.
“To go from an ‘old school’ system to a Kubernetes system, where you have multiple microservices running, is a huge upgrade,” says Saeed Alam, the Software Engineer who worked on the project.
According to Reubia Perera, who served as Project Manager for the Roto-Rooter modernization project, the initial work involved setting up the foundational infrastructure, creating a new design system and then moving into modernizing the site pages
Given the size and scope of Roto-Rooter’s service operation, which includes thousands of locations spanning all fifty states plus Canada, a major part of the platform was dedicated to “Local Pages.” Each Roto-Rooter location has its own page that provides unique details about local services offered, local ownership, and local contact information. It soon became clear that the local Roto-Rooter pages, along with other content, were causing a bottleneck with the existing CMS.
“There was a cap of 10,000 records and we had new data structures that needed more than that — closer to 30,000,” Saeed recalled. “We had to pivot quickly; however, our team jumped into action right away.”
Doing What It Takes
Much like a plumber who has no choice but to completely redesign the way water flows through a pipe, the team got to work on creating a new light weight CMS for Roto-Rooter. Dubbed AdminUI, it would wind up handling the data structures while also aligning with the way content across Roto-Rooter needed to flow.
“The team worked seamlessly,” Saeed says, “we created multiple proof-of-concepts (POCs) and submitted them to the tech lead and the Head of Engineering, and then worked on the implementation. It was an action-packed couple of days, but we live and breathe by our core values at Architech, Embrace Change and Never Fail A Client.”
Ensuring everything was given the proper usability testing and quality assurance, however, had an impact from a project management perspective.
“It was difficult discovering these hurdles as we were going along,” Reubia says. “We had to shift our timelines, but we stood fast with the fact that we wanted to provide a great product.” Ajith agrees. “There was no compromising on quality,” he says.
To say the extra effort was worth it is an understatement. Since going live in late December of last year, Roto-Rooter’s modernized platform has improved page load times by 32%, had a 22% increase in conversion on web traffic, as well as a 31% improvement in speed index, and a 30% improvement in accessibility.
Perhaps even more important, Ajith notes that the team’s work has helped “future proof” Roto-Rooter, easing the process of handling new service calls during challenging times like the COVID-19 pandemic.
“Our mandate has always been helping other companies digitally transform. Having deep knowledge in technologies like Azure helps us achieve this,” Reubia says. "The project had a lot of moving parts, but the drive of the team and their deep expertise in these areas is what really got us to the finish line for our client.”
To learn more about building world class solutions of your own, email us at sales@architech.ca