Blog Jul 31, 2025

The Rails Engine Behind Ekstraklasa

The Rails Engine Behind Ekstraklasa

At TISA Group, we build digital products that help sports organisations engage fans, deliver value to partners, and operate more efficiently. Choosing the right technology stack is a big part of making that happen — and in our work with Ekstraklasa, Poland’s top-tier football league, one solution has stood out for its speed, scalability, and developer experience: Ruby on Rails.

From powering real-time match data to managing thousands of media assets, our RoR-based platform is at the heart of Ekstraklasa’s digital operations.

Supporting the Digital Core of Polish Football

As the central organiser of professional football in Poland, Ekstraklasa S.A. goes far beyond match scheduling. It oversees the official league website and apps, manages on-demand video and media content, and ensures seamless information flow between clubs, broadcasters, and fans.

To deliver on that mission, the league needed more than just a website — it needed a platform that could evolve, scale, and integrate. That’s where TISA Group came in.

We developed a modular backend architecture that supports:

  • A multi-tenant content management system (UMPIRE),
  • Authentication and permission logic (Auth API),
  • A media asset library used by league and club staff,
  • And fast, consistent data distribution across digital touchpoints.

This system now forms the backbone of Ekstraklasa’s digital presence. It’s not just infrastructure — it’s a strategic asset for growth, fan engagement, and operational control.

The Rails Engine Behind Ekstraklasa

A Framework That Fits Our Philosophy

Ruby on Rails might not be the trendiest tool on the market, but it remains one of the most reliable and developer-friendly frameworks out there. That’s one of the reasons Jakub Godawa, backend developer at TISA, has relied on it throughout his career.

“Rails is convention-driven, not configuration-heavy. That means even new team members can understand how a project is structured almost immediately. It makes onboarding fast and development clean.”

Ruby on Rails Developer

That perspective is echoed by Paweł Usowski, who has worked on the Ekstraklasa backend for several years:

“Ruby on Rails — and Ruby as a language — has been around long enough to be considered a mature and stable technology. The framework includes many out-of-the-box features needed for building and maintaining large-scale platforms like Ekstraklasa’s backend. And what Rails doesn’t cover natively, we can usually achieve using well-tested libraries, which are called gems in Ruby ecosystem. Its maturity is also a major advantage in terms of security.”

Paweł also highlights how fast prototyping and expressive syntax — often resembling natural English — improve collaboration and long-term maintainability.


 

Three Core Applications, One Unified System

Our RoR-based backend consists of three interconnected applications:

  • UMPIRE – our CMS for managing league and club content,
  • Media Library – for image and asset management,
  • Auth API – for user authentication and secure inter-service communication.

Each is containerised using Docker and built on consistent patterns like form objects and operations. That shared logic reduces technical debt and streamlines collaboration across the team.

“We have a small but powerful team. A handful of Ruby developers can manage the core Ekstraklasa platform — which speaks volumes about Rails’ efficiency,” says Jakub.

Paweł adds:

“All three services follow the same architectural principles. For instance, we use JSON:API specifications across all apps to keep API requests and responses consistent. We also use the same database system — PostgreSQL — which helps avoid surprises and limits the number of external tools and libraries needed for development.”

While tightly integrated, Media Library and Auth API are also designed as standalone modules that can be reused in other league or club projects — a key advantage of building with modularity in mind.

Optimised for Live Football Demands

One of the most demanding aspects of any football league platform is real-time data — and Ekstraklasa is no exception. Our backend regularly pulls live stats and incidents from providers like Opta and pushes updates to frontend applications with minimal delay.

“One example is synchronising lineups, match incidents, and stats from external providers like Opta. These are fetched at frequent intervals and served to users through fast, reliable endpoints — often within seconds,” says Paweł.

With Ruby on Rails as the foundation, we can quickly test, iterate, and deploy improvements without disrupting live operations — even on busy matchdays.

Performance and Observability Built-In

In a high-traffic digital environment like football, performance isn’t negotiable. That’s why we’ve combined Rails’ development speed with robust monitoring and DevOps practices.

“We regularly run load tests to understand how much traffic our backend can handle. We also rely on APM tools to monitor throughput, response times, and database queries. Based on this data, we can identify and improve key bottlenecks,” explains Paweł.

Jakub also points out the role of infrastructure in staying responsive:

“We use autoscaling infrastructure on AWS, which allows us to react to traffic surges automatically. That way, we don’t need to manually adjust resources when things heat up on matchday.”

It’s a combination of smart development and scalable deployment — one that ensures fans, partners, and internal users get the experience they expect.

Why Rails Still Delivers

Ruby on Rails continues to be the framework of choice for companies like Shopify, GitHub, Zendesk, and Airbnb. It’s not about trends — it’s about delivering.

“Rails is not about hype. It’s about longevity, readability, and rapid delivery — qualities that matter when building reliable platforms for leagues, media, or ecommerce,” says Jakub.

“Rails is expressive, readable, and actively maintained — with regular new versions introducing improvements while keeping the core stable. It’s an excellent fit for long-term, evolving projects like ours,” adds Paweł.

And while many developers may not realise it, one of Europe’s most respected leagues is powered by it — every day, behind every match.

What’s Next

As Ekstraklasa continues to invest in its digital ecosystem, we’re proud to support that growth with tools that are fast, reliable, and built for the long game. With Ruby on Rails as our engine, and a strong product team around it, we’re excited to keep improving how the league connects with fans — both now and in the seasons to come.


Want to See the Full Picture?

We’ve documented the full Ekstraklasa x UMPIRE journey in a dedicated case study.

Read the case study