Modernized software architecture at RTL+
How GraphQL reduces dependencies between teams
The rapidly changing media landscape poses dynamic challenges for companies like RTL+. To effectively address these challenges, RTL+ made a bold decision to modernize their existing software architecture. Transitioning from a Backend-for-Frontend pattern (BFF pattern) to GraphQL with Federation was not only considered a technological innovation but also proved to be a strategically valuable move for the streaming service
BFF pattern presents challenges and redundancies
In the world of modern digital platforms, the use of Microservices following the MACH approach (Microservice, API-first, Cloud-Native, Headless) is common practice. However, this presents a challenge: The ostensibly independent domain teams can no longer operate independently, as every change in the API Gateway must be reflected, integrated, and tested to avoid further errors. Even when frontend and backend teams are separated, additional dependencies and efforts emerge, negatively impacting the lead time, such as time-to-market and from-concept-to-cash. Redundant code is written for each Backend-for-Frontend (BFF), and the implementation of respective user stories competes with additional requirements, leading to asynchronous execution
The solution is GraphQL Federation
The answer to these challenges lay in transitioning from REST to GraphQL as the API concept. The implementation of GraphQL not only allowed RTL+ to reduce dependencies between teams but also led to shorter Time-to-Market, reduced costs, and increased agility. The innovative decision to replace the Backend-for-Frontend pattern with GraphQL Federation proved to be key in improving technical efficiency and realizing business advantages.
Merging schema-based APIs
At the core of this strategy is the automated merging of schema-based APIs into a superordinate schema through GraphQL Federation. This approach enables interdisciplinary domain teams to develop independently. Changes can be automatically verified without creating new dependencies. An automated schema registry ensures that developer teams can evolve their components without generating new dependencies.
Governance and Community of Practice
To ensure the uniformity of the API, a participative governance structure was implemented. Introducing a Community of Practice that engages developers and promotes the creation and maintenance of rules ensures consistent and effective use of GraphQL Federation.
Time savings up to 30%
The adoption of GraphQL led to more efficient collaboration between teams, resulting in an impressive time savings of up to 30%. This efficiency improvement had direct impacts on time-to-market and overall costs. The implementation of GraphQL Federation facilitated a faster rollout of API features and led to cost savings through a reduction in backend requests
Profitable and practical
Overall, Federated GraphQL has proven to be a profitable and practical solution for RTL+, advancing the company not only technologically but also offering significant business benefits. The success of this transition underscores the importance of tooling, schema management, error analysis, and community building for sustainable deployment of modern software architecture. This step marks a crucial milestone for RTL+ on the path to a future-proof and innovative streaming platform
For the successful advancement of RTL+, we collaborate with many teams using the SAFe framework. The colleagues from Qvest fit exceptionally well with us. On one hand, they are technically excellent, and on the other hand, we can deploy them in various roles, including software architect and developer in both the frontend and backend areas, as well as Product Owner and Scrum Master. Such professional and trustworthy service providers are an excellent partner for us, and we look forward to long-term collaboration.