filter >

Photo

Federate it! Limits of GraphQL-based architectures.

Alexander Gilevich

from EPAM (Spain)

About speaker

Programming-as-a-Passion, Architecture-as-a-Job

Data Solutions Architect and Tech Lead with a passion for programming and well-architected highly-available and scalable applications. 12+ years of production experience in IT. Certified Databricks/Azure/AWS Solutions Architect Expert.

About speakers company

EPAM Systems, Inc. is an American company that specializes in software engineering services, digital platform engineering, and digital product design. Since 1993, EPAM has helped customers digitally transform their businesses through a unique blend of world-class software engineering, design and consulting services. EPAM is a founding member of the MACH Alliance.

Abstracts

specific

We all know how much decoupling is important in software architecture, right? But how do you scale this principle to a whole enterprise while not creating any so called "data and team silos"? How can you allow your teams to work independently yet collaboratively? And finally how can you build omni-channel solutions based on the shared capabilities while allowing them to be extended over time along with the changes in your domain model?

GraphQL Federation (a.k.a. Principled GraphQL and Apollo Federation) is a software architecture pattern which allows you to expose one single entry point to all your data and data insights while enabling your teams to build any number of customer-tailored solutions in a microservice-based architecture. No more HATEOAS and its "lazy" approach to load the data! Just allow your consumers to choose what they want themselves. This is what GraphQL was designed to do from the very beginning. So, why not to use its superpowers? In fact, what you can do in addition is to combine small GraphQL APIs into one strongly-typed enterprise-wide supergraph and that's what we did in our case.

In this talk we are going to dive into the key points, pros and cons of GraphQL Federation architecture. We are going to touch base on how it compares against REST and GraphQL Schema Stitching, how it has evolved over time, which typical use cases it can help you with and where it really shines. We will try to reason about why such companies as Netflix and Booking.com adopted this pattern recently. Furthermore, we will discuss based on my own production experience how we managed to build a truly federated serverless architecture with one of our international customers in the e-commerce domain and why we even did it.


In the first part of the talk I am going to talk about what GraphQL is and how it guarantees strong typing.

In the second part I am going to explain how you can extend this approach to the whole organization while allowing different teams to collaborate to it independently from each other.

One of the hidden benefits you get by building such a system is that you can reliably and securely store your end users' data in one single place dedicated for this purpose without duplicating it across numerous services and databases. This simplifies management of personal data in accordance to GDPR and industry standards such as ISO 27001 as well as makes it easy to realize what is referred to as "the right to be forgotten".

Finally, I am going to share what tools and solutions are currently available on the market (incl. open-source implementations) to help us build such a system.

The talk was declined

other talks of this topic

Photo
The Anatomy of a Distributed JavaScript Runtime

Peter van Vliet

Co-Founder and Lead Architect @ Masking Technology

broad
Photo
Mastering Software Design: Best Practices for Building Robust Applications

Ambesh Singh

Visionet Systems Deutschland

broad
Photo
Achieving True Layered Separation with Hexagonal Architecture in Spring Boot

Adrian Kodja

softgarden e-recruiting GmbH

specific
Photo
DRBD Deep Dive

Philipp Reisner

Co-founder and CEO of LINBIT

specific
Photo
Architectures that we can use with .NET

Alexej Sommer

Capgemini

broad
Photo
Organizational Sustainability with Platform Engineering

Lesley Cordero

The New York Times

specific
Photo
Beyond Caching: Valkey's Advanced Data Structures in Action

Viktor Vedmich

Amazon Web Services

specific