Contemporary Gradient Handrails Perspective 434645

Transpiling GraphQL instead of writing customized server code by Michael Solomon

Contemporary Gradient Handrails Perspective 434645

Scale by the Bay 2019 is officially starting!

We are so excited to be Platinum Sponsors again and to celebrate (and reminisce) we've found a throwback to last year. Senior Software Engineer, Michael Solomon showed us how, at Twitter, they take the next step with GraphQL, what is this next step?

Let's find out...

Transpiling GraphQL instead of writing customized server code

GraphQL is an excellent query language for clients because it specifies *what* data and response shape is needed without worrying about *how* to get and reshape that data. At Twitter, we take the next step and automatically compile GraphQL queries into code at runtime that efficiently specifies *how* to retrieve the data as well! Developers are able to expose new or existing data through our GraphQL API without writing code or deploying new software. Come see how we transpile our GraphQL queries into code that retrieves and composes data distributed across many services and databases to exactly satisfy each query while generically handling batching, errors, access control, and operational concerns—without our engineers writing a single resolver. 

We'll discuss how we leverage information from our existing distributed data access layer to power our predictable and uniform API that lets product developers easily get the data they need. Outline: Intro: GraphQL is *What* not *how* Resolvers: Specifying *how* by hand Problems with resolvers Generating resolvers Resolving with a non-GraphQL query Leveraging existing data access systems Transpiling GraphQL Exposing new data Generating a GraphQL API and implementation A sketch of what this enabled for us

This talk was given by Michael Solomon at Scale by the Bay.