At QCon London 2026, Ian Cooper, senior principal engineer at Just Eat Takeaway, discussed managing asynchronous APIs in production, showing how endpoint definitions can drive code generation, schema registration, and the automation of messaging infrastructure.
Cooper began the session by highlighting how event-driven architectures often evolve informally in their early stages, with teams typically relying on shared knowledge to understand which services publish events, which services consume them, and how messages flow through the system.
As organizations scale, however, this informal approach becomes increasingly fragile. “At scale, ad-hoc breaks,” argued Cooper, with integration points difficult to discover, consumers unknown to producers, and undocumented schema changes breaking downstream systems:
As a producer, how do I find consumers? Do I search all the repos looking for my message name? Do I ask on Slack if anyone consumes my events?
To address these challenges, Cooper outlined a set of emerging practices for managing asynchronous APIs in large organizations, organized around three pillars: discovery (finding and understanding the async API), governance (ensuring schemas are consistent and evolving safely), and provisioning (going from a specification to a deployment).
Central to this approach is the use of explicit specifications for messaging interfaces: technologies such as AsyncAPI, designed to build event-driven architectures, alongside alternatives such as xRegistry, provide machine-readable ways to describe event contracts. These specifications include topics, payload schemas, and message metadata, enabling teams to document ownership and improve discoverability across distributed systems.
Joking that “binary binding is not really binary and structured binding is not really structured,” Cooper then discussed the importance of standardized event metadata and schema governance. Formats such as CloudEvents can provide consistent metadata across messaging systems, while schema registries allow teams to validate event structures and manage compatibility as schemas evolve.
Comparing the different compatibility modes and explaining why developers cannot simply rely on human coordination among teams, Cooper described how these mechanisms support safer change management by ensuring producers and consumers remain compatible over time.
Beyond documentation and governance, Cooper emphasized the importance of automation and a change of mindset: “Tooling and adoption is still very hard: getting teams to write and maintain specifications requires cultural change, not just tooling.”
In mature event-driven platforms, endpoint specifications can serve as the source of truth, and from these definitions, tooling like AsyncAPI can generate code artifacts, automatically register schemas, and provision messaging infrastructure.
Cooper highlighted the benefits of tools such as EventCatalog in making asynchronous APIs and event-driven systems visible, discoverable, and governable at scale. This new approach reduces manual coordination between teams (“Specifications, not tickets!”) and provides architects with greater visibility and control over complex event flows in production environments.
The speaker closed the session with a demo using Marmot as an open-source example, and reminded the audience of the importance of treating async APIs with the same rigour as sync APIs.
