The client: A fitness chain with a 40-year history and bold ambitions

The client is a prominent fitness club chain with hundreds of gyms and millions of members across the United States and Canada. Established in 1984, the chain has expanded its reach across the continent and continues to grow.

To manage operations across all its fitness clubs, the client relies on a Microsoft-based software platform where users can manage their accounts, handle membership activities, and locate the company’s gyms on a map. Unfortunately, the platform couldn’t accommodate the client’s ambitions for growth and commitment to serving modern fitness lovers.

The client needed our help in redesigning the platform and migrating it to a new technology stack. They also sought a knowledge-sharing partner to train their team to use the Microsoft stack to the max.

The challenge: A complex, two-decade platform in need of stack migration

Built on the Microsoft stack in the early 2000s, the platform relies on those libraries and frameworks, most of which aren’t supported today. In addition, it has a complex architecture, comprising a wide range of services, modules, and subsystems. Finally, the platform is supported by a diverse network of vendors and internal teams distributed globally.

When the client attempted to redesign the platform’s UI and introduce new features, the project stumbled upon the limitations of the legacy backend. Rewriting the code wasn’t viable, as it would impact hundreds of gyms worldwide.

The request, and why Exoft had the expertise to address it

The client needed a team to upgrade the platform using new technologies while preserving the code that could not be modified. And as a Microsoft-first company, they specifically sought solutions within the .NET stack.

Importantly, they needed more than just a vendor to handle the stack migration; they were looking for a consulting partner who could present viable options and provide expert guidance on new frameworks and approaches for future needs.

Exoft was an ideal candidate. With the .NET stack at the core of our expertise, we have a deep understanding of the legacy Microsoft stack and can effectively interpret the client’s source code. Additionally, our proficiency in modern Microsoft solutions positions us well to perform the migration to the new technology stack.

Our cooperation

A team with full-stack development and QA expertise is actively addressing the client's talent gap.

We progress through the project roadmap iteratively, in bi-weekly scrum sprints. As a result, we work faster, with minimized risk of disruption to the client’s workflow. Another characteristic of our partnership is clear communication at all levels, which involves daily standups within the Exoft team and regular project status updates with the project stakeholders.

On a high level, our work can be broken down into the following parts:

  • The system audit. We dig down into the system to identify its logic and underlying technologies.
  • The process analysis. The client relied on Team Foundation Server (TFS), Microsoft’s collaboration tool for software development teams. The solution has reached the end of mainstream support, becoming too outdated to cover the client’s current needs.
  • Stack modernization for the UI redesign. We need to modify the underlying code of the platform to facilitate the UI redesign. Since a complete upgrade isn’t possible, our task is to implement changes using modern technologies while preserving the integrity of the legacy architecture.
  • Knowledge sharing. In addition to upgrading the platform with modern tools, libraries, and frameworks, our goal is to support the client’s team as they adopt new technologies, addressing issues on the way.

A glimpse into the scope: The two levels of modernization

One of our first steps was to move the client’s software project workflow from outdated TFS to Azure DevOps Server, its modern version. The new solution integrates with GitHub, allowing teams to manage their code repositories without disrupting the workflow.

Meanwhile, the system audit has revealed a number of issues. These findings guided our modernization strategy, both on the platform and feature levels.

Platform-level modernization

Our audit identified three significant shortcomings that impeded the user experience.

  1. The platform was initially designed as a multi-page application, resulting in slow and cumbersome performance. To achieve fast loading times, seamless page transitions, and elegant animations, we had to redesign it as a single-page application based on modern standards.
  2. The platform relied on an outdated, legacy database that had not been cleaned up since the 1980s. This database had become nearly unsupportable due to its age and the turnover of development teams over the years. Uncertain about which data was being used, the company developers couldn't implement any changes. Our task was to optimize the database to ensure fast processing of requests while leaving the unsupportable portions intact.
  3. The platform was hosted on on-premise infrastructure. To enhance resilience, we started migrating the system to a cloud-based environment.

Feature-level modernization


Automated customer support

The customers of the fitness chain can manage their memberships, address billing issues, provide feedback, and more within the platform. At the moment, the feature looks like an automated FAQ page: users select a category for their request from a list and the system guides them through a series of questions to identify the appropriate support department.

However, this feature, like all others within the platform, is hardcoded. Every question, text field, and drop-down menu is embedded in the source code. Any changes to the UI design require modifications to the legacy source code.

Our goal is to enable changes directly from the database, keeping the source code intact. This approach will both improve performance and enhance flexibility for administrators, empowering them to select and label questions as needed. All data will be stored in Microsoft SharePoint, a powerful database management platform.

The client’s team is also considering enhancing the feature with an AI-powered chatbot, which could serve as an alternative to contacting the support team. The virtual assistant could provide real-time answers to user questions, adapting its communication style based on the customer's emotional state and guiding them on subsequent actions.


Error management

Another enhancement on our roadmap is an error management feature designed to monitor the status of completed contact forms. Whenever the system fails to schedule a call with the appropriate customer support department, this feature will alert the team to process the request.

While the majority of the system remains on-premises, this feature is intended to be cloud-based. Due to our expertise in Microsoft cloud services, the development and deployment of this feature will be one of our team’s key responsibilities.


Location-based search

This is a critical feature of the client's platform that allows users to locate nearby fitness clubs on a map.

Though this functionality was present at the start of the project, it was not functioning correctly. For instance, when users selected a state, city, and zip code, the search would return zero results. Our task here is to resolve all existing bugs and implement a UI design.

The value that is clear from the earliest stages on

The project is still in progress, yet its value is already evident.

The client approached us with a legacy platform housing decades of data that cannot be redesigned as a typical software system can. This complex web of data and code supports the global fitness club ecosystem, and any modifications could disrupt operations across numerous fitness clubs.

Fortunately, our expertise in Microsoft tools spans from the earliest versions of Microsoft SQL Server to the advanced capabilities of Microsoft Azure. We understand and can address the conflict between the client’s current user experience needs and the complexities of two decades of legacy code. As a result, despite the limitations posed by the underlying technologies, we are making significant progress toward creating a visually appealing, intuitive, and fast user interface designed according to the best UX practices.

In this partnership, our role goes beyond standard software development. Throughout the process, we guide the client in exploring potential solutions, ensuring they find the best options available, and providing strategic guidance for their future needs.