You are viewing content from a past/completed QCon

Track: Microservices Patterns & Practices

Location: Ballroom A

Day of week: Tuesday

Join us to explore the state of the art in service-based architectures. Learn from practitioners building, operating, and evolving systems in the most demanding environments, from applications that interact with the physical world—like industrial automation, manufacturing, and the Internet of Things—to always-on, consumer products, platforms, and services. We will explore how to address the most difficult challenges presented by these systems: how to manage state; how to respond to failure; how to represent quality and uncertainty in data; how to react to events as they occur, so that applications are responsive; how to automatically adjust to system dynamics; and how to instrument these systems to sufficiently understand and control what they are doing.

Track Host: Colin Breck

Sr. Staff Software Engineer @Tesla

Colin Breck has experience developing software infrastructures for the near real-time monitoring and control of industrial applications. At Tesla, he works on distributed systems for the monitoring, aggregation, optimization, and control of distributed-energy assets, including solar generation, battery storage, and the Supercharging network. Previously, he worked on the PI System at OSIsoft, a time-series platform for industrial monitoring and automation. He is interested in the intersection of developing people, teams, and software systems. He writes a monthly essay at www.colinbreck.com.

10:35am - 11:25am

Managing Failure Modes in Microservice Architectures

With the right architectural and operational patterns, failures are mitigated, contained and managed, rather than escalating and getting out of control. This talk will explore how to apply some industry standard techniques — including Failure Modes and Effects Analysis, and Systems Theoretic Process Analysis — to cloud native microservices architectures. Mitigation methods depend upon multiple layers of defense, but these defenses need to be tested to show that they work, and we will also look at how chaos engineering techniques are driving the industry from annual datacenter disaster recovery testing of monolithic applications to continuous resilience assurance for cloud native microservices.

Adrian Cockcroft, VP Cloud Architecture Strategy @AWSCloud & Microservices Pioneer

11:50am - 12:40pm

User & Device Identity for Microservices @ Netflix Scale

Millions of members across the world access Netflix on their devices to stream movies and tv shows. Once these users login to the Netflix app, their identity and the identity of their device needs to be securely propagated to hundreds of microservices within the Netflix ecosystem. This combined identity is leveraged across the entire stack of microservices to make appropriate authorization and business decisions.  At Netflix scale, this means hundreds of millions of devices, for every request to Netflix services, send this identity in the form of one of the multiple types of authentication tokens that we support. This presented the challenge that each microservice had to know about the various types of tokens (say, Cookies vs JWT). Also, the extraction of the identity information from these tokens was inefficient at scale and error prone, causing hard-to-debug issues related to identity. Building a solution to enable a token agnostic identity model at the edge, that was both secure and efficient was a key aspect of this architecture.

This talk will provide useful insights on how we implemented a secure, token-agnostic, identity solution that works with services operating at a massive scale. Come learn how this solution helped hundreds of middle-tier services to not worry about the types of tokens and authentication concerns, and consume the user and device identity with high confidence.

Satyajit Thadeshwar, Senior Software Engineer in Product Edge Access Services Team @Netflix

1:40pm - 2:30pm

Stateful Programming Models in Serverless Functions

Most will agree that Serverless is the future of cloud computing. But when most people think of Serverless, they think of FaaS (Functions as a Service), and when they think of FaaS, they think of functions that are ephemeral, stateless, and short-lived. But does this always need to be the case? Is it possible write functions that are stateful and long-running on top of ephemeral, Serverless compute platforms?

In this session, we'll explore two stateful programming models: workflows and actors. We'll discuss how they can simplify development and how they enable stateful and long-running application patterns within ephemeral, Serverless compute environments. We'll also explain why we're making a bit bet on these programming models in the Azure Functions service.

Chris Gillum, Principal Engineering Manager @Microsoft, helping lead the Azure Functions Team

2:55pm - 3:45pm

Controlled Chaos: Taming Organic, Federated Growth of Microservices

The success with which enterprises execute on microservice strategies and the degree to which cloud-native technologies boost developer productivity leave operations and security teams with an organically growing landscape of federated services that is increasingly difficult to control. As a result, failures mount, resilience declines, and innovation dies.

In this talk, I focus on the challenges that result from organic, federated growth as well as the patterns that can be applied to monitor and control these dynamic systems, like bulkheads, backpressure, and quarantines, from both an operational and security perspective. I illustrate how visibility and control of the surrounding environment become more important than the observability of individual threads of execution and how the nature of this organic architectural style necessitates a shift to remediating behaviors in real-time.

Tobias Kunze, Co-founder and CEO @glasnostic

4:10pm - 5:00pm

Beyond Microservices: Streams, State and Scalability

Microservices have been a popular architecture choice for at least 5 years by now. Over these years we've adopted microservices architectures to ever growing set of use-cases and different development and deployment strategies. Lessons were learned and our ability to design, develop, deploy and operate microservices has improved.  

This presentation will give an opinionated view of how microservices evolved in the last few years, based on experience gained while working with companies using Apache Kafka to update their application architecture. We'll discuss the rise of API gateways, service mesh, state management and serverless architectures - what works well, and in which cases. We'll show real-world examples of how applications become more resilient and scalable when new patterns are introduced, and make sure to include caveats - because patterns are all about using them in the right context.

Gwen Shapira, Software Engineer @Confluent, PMC Member @Kafka, & Committer Apache Sqoop

5:25pm - 6:15pm

Microservices Open Space

Session details to follow.

2020 Tracks

  • The Future of the API: REST, gRPC, GraphQL and More

    Web-based API continue to evolve. The track provides the what, how, and why of future APIs, including GraphQL, Backend for Frontend, gRPC, & ReST

  • Resurgence of Functional Programming

    What was once a paradigm shift in how we thought of programming languages is now main stream in nearly all modern languages. Hear how software shops are infusing concepts like pure functions and immutablity into their architectures and design choices.

  • Social Responsibility: Implications of Building Modern Software

    Software has an ever increasing impact on individuals and society. Understanding these implications helps build software that works for all users

  • Non-Technical Skills for Technical Folks

    To be an effective engineer, requires more than great coding skills. Learn the subtle arts of the tech lead, including empathy, communication, and organization.

  • Clientside: From WASM to Browser Applications

    Dive into some of the technologies that can be leveraged to ultimately deliver a more impactful interaction between the user and client.

  • Languages of Infra

    More than just Infrastructure as a Service, today we have librarys, languages, and platforms that help us define our infra. Languages of Infra explore languages and libraries being used today to build modern cloud native architectures.

  • Mechanical Sympathy: The Software/Hardware Divide

    Understanding the Hardware Makes You a Better Developer

  • Paths to Production: Deployments You've Always Wondered About

    Deployment pipelines allow us to push to production at ever increasing volume. Paths to production looks at how some of software's most well known shops continuous deliver code.

  • Java, The Platform

    Mobile, Micro, Modular: The platform continues to evolve and change. Discover how the platform continues to drive us forward.

  • Security for Engineers

    How to build secure, yet usable, systems from the engineer's perspective.

  • Modern Data Engineering

    The innovations necessary to build towards a fully automated decentralized data warehouse.

  • Machine Learning for the Software Engineer

    AI and machine learning is more approachable than ever. Discover how ML, deep learning, and other modern approaches are being used in practice by Software Engineers.

  • Inclusion & Diversity in Tech

    The road map to a inclusive and diverse tech organization. *Diversity & Inclusion defined as the inclusion of all individuals in an within tech, regardless of gender, religion, ethnicity, race, age, sexual orientation, and physical or mental fitness.

  • Architectures You've Always Wondered About

    How do they do it? In QCon's marquee Architectures track, we learn what it takes to operate at large scale from well-known names in our industry. You will take away hard-earned architectural lessons on scalability, reliability, throughput, and performance.

  • Architecting for Confidence: Building Resilant Systems

    Your system will fail. Build systems with the confidence to know when they do, you won't.

  • Remotely Productive: Remote Teams & Software

    More and more companies are moving to remote work. How do you build, work on, and lead teams remotely?

  • Operating Microservices

    Building and operating distributed systems is hard, and microservices are no different. Learn strategies for not just building a service but operating them at scale.

  • Distributed Systems for Developers

    Computer science in practice. An applied track that fuses together the human side of computer science with the technical choices that are made along the way