World Congress 2023 Sep 27, 2023

Designing gRPC APIs - The things they don't tell you

Bastian Eicher

Did you know gRPC's language-agnostic promise often breaks down at the implementation layer? Uncover the hidden architectural truths behind evergreen versioning, nullability, and robust error handling.

Pause
Mute Enter Fullscreen
#1 about 2 min

Motivation for using gRPC APIs over RESTful JSON

Performance and robust code generation make API-first design approaches preferable to traditional JSON payloads.

#2 about 1 min

Blending resource-oriented and RPC philosophies in API design

Applying resource-oriented CRUD concepts within remote procedure call architectures offers functional symmetry and predictable implementation.

#3 about 3 min

Structuring git repositories to share remote procedure contracts

Choosing the right dedicated or monorepo structure dictates how service boundaries securely share client libraries.

#4 about 3 min

Resolving cyclic dependencies within identity management protocol buffers

Organizing cross-cutting references strictly on primary domain entities circumvents cyclic import errors during compilation.

#5 about 3 min

Enforcing API consistency using the Buf protobuf linter

Evaluating warning rules around separated request objects guarantees long-term evolvability across diverse client constraints.

#6 about 3 min

Understanding breaking changes within the binary wire format

Keeping message integer references unchanged enables structural backward compatibility over binary encoded TCP connections.

#7 about 5 min

Leveraging fallback behaviors to avoid complex API versioning

Safely conditionally executing newer remote methods inside try-catch patterns handles mixed upgrade environments without duplicate definitions.

#8 about 3 min

Handling optional fields and language-specific nullability discrepancies

Relying on explicit wrapper types normalizes the erratic missing-value semantics found between C# and Python generators.

#9 about 4 min

Structuring exceptions using the gRPC rich error model

Attaching detailed machine-readable precondition records directly into unhandled exceptions bypasses the rigidity of standard status codes.

#10 about 4 min

Implementing low-level authentication headers for service-to-service communication

Injecting preshared keys directly into HTTP header payloads acts as a lightweight alternative to mutual TLS integrations.

#11 about 3 min

Strongly typed nested models and generated code quality

Exploring how granularly defining internal typed properties improves maintainability despite lack of native web proxy support.

Matching moments

2:09 min

Summarizing the architectural benefits of gRPC-Gateway development

Rajiv Ranjan Singh Rajiv Ranjan Singh · Europe 2026 Virtual

1:28 min

Understanding the architectural drivers of gRPC performance gains

Sakshi Nasha Sakshi Nasha · Europe 2026 Virtual

2:31 min

Implementing native gRPC and synchronizing with REST APIs

Sakshi Nasha Sakshi Nasha · Europe 2026 Virtual

1:36 min

Decoupling serialization formats from transport protocols

Sakshi Nasha Sakshi Nasha · Europe 2026 Virtual

57 sec

Choosing the right API protocol today

Simon Auer Simon Auer · World Congress 2025

3:11 min

Solving the duplicate API implementation problem with gRPC-Gateway

Rajiv Ranjan Singh Rajiv Ranjan Singh · Europe 2026 Virtual

Upcoming sessions on this topic

Open session

World Congress 2026 North America

September 25, 2026 · 10:20–10:50

Stage 2

API = Some REST and HTTP, right? RIGHT?!

Rustam Mehmandarov

Passionate computer scientist

Rustam Mehmandarov
Open session

World Congress 2026 North America

September 25, 2026 · 12:20–12:50

Stage 9

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

September 24, 2026 · 16:50–17:20

Stage 9

From Guesswork to Governance: Data Contracts Bring API Discipline to Apache Kafka

Sandon Jacobs

Senior Developer Advocate at IBM

Sandon Jacobs
Open session

World Congress 2026 North America

September 24, 2026 · 16:10–16:40

Outdoor Stage

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

September 24, 2026 · 14:10–14:40

Stage 9

One Repo, One Strategy: Scalable Full-Stack Testing in a Monorepo World

Bartosz Leczycki, Paweł Matynia

Bartosz Leczycki
Paweł Matynia
Open session

World Congress 2026 North America

September 25, 2026 · 11:00–11:30

Stage 5

Managing GPUs by Just Asking, Infrastructure in the Age of MCP

Jessica Garson Beauchemin

Developer Relations Lead, Community at Runpod

Jessica Garson Beauchemin