Observability Must Evolve with Serverless, Event-Driven Architectures to Navigate Modern Software Complexity, GOTO Copenhagen Speakers Emphasize.

The rapidly evolving landscape of software engineering, characterized by the proliferation of serverless and event-driven architectures, necessitates a fundamental rethinking of how systems are monitored and understood. This was a central theme highlighted by Martin Thwaites during his insightful talk, "Observability and the Art of Software Engineering," at the prestigious GOTO Copenhagen conference. Thwaites underscored the critical role of OpenTelemetry in decoupling telemetry generation from vendor-specific solutions, thereby empowering developers to emit consistent, high-quality data that accurately reflects real system behavior. The adoption of shared vocabularies and robust telemetry, he argued, is paramount for accelerating debugging processes, enhancing system reliability and speed, and ultimately boosting developer productivity in an increasingly complex operational environment.
The Paradigm Shift in Modern Software Architectures
Modern observability is inextricably linked to the definitions of "modern" systems, "modern" development processes, and "modern" architecture. Thwaites elucidated that the methodologies for architecting, building, and supporting systems have undergone a profound transformation since the era of monolithic applications and dedicated servers. The industry has moved decisively towards distributed paradigms, driven by the demands for scalability, resilience, and agility.
"We’re now building Serverless, Event Driven, Cell-based architectures," Thwaites explained, "therefore the way we think about the telemetry, and ultimately observability around them, should also change." This shift is not merely an incremental update but a complete re-evaluation of monitoring strategies. Traditional monitoring tools, often designed for static, well-defined infrastructure, struggle to cope with the ephemeral nature, distributed transactions, and dynamic scaling inherent in cloud-native, serverless, and event-driven systems. The sheer volume and velocity of data generated by these micro-services-based systems often overwhelm conventional approaches, leading to blind spots and prolonged incident resolution times.
The GOTO Copenhagen conference, renowned for bringing together thought leaders in software development, serves as a crucial platform for discussing such industry-defining shifts. Attendees, typically senior developers, architects, and engineering managers, seek guidance on navigating these complex transitions. Thwaites’s presentation resonated deeply within this context, offering a strategic framework for tackling the observability challenges posed by contemporary architectures.
OpenTelemetry: Standardizing the Language of System Health
At the heart of Thwaites’s proposed solution lies OpenTelemetry, an open-source observability framework under the Cloud Native Computing Foundation (CNCF). He described OpenTelemetry as "the glue that sits between your systems, documenting what’s happening (emitting their telemetry), and the system (or potentially systems plural) that help you make sense of that data." Its fundamental strength lies in its vendor-agnostic nature, providing a standardized set of APIs, SDKs, and tools for generating, collecting, and exporting telemetry data—including traces, metrics, and logs.
Prior to OpenTelemetry, developers often faced the dilemma of integrating with proprietary vendor agents and APIs, leading to vendor lock-in, inconsistent data formats across different tools, and significant overhead when migrating between observability platforms. OpenTelemetry addresses this by creating a universal language for telemetry. "This decoupling makes it a developer-focused tool. You can concentrate on producing the best telemetry you can, instead of tailoring it to make it work within your current product," Thwaites emphasized. This liberation allows engineering teams to focus on instrumenting their applications effectively, knowing that their telemetry data will be consumable by any OpenTelemetry-compatible backend, whether it’s an open-source solution like Jaeger or Prometheus, or commercial offerings from major cloud providers and observability vendors.
The adoption of OpenTelemetry has been steadily increasing since its inception, with a growing number of organizations recognizing its strategic value. According to recent industry reports, OpenTelemetry has emerged as the de facto standard for cloud-native observability, with a significant percentage of new microservices projects incorporating it from the outset. This widespread acceptance underscores the industry’s collective recognition of the need for a unified approach to telemetry, moving beyond fragmented and proprietary solutions. The project’s active community, robust governance model under the CNCF, and continuous development further solidify its position as a cornerstone of modern observability.
The Imperative of High-Quality Telemetry
Beyond simply emitting data, Thwaites stressed the paramount importance of producing good telemetry. By "good telemetry," he referred to data that is meticulously focused on describing how the system "works" in production. In the context of distributed systems, "works" implies understanding how each service processes a particular request or interaction. This goes beyond basic health checks; it delves into the intricate details of execution paths and resource utilization.
"It will allow you to, from that data, understand what makes this interaction different from another, and what that caused to happen in the system, whether that’s specific database calls, or whether it’s particular, unique, codepaths that were executed," Thwaites elaborated. This level of detail is crucial for effective root cause analysis. When a critical production issue arises, having comprehensive traces that show the full journey of a request across multiple services, along with associated metrics and logs, drastically reduces the time engineers spend debugging. Industry data consistently shows that organizations with mature observability practices experience significantly lower Mean Time To Detect (MTTD) and Mean Time To Resolution (MTTR) for incidents, directly impacting customer satisfaction and business continuity. Thwaites concluded that if done consistently, "debugging of production issues is amazingly simple and quick."
Fostering Consistency with Shared Vocabularies: Introducing Weaver
One of the persistent challenges in distributed systems monitoring has been the lack of consistency in how different teams and services describe their performance and behavior. As system complexity escalates, this inconsistency becomes a major impediment to holistic understanding and efficient collaboration. To address this, Thwaites introduced Weaver, a tool designed to document the telemetry emitted by systems, going beyond standard attributes like HTTP or gRPC.
"It allows teams to define a shared vocabulary of telemetry in a way that observability backends, AI tooling, and ultimately humans, can use to understand that complex system," Thwaites explained. Weaver facilitates the creation of a common semantic layer for telemetry data, ensuring that terms like customer_id, order_status, or transaction_type are used uniformly across all services. This standardization is vital for aggregating data effectively, building consistent dashboards, and enabling cross-service analysis. Without such a shared vocabulary, each service might use a different nomenclature for the same concept, rendering large-scale analysis and automated remediation efforts extremely difficult.
Weaver also integrates practical features like live checking and exception tracking against telemetry, ensuring adherence to approved conventions. Furthermore, its code generation capabilities simplify adoption, allowing developers to generate boilerplate code for emitting standardized telemetry, thereby reducing manual effort and potential errors. This proactive approach to consistency ensures that observability data is not just present but also meaningfully structured and readily interpretable across the entire organization.
Observability as a Core Development Task, Not an Operations Burden
Perhaps one of the most profound insights offered by Thwaites was the reclassification of telemetry generation from an operational task to a fundamental development responsibility. "Producing good telemetry is the single greatest thing that will move the needle in how your team can support the production systems," he argued. This perspective challenges the traditional division of labor where developers build features and operations teams are solely responsible for monitoring.
Thwaites posited that the most effective engineering teams he has encountered treat telemetry with the same rigor and dedication as they do core business logic. "The best teams I’ve worked with have spent as much time curating the telemetry they output as they have writing the code that performs the business outcome," he stated. This integrated approach ensures that observability is designed into the software from its inception, rather than being an afterthought.
The benefits of embedding telemetry as a core development task are manifold and far-reaching. Thwaites concluded that once teams embrace this philosophy, its positive effects become evident "in so many different ways, from MTTR, MTTD, developer happiness, defect rate, everything." Developers gain a deeper understanding of how their code behaves in production, leading to more robust designs and fewer defects. Operations teams receive higher quality, more consistent data, enabling faster incident response and proactive problem-solving. This cultural shift fosters a stronger sense of ownership among developers for the entire lifecycle of their applications, from coding to production support.
Observability’s Critical Role in the Age of Artificial Intelligence
In an exclusive interview with InfoQ, Martin Thwaites delved into the specific implications of observability for artificial intelligence (AI) applications, an area of rapidly increasing interest and investment across industries.
InfoQ: What can observability do for artificial intelligence applications?
Martin Thwaites: "Observability is designed as a means to ask questions of your production system that you didn’t know that you needed to ask while you were writing the code, which is exactly what we need when a system can use AI to perform tasks. We don’t know how that system is going to react to a given input, and that input can and will change as users interact with it."
This statement highlights a fundamental challenge in AI systems: their often opaque and dynamic nature. Unlike deterministic software, AI models can exhibit emergent behaviors and react to inputs in ways not explicitly programmed or easily predictable. This "black box" problem makes traditional debugging incredibly difficult. Robust observability provides the necessary visibility into the internal workings of AI applications, allowing engineers to understand why a model made a particular decision, how it processed specific data, and how its performance is evolving over time.
Thwaites further stressed the importance of context: "It’s now even more important that we get robust telemetry, that includes our unique business context, out of our systems so that we can answer those weird and wonderful questions." For AI applications, business context in telemetry might include details about the input features, model predictions, confidence scores, user feedback, and the specific business outcome associated with an AI-driven decision. This rich, contextual data is essential for debugging model biases, identifying data drift, optimizing model performance, and ensuring responsible AI deployment. Without comprehensive observability, AI systems risk operating as unmonitorable entities, posing significant risks to business operations and ethical compliance.
Integrating Telemetry with Test-Driven Development (TDD)
The interview also explored the relationship between telemetry and test-driven development (TDD), offering insights into how observability can be proactively baked into the development process.
InfoQ: How are telemetry and test-driven development related?
Thwaites: "Telemetry is a core output of our applications; it’s how we understand how an action from a user did the right thing. If we’re writing tests in a TDD workflow (i.e., writing tests before the implementation), and we’re using telemetry as part of those tests to understand that an action was performed correctly, then the code we produce is designed to be observable from the start."
This perspective champions a "design for observability" approach. By incorporating telemetry into TDD, developers are encouraged to think about the observable behaviors of their code even before writing the implementation. A test might not only assert a function’s return value but also verify that the correct telemetry (e.g., a specific trace span, a metric increment, or a log event with certain attributes) was emitted during its execution. This ensures that when the code eventually reaches production, it already provides the necessary insights for understanding its runtime behavior. This proactive integration helps catch observability gaps early in the development cycle, reducing the likelihood of discovering them only during a critical production incident. It reinforces the idea that observability is not an afterthought but an integral quality attribute of well-engineered software.
Broader Industry Impact and Future Outlook
The discussions at GOTO Copenhagen, particularly Martin Thwaites’s insights, underscore a significant shift in the software engineering paradigm. The move towards serverless, event-driven, and cell-based architectures is not merely a technological trend but a fundamental redefinition of how applications are built, deployed, and managed. Observability, once often seen as a secondary concern, has now risen to the forefront as a critical enabler for success in this complex environment.
The continued evolution and adoption of OpenTelemetry, coupled with innovative tools like Weaver, are providing the foundational building blocks for a more standardized and effective approach to understanding distributed systems. As organizations increasingly rely on cloud-native technologies and sophisticated AI applications, the ability to rapidly diagnose issues, ensure system reliability, and maintain high levels of developer productivity will be paramount for competitive advantage. The future of software engineering will undoubtedly see observability practices becoming even more deeply integrated into the entire software development lifecycle, transforming how teams operate and ensuring that the art of software engineering keeps pace with the demands of modern digital services.







