Microservices Design & Architecture

Tuesday, October 25, 2022

- PDT
PRO Workshop (API): So You Want to Split Your Monolith: First Steps
Joy Ebertz
Joy Ebertz
Split, Principal Engineer

It's very common to attempt to split a monolith into microservices and more and more companies are starting down this path.  But how do you even approach this problem? It's a giant task and getting started can be very daunting.  In this talk, I will draw on my experience at both Box and Split, as well as the research that I've done on the topic to discuss getting started with splitting up a monolith.  I will cover the strangler fig and big bang patterns as well as how to think about selecting services and ways to test your new services, including load and parity testing.  I will also mix in some of our actual experiences as we went down this path. 

- PDT
PRO Workshop (API): Killing a Giant - a Practical Guide Through the Martin Fowler's Strangler Fig Pattern
Branislav Bujišić
Branislav Bujišić
Platform.sh, Director of Engineering

Back in 2019, our company was preparing for a period of fast growth. One of the key blockers to that growth was a monolithic application called Accounts. Built initially around 2014 as a rapidly developed proof of concept, it quickly became a central piece for the customer interaction, a billing system, an auth server, a support ticketing system, the project lifecycle management system. The technical debt grew exponentially with every new feature added. The system needed to be replaced.

Martin Fowler described an interesting solution for a practically zero-downtime migration project from a monolithic application to -- something else. Instead of replacing an app with a single big bang, let’s build the new application around the existing one, and let them slowly take over its responsibilities until we’re ready to just delete it entirely. The concept was stolen from a natural phenomenon of Australian strangler figs growing around a host tree until they kill it.

What could possibly go wrong with such an approach, you may ask yourself. Well -- as we learned in the last couple of years -- quite a lot of things! To name a few: shared state between the legacy and the replacement application, designing the stopgap communication between the applications, balancing the development of the new features with the migration of the existing ones.

Join me for the session where we’ll discuss the theory and practice of the Strangler Vine Pattern around a Drupal 7 monolith, with a special focus on all the embarrassing errors we made along the way. 

- PDT
PRO Workshop (API): Our Journey from Monolithic to Microservice with Kubernetes
Gian Paolo Santopaolo
Gian Paolo Santopaolo
Collaboard, Technical Fellow

Collaboard is one of the three major players worldwide when it comes to digital whiteboards, and we have extremely high availability and scalability requirements.
In this course, we will walk through our evolution from a monolithic application to the real microservice architecture supporting event-driven design with gRPC, signalR, Protobuf, and RabbitMQ for .Net 6 and React on Kubernetes in the Cloud. 

- PDT
PRO Workshop (API): gRPC and Microservices
Wenbo Zhu
Wenbo Zhu
Google Cloud, Senior Staff Software Engineer

In this talk, we will describe the role of gRPC (grpc.io) in building and deploying cloud-native microservices, our experiences in integrating different cloud platform functions as part of the gRPC framework and the values such a solution provides to microservice developers. 

- PDT
PRO Workshop (API): Building an API Orchestrator
Jeu George
Jeu George
Orkes.io, Co-Founder and CEO

Microservices adoption has gone mainstream beyond the tech giants today.  They have become even more relevant as the companies take on the cloud journey and start to break down their monolithic architecture into Microservices.  This includes both business processes and data processing pipelines.  Of course, now instead of one big monolith application that can fail, you have dozens of smaller applications, each with its own failure surface area.

In this talk, we will present strategies to build resilient, distributed stateful applications in a hybrid cloud environment at scale that powers the likes of Netflix and many other businesses at scale.  We will dive deeper into the architecture of Netflix Conductor and how it allows you to seamlessly handle common concerns around failures, rate limits and scaling stateful systems as easily as a stateless service.

Wednesday, October 26, 2022

- PDT
OPEN TALK (API): You're Building Microservices Wrong
Jonathan Oliver
Jonathan Oliver
Smarty, Founder, CEO & CTO

In this presentation we will cover how microservices are typically implemented by ignoring The Fallacies of Distributed Computing. Further, we discuss solutions to make microservices much more robust and able to adapt to the realities of distributed systems. 

- PDT
OPEN TALK (API): Bring your .NET APIs to AWS
Isaac Levin
Isaac Levin
Amazon Web Services, .NET Developer Advocate

APIs are the backbone of many services we all know and love, and when it comes to hosting those APIs, AWS is a great option. When building APIs with .NET on AWS, there are a plentiful amount of options, ranging from the tried-and-true Web API running on Elastic Beanstalk to running highly scalable event driven functions with AWS Lambda. Let us spend some time during this session talking about building APIs on .NET and running them in AWS.

Thursday, October 27, 2022

- PDT
OPEN TALK (API): Maintaining Application SBOMs in a Microservices Architecture
Tracy Ragan
Tracy Ragan
DeployHub, CEO

Supply chain management speaks to improving security in the software systems we create. At the core of these discussions is the generation of SBOMs and CVE reports. In monolithic architecture, the creation of application SBOMs and CVE reports are done at the CI build step. But how do we manage SBOMs in a microservice environment without a monolithic build?

This presentation will review the supply chain complexities in a microservice architecture with hundreds of run-time dependencies, each having its own SBOM and CVE reports. It will introduce Ortelius, an open-source unified supply chain catalog, incubating at the Continuous Delivery Foundation, that aggregates SBOM and CVE microservice level data up to the consuming ‘logical’ applications. Attendees will learn how they can easily produce application-level supply chain reports that meet new federal security requirements, even in complex cloud-native environments. 

Tuesday, November 1, 2022

- PDT
[#VIRTUAL] PRO Workshop (API): So You Want to Split Your Monolith: First Steps
Join on Hopin
Joy Ebertz
Joy Ebertz
Split, Principal Engineer

It's very common to attempt to split a monolith into microservices and more and more companies are starting down this path.  But how do you even approach this problem? It's a giant task and getting started can be very daunting.  In this talk, I will draw on my experience at both Box and Split, as well as the research that I've done on the topic to discuss getting started with splitting up a monolith.  I will cover the strangler fig and big bang patterns as well as how to think about selecting services and ways to test your new services, including load and parity testing.  I will also mix in some of our actual experiences as we went down this path. 

- PDT
[#VIRTUAL] PRO Workshop (API): Killing a Giant - a Practical Guide Through the Martin Fowler's Strangler Fig Pattern
Join on Hopin
Branislav Bujišić
Branislav Bujišić
Platform.sh, Director of Engineering

Back in 2019, our company was preparing for a period of fast growth. One of the key blockers to that growth was a monolithic application called Accounts. Built initially around 2014 as a rapidly developed proof of concept, it quickly became a central piece for the customer interaction, a billing system, an auth server, a support ticketing system, the project lifecycle management system. The technical debt grew exponentially with every new feature added. The system needed to be replaced.

Martin Fowler described an interesting solution for a practically zero-downtime migration project from a monolithic application to -- something else. Instead of replacing an app with a single big bang, let’s build the new application around the existing one, and let them slowly take over its responsibilities until we’re ready to just delete it entirely. The concept was stolen from a natural phenomenon of Australian strangler figs growing around a host tree until they kill it.

What could possibly go wrong with such an approach, you may ask yourself. Well -- as we learned in the last couple of years -- quite a lot of things! To name a few: shared state between the legacy and the replacement application, designing the stopgap communication between the applications, balancing the development of the new features with the migration of the existing ones.

Join me for the session where we’ll discuss the theory and practice of the Strangler Vine Pattern around a Drupal 7 monolith, with a special focus on all the embarrassing errors we made along the way. 

- PDT
[#VIRTUAL] PRO Workshop (API): Our journey from monolithic to microservice with Kubernetes
Join on Hopin
Gian Paolo Santopaolo
Gian Paolo Santopaolo
Collaboard, Technical Fellow

Collaboard is one of the three major players worldwide when it comes to digital whiteboards, and we have extremely high availability and scalability requirements.
In this course, we will walk through our evolution from a monolithic application to the real microservice architecture supporting event-driven design with gRPC, signalR, Protobuf, and RabbitMQ for .Net 6 and React on Kubernetes in the Cloud. 

- PDT
[#VIRTUAL] PRO Workshop (API): gRPC and Microservices
Join on Hopin
Wenbo Zhu
Wenbo Zhu
Google Cloud, Senior Staff Software Engineer

In this talk, we will describe the role of gRPC (grpc.io) in building and deploying cloud-native microservices, our experiences in integrating different cloud platform functions as part of the gRPC framework and the values such a solution provides to microservice developers. 

- PDT
[#VIRTUAL] PRO Workshop (API): Building an API Orchestrator
Join on Hopin
Jeu George
Jeu George
Orkes.io, Co-Founder and CEO

Microservices adoption has gone mainstream beyond the tech giants today.  They have become even more relevant as the companies take on the cloud journey and start to break down their monolithic architecture into Microservices.  This includes both business processes and data processing pipelines.  Of course, now instead of one big monolith application that can fail, you have dozens of smaller applications, each with its own failure surface area.

In this talk, we will present strategies to build resilient, distributed stateful applications in a hybrid cloud environment at scale that powers the likes of Netflix and many other businesses at scale.  We will dive deeper into the architecture of Netflix Conductor and how it allows you to seamlessly handle common concerns around failures, rate limits and scaling stateful systems as easily as a stateless service.

Wednesday, November 2, 2022

- PDT
[#VIRTUAL] PRO TALK (API): Why Do You Need a Microservice Catalog to Enhance Developer Productivity?
Join on Hopin
Turja Narayan Chaudhuri
Turja Narayan Chaudhuri
Cloud Platform, Assistant Director

It is indeed a valid argument that microservices allows engineering organization to grow and scale, providing better constructs for isolation and independence. But, microservices do not only add technical complexity -they also introduce organizational complexity and pose a serious threat to scaling at the enterprise level.

Over time, with hundreds of services and no governance or oversight, when something breaks, nobody knows who to reach out to. A microservice catalog is a record/list of all the microservices that an enterprise has in its ecosystem, providing powerful information at your fingertips.

In this talk, you will learn how a microservice catalog facilitates a successful microservice at scale architecture by helping developers find and share services, providing DevOps teams metadata about services needed to make solid decisions, and support teams ownership and consumption information needed when something goes wrong. 

- PDT
[#VIRTUAL] PRO TALK (API): Distributed Systems: Key Concepts & Patterns
Join on Hopin
Waleed Ashraf
Waleed Ashraf
Klarna, Senior Engineer

“Distributed Systems” is the main key to modern-day systems, microservices, and messaging brokers. This talk will be about the key concepts of Distributed Systems and different patterns being used in the industry. The topics we will go through are irrelevant to the technology and tech stack, so it’s good for engineers at all levels.

This talk is split into two parts. The first part will cover the key concepts and timeline of improvement in this field. In the second part, we will go through some of the main patterns which are being used in the industry to address the issues which come with distributed systems.

We'll go through concepts like Two Generals’ Problem, Consensus & Paxos, Cloud Spanner (CA), and patterns like Event Sourcing, CQRS, SAGA, etc. 

- PDT
[#VIRTUAL] OPEN TALK (API): You're Building Microservices Wrong
Join on Hopin
Jonathan Oliver
Jonathan Oliver
Smarty, Founder, CEO & CTO

In this presentation we will cover how microservices are typically implemented by ignoring The Fallacies of Distributed Computing. Further, we discuss solutions to make microservices much more robust and able to adapt to the realities of distributed systems. 

- PDT
[#VIRTUAL] OPEN TALK (API): Bring your .NET APIs to AWS
Join on Hopin
Isaac Levin
Isaac Levin
Amazon Web Services, .NET Developer Advocate

APIs are the backbone of many services we all know and love, and when it comes to hosting those APIs, AWS is a great option. When building APIs with .NET on AWS, there are a plentiful amount of options, ranging from the tried-and-true Web API running on Elastic Beanstalk to running highly scalable event driven functions with AWS Lambda. Let us spend some time during this session talking about building APIs on .NET and running them in AWS.

Thursday, November 3, 2022

- PDT
[#VIRTUAL] OPEN TALK (API): Key Benefits of Modernizing Monolith Legacy Applications to Microservices With the Strangler Pattern
Join on Hopin
Amir Rapson
Amir Rapson
vFunction, CTO and Co-Founder

Transforming monolithic applications into microservices is a fundamental element for business modernization in order to innovate, scale and retain competitive positioning in the market. While modernization takes many forms, transforming monolithic applications into microservices is the most effective way to regain engineering velocity. In this session, Amir Rapson, CTO and co-founder of vFunction, will present how an AI assisted method that implements the Strangler Pattern to transform existing legacy monolithic applications into cloud-native microservices is used and how it benefits developers. This technical workshop will also include insights into how to determine components needed to run in parallel to existing monolithic code, the key factors for selecting components to refactor and critical elements to executing a successful app modernization strategy. 

- PDT
[#VIRTUAL] OPEN TALK (API): Maintaining Application SBOMs in a Microservices Architecture
Join on Hopin
Tracy Ragan
Tracy Ragan
DeployHub, CEO

Supply chain management speaks to improving security in the software systems we create. At the core of these discussions is the generation of SBOMs and CVE reports. In monolithic architecture, the creation of application SBOMs and CVE reports are done at the CI build step. But how do we manage SBOMs in a microservice environment without a monolithic build?

This presentation will review the supply chain complexities in a microservice architecture with hundreds of run-time dependencies, each having its own SBOM and CVE reports. It will introduce Ortelius, an open-source unified supply chain catalog, incubating at the Continuous Delivery Foundation, that aggregates SBOM and CVE microservice level data up to the consuming ‘logical’ applications. Attendees will learn how they can easily produce application-level supply chain reports that meet new federal security requirements, even in complex cloud-native environments.