Presentation: Generating Unified APIs with Protobuf & gRPC

Track: Next Gen APIs: Designs, Protocols, and Evolution

Location: Broadway Ballroom North, 6th fl.

Day of week:

Slides: Download Slides

Level: Intermediate - Advanced

Persona: Architect, Developer, General Software

Abstract

With today's commonplace polyglot architectures, taming service APIs can be challenging. At Lyft, gRPC enforces a common protocol and types to solidify communication between backend services. How can we bring this same consistency to RESTful services and frontends?

In this talk, we will cover how we extended the Protocol Buffer (PB) IDL to create unified APIs and data models. From validation logic to automatic logging and statistics, PBs allow us to speed up development across our Go, Python, and PHP stacks. And where it's not well supported, we will show how we leverage the Envoy proxy to transparently upgrade HTTP/1.1 services to speak gRPC on the wire.

Speaker: Chris Roche

Core Libraries Engineer @Lyft

Chris is a Core Libraries Engineer at Lyft focused on enriching the tools to create distributed systems. From rollout of a new protocol to building code-generation utilities, his current work centers around evangelizing Protocol Buffers and gRPC in a polyglot ecosystem. Previously, Chris was responsible for building out the Go service infrastructure and developer tools at VSCO.

Find Chris Roche at

Speaker: Christopher Burnett

Core Libraries Engineer @Lyft

Christopher Burnett is Lead Core Libraries Engineer at Lyft in NYC, where he designs software for distributed systems. The Core Libraries team is responsible for bringing gRPC into Lyft's polyglot ecosystem by providing tooling and instrumentation for service engineers across multiple languages. Prior to Lyft he worked on resumable protocols that improved photo transfers for low-quality networks around the world for both Twitter and VSCO.

Find Christopher Burnett at

Similar Talks

Let's talk locks!

Qcon

Software Engineer @Samsara

Kavya Joshi

Graceful Degradation as a Feature

Qcon

Director of Product @GremlinInc

Lorne Kligerman

Liberating Structures @CapitalOne

Qcon

Agile Coach, Engineering @CapitalOne

Greg Myers

Making 'npm install' Safe

Qcon

Software Engineer @agoric

Kate Sills

Driving Technology Transformation at @WeWork

Qcon

Fellow Engineer, Developer Platform @WeWork

Hugo Haas