When applying the microservice architecture pattern, the most important design decisions that you must make do not involve technology choices, such as Kubernetes vs. Serverless or REST vs. gRPC.
Instead, what’s critical to your success is creating a microservice architecture that supports the fast flow: the continuous flow of valuable changes to customers.
To do that, you must correctly identify services, and define their responsibilities, APIs and collaborations.
That’s because if you design your services badly, you risk creating a fragile, distributed monolith where every service is a potential point of failure, and services regularly change in lockstep, which slows down development.
In this three-day in-person workshop with Chris Richardson, author of the bestseller Microservices Patterns, you will experience and practice how to design a loosely coupled, microservice architecture that enables fast, sustainable flow.
Target Audience
This workshop is for you if you’re an experienced developer, architect, CTO, or VP of engineering and you are either using or planning to use the microservice architecture.
If you are considering migrating your monolith to microservices, you will learn how to avoid many pitfalls using the microservice architecture pattern. Alternatively, if you are currently using microservices, you will learn how to improve your microservice architecture both now and in the future.
Topics
- The architectural requirements for fast, sustainable flow
What DevOps and Team topologies require from the architecture in order to deliver a continuous stream of small changes, - Dark energy and dark matter, the forces that shape an architecture
The conflicting concerns, such as increasing team autonomy by defining smaller services vs. the need for efficient inter-service communication – that you must address with designing an architecture, - The essential characteristics of the microservice architecture
A precise definition of this architecture style including its essential features, why it enables fast flow, and why it doesn’t mean a collection of tiny services, - A process for designing a microservice architecture
A rigorous design process for creating an architecture that carefully balances the dark energy and dark matter forces, - Eventually consistent service collaboration patterns
Eventually consistent patterns for implementing requests that span multiple services.
Agenda
Through a combination of lectures, discussions, and kata exercises, the trainer, Chris Richardson, will walk you through distilling your application’s requirements into a collection of loosely coupled, appropriately-sized services.
Day 1
- Designing a microservice architecture for fast, sustainable flow
- Discovering system operations
- Designing subdomains.
Day 2
- Service collaboration patterns
- Designing a service architecture part 1.
Day 3
- Designing a service architecture part 2
- Evaluating a microservice architecture
- Refactoring a microservice architecture.
Learning Objectives
- Understand when to use the microservice architecture
- Identify and define services
- Design operations that span multiple services using patterns such as Saga and CQRS
- Evaluate a microservice architecture and identify architectural smells
- Refactor and improve an architecture
- Document a microservice architecture.
Expect to get your hands dirty
In this workshop, you will design a service architecture for a simple, yet realistic application.
The workshop is a mixture of Lectures + Katas + Design reviews.
We’ll use a variety of tools, both tech and non-tech, such as Miro, pen and paper, post-its, for all the exercises.
The workshop will mix of theory and practice, with lots of practical exercises, both solo and in groups.
Why should I buy a ticket
Join Chris Richarsdon to experience and learn when to use the microservice architecture; how to design a good microservice architecture; and how to avoid common, architectural anti-patterns.