GraphQL at enterprise scale
The unified graph has quickly established itself as an essential layer of the modern application development stack. At the same time, GraphQL has become the go-to technology for managing this new layer with the promise of providing access to all of a company’s app data and services coherently in one place. And thanks to the GraphQL community's experimentation and innovation over the years, GraphQL has proven itself a mature, capable, and scalable technology.
There are many different ways that GraphQL can make its way into a company's tech stack, for instance, a single team eager to leverage its client-driven approach to data fetching. But as its adoption spreads, realizing GraphQL’s promise at scale requires coordination and consolidation of these efforts across teams.
At Apollo, we’ve had the opportunity to work with countless developers in a wide range of enterprises over the years. Through that work, we’ve learned that a unified, federated graph is at the heart of any successful GraphQL consolidation project. We first shared some of these insights in Principled GraphQL where we outlined best practices that companies can follow to create, maintain, and operate a graph as effectively as possible. In this guide, we’ll provide a detailed road map for putting these principles into action at an enterprise level.
If your company is currently using GraphQL, then you have undoubtedly experienced challenges related to maintaining a monolithic graph or wrangling multiple smaller graphs. Consolidating GraphQL in your organization can help reduce friction points between teams, enhance developer experience, improve governance of your graph, and even provide better observability of how your data is consumed.
Consolidating your graph isn’t just about the architecture of your tech stack. It’s about an organizational transformation that will harness the power of graphs to unlock platform value. A common graph increasingly lives at the center of value delivery in a company and the strategies and tactics presented in this guide provide a pathway to realizing the potential of your data-graph-as-a-product.
Whether you’re a developer on a client team or actively maintaining a GraphQL server in production now, the concepts outlined in this guide will give you a clearer understanding of how your work can align to your organization’s broader GraphQL strategy and even become a “Graph Champion” on your team.
This guide reflects what we’ve learned after spending thousands of hours working with enterprises at Apollo. Based on those experiences, we’ll cover both the high-level considerations and the practical skills required to successfully consolidate a graph across a company.
This guide has been written for you by the Apollo team to assist you on your journey toward effectively scaling your graph across your company. The content in this guide is updated on an ongoing basis to reflect the current state of best practices for federated graphs, so be sure to check back often for updates.
We’d like to hear from you if you have questions about this guide or have a unique perspective you’d like share about using GraphQL your company. Email us at firstname.lastname@example.org to reach out at any time with your comments or if you require any assistance implementing GraphQL in an enterprise environment.