Staff augmentation for Eversports: strengthening 3 product teams within an extensive monorepo.

About the project

Client:

Eversports is an Austrian company based in Vienna and a European leader in sports facility management. Its ecosystem consists of two products: the Eversports booking platform (a marketplace for yoga, tennis, boxing, and dozens of other activities) and Eversports Manager a management panel for studio owners to handle schedules, trainers, payments, and customer communication. The company employs around 100 people.

The technical foundation of the product is a monorepo containing over 100 applications, continuously developed for more than a decade. Entering a system of this scale and delivering new functionalities without disrupting existing services requires an experienced team.

Recruitment challenges on the local Vienna market led Eversports to seek support from an external team. Eversports found fireup.pro through a recommendation - one of the people involved in the collaboration had previously worked with us on the 9am.health project.

Project goal:
Business
  • Accelerating time-to-market — reducing the time needed to deliver new functionalities for users and studio owners.
  • Strengthening three independent product teams separately: the user-facing side (booking), the provider-facing side (studio management), and the financial domain.
  • Maintaining operational continuity — expanding the product without risking destabilization of a live system serving thousands of users simultaneously.
  • Supporting expansion — preparing the product for integration with Matchi and for scaling into additional European markets.
Technological
  • Development of user-side functionalities — marketplace features, booking widgets, checkout, and private trainer sessions.
  • Development of provider-side functionalities — user tagging, trainer substitutions, spot booking, and private session management.
  • Maintenance of the financial domain — handling invoicing systems, integrating local legal requirements (including Peppol), and monitoring and fixing transactions in AWS Lambda.
  • Gradually reducing work within the legacy environment - whenever possible, new features are built using the current stack (Next.js, TypeScript), with the long-term goal of rewriting older applications.
From challenge

Key Challenges

1

Entering a 10-year-old monorepo without test documentation

The Eversports system is a monorepo consisting of over 100 applications, some of which are built with technologies that were at their peak a decade ago: Sails.js, Razzle, and Pug templates. Many of the legacy modules lack automated tests, meaning that every change carries the risk of unintended side effects. Onboarding requires time, a powerful machine (for example, the project does not run on Windows without a Linux dual-boot setup) and above all experience with technologies that are no longer taught in modern courses.

2

Working in an environment where any failure is immediately visible to thousands of users

Eversports is a live production system operating non-stop a broken booking slot means real losses for the studio and frustration for the user. Every code change must go through cross-team code reviews and be approved by the entire team, not just a single person. Communication and proactivity are treated here as technical requirements, not “nice to have” skills.

3

Invisible errors in legacy financial systems

Some of the AWS Lambda functions responsible for transaction finalization operated without proper monitoring. Errors (such as exceeding RAM limits) did not throw exceptions but instead resulted in silent transaction confirmation failures. The symptoms only surfaced through customer support reports. Fixing each case required manually replaying messages from the SQS queue all while continuing to deliver the current sprint goals.

4

Limited effectiveness of AI tools within a complex repository

AI tools (including Claude Code) are helpful, but in a codebase of this scale they cannot replace architectural knowledge. Without a prior understanding of the project structure, the model generates code that may technically work but does not follow local practices or leverage existing abstractions. Every AI-generated output requires at least several hours of verification, fixes, and code review.

Key functional and non-functional requirements

Spot booking - the owner creates a visual layout of the studio, and the user selects a specific spot during the booking process, with real-time visibility into availability and spots reserved by friends (e.g. choosing a specific bike during a spinning class).

Private sessions - the ability to send requests for private sessions with a trainer or massage therapist, deferred payments, and session management (creation, editing, deletion) on the provider side.

User tagging - studio owners can assign tags to users for segmentation and targeted communication purposes.

Trainer substitutions - an instructor can send a substitution request when they are unable to conduct a class.

Booking widgets - embeddable modules (activity list, newsletter, pricing) with customizable color schemes, embedded directly into studio websites.

Aggregator integration - bidirectional synchronization of bookings with external platforms (including ClassPass): a booking made through an aggregator automatically updates availability in Eversports Manager, and vice versa.

Financial compliance - adapting the invoicing application to local regulatory requirements (Peppol in Belgium, with plans for additional EU countries).

Through the solution

Three independent teams, one platform

fireup.pro provided three developers who joined existing or newly created product teams on the Eversports side. Each of them operates within a different product domain:

    Provider Team (studio management)

    • Spot booking: implementation of a visual studio layout editor, spot assignment logic, priority spot handling for direct customers, and integration with the friends view in the application.
    • Teacher substitution: a notification and substitution request mechanism for instructors.
    • User tagging: a labeling system supporting the segmentation of a studio’s customer base.
    • Private sessions: full session management on the provider side (CRUD) and integration with the user-side checkout flow.

    User Team (booking platform)

    • Maintenance and development of the marketplace — the main application through which users browse and book sports activities.
    • Newsletter widget: a subscriber collection form with Double Opt-In, branding customization, and reCAPTCHA protection.
    • Booking widgets embedded on external studio websites.
    • Provider profile pages within the Eversports ecosystem.
    • Handling the payment process (checkout) for activities requiring changes in the transactional flow.

    Finance Team (financial domain)

    • Maintenance and development of financial systems distributed across multiple applications within the monorepo.
    • Invoicing application with Peppol integration (the Belgian e-invoicing standard), a compliance requirement to be fulfilled by the end of 2025.
    • Diagnostics and repair of transactions in AWS Lambda: identification of silent errors (OOM without throwing exceptions), replaying messages from the SQS queue, and a rotating “secretary” duty system for handling customer support reports.
    • Adapting financial systems to the legal requirements of additional countries as Eversports expands its operations.

    Work methodology

    All three teams work in 2-week sprints with weekly refinement sessions and retrospectives every two weeks. Each team is a self-organizing cross-functional unit: every developer also acts as a tester and participates in code reviews. Code reviews are conducted across teams - a developer from another team reviews the code before it reaches production. This model requires every team member to have a broad skill set: full-stack development, manual testing, AWS knowledge, and proactive communication.

      To the success

      Technological outcomes

      New functionalities delivered to production

      Spot booking, teacher substitution, user tagging, and the private sessions module have been deployed and are fully operational for both users and providers in production.

      Stabilization of the financial domain

      The issue of silent errors in the AWS Lambda functions responsible for transaction finalization was identified and resolved.

      Preparation for compliance

      The invoicing application meets Peppol requirements for the Belgian market and is architecturally prepared for expansion into additional countries.

      Accelerated delivery pace

      Since the fireup.pro team joined the project, the planned gradual migration of legacy applications to the current stack has been progressing more efficiently.

      Korzyści biznesowe

      Recruitment challenges in the local Vienna market stopped blocking development. Eversports gained access to a ready-to-work team and returned to the pace at which it wants to deliver new features.

      A new dedicated finance team (7 people, including Robert from fireup.pro) has been operating since the beginning of 2026 and is gradually taking over additional systems.

      New functionalities (spot booking, private sessions, newsletter widget) directly increase the value of the studios’ offering for end users.

      The product is prepared for integration with Matchi and expansion into new European markets without interrupting feature delivery for existing ones.


      Project team
      Abstract background
      Krystian
      Maksymilian
      Robert

      Krystian

      Senior Full-Stack Developer, Team Provider

      Responsible for functionalities within the Eversports Manager platform: spot booking, teacher substitution, user tagging, and provider-side private sessions. Works with both legacy technologies requiring advanced expertise (Sails.js, Pug) and modern technologies (TypeScript, Next.js).

      Tech stack

      Next.js

      React

      TypeScript

      Razzle

      Pug templates

      Node.js

      Nest.JS

      Sails.js

      AWS

      peppol

      Claude Code

      Your success is our success

      See how we can build a technological advantage for your company together.

      Book free consultation!

      We have a team that truly knows its stuff — we'll help you find a solution that works.

      Conclusions & recommendations

      Experience with a demanding stack is a competence, not a barrier.

      In a project built on 10 years of production code, knowledge of the current stack is not enough. You also need to be able to understand and safely modify Sails.js, Razzle, and Pug templates. Today, these technologies may seem exotic, but for Eversports they still form the operational foundation of the business.

      AI accelerates development, but it still requires architectural context.

      In a monorepo of this scale, AI tools can generate a useful starting point, but without a prior understanding of the project structure, the model receives the wrong context and produces code that does not fit the system. Every output still requires verification.

      Silent errors are more dangerous than explicit exceptions.

      A Lambda function that does not throw an exception, but simply stays silent - this is a risk invisible to standard monitoring. Proactive observability and an efficient response system are critical in financial domains.

      A self-organizing full-stack team works, but only with the right people.

      A model in which every developer also acts as a tester and a code reviewer for another team requires a broad range of competencies and a culture of proactive communication.

      Background

      Time for your project.

      Turn your ideas into real solution and...

      ...Get in touch with us!

      Your vision, our realization
      Want to discuss the details?
      Let us know!

      I agree to the processing of my personal data by Fireup Software ...