Don’t Build a Distributed Monolith: How to Avoid Doing Microservices Completely Wrong

Presented by: Jonathan "J." Tower

As a consultant, I get to see many systems built by many different developers. Recently, I’ve seen an uptick in the number of systems built with a microservice architecture in mind, but those systems often include a lot of the same mistakes that keep them from working well. ...

Tags: ArchitectureFormat: General SessionLevel: Intermediate

A Contrarian View of Software Architecture

Presented by: Jeremy Miller

I’ve spent an inordinate amount of time the past half decade across multiple companies working with very large, long running enterprise systems. Especially in long running, constantly changing systems, you want the code to be easy to understand, relatively painless to extend or modify, and when...

Tags: Programming Principles, ArchitectureFormat: General SessionLevel: Intermediate

Application Architecture Patterns

Presented by: Joseph Guadagno

Architecting an application can be challenging. What do you do to keep your application flexible to ever-constant requirement changes? How do you handle landscape changes (cloud, on-premises, databases)? How do you avoid over-engineering the application? How do I make sure my application plays well...

Tags: Programming Principles, Architecture, System DesignFormat: General SessionLevel: Intermediate

Clean Architecture with ASP.NET Core 8

Presented by: Steve Smith

Clean Architecture is a very popular approach for DDD and Microservices, and for good reason. It's not a new approach, and went by other names in the past (e.g. Onion, Hexagonal, Ports-and-Adapters). One of the main benefits of the approach is its focus on business logic and its reduction in...

Tags: .NET, C#, Backend, Object Oriented Programming, Programming Principles, Architecture, System Design, Code QualityFormat: General SessionLevel: Intermediate

Expect the Unexpected: Handling Exceptions in Enterprise Applications

Presented by: Kito Mann

One of the most common reasons for software defects is poor exception handling. The more complex the application, the more difficult it can be to track down the root cause of a bug. An exception at the service or database layer may manifest itself as unpredictable behavior at the user interface...

Tags: Java, Programming Principles, Architecture, System DesignFormat: General SessionLevel: Intermediate

Harnessing the Power of Asynchronous Messaging and Eventing for Distributed Systems at Scale

Presented by: Eric Boyd

Distributed applications, microservices solutions and systems at scale depend on In today's era of distributed applications, microservices, and systems at scale, the key to achieving agility, resilience, and scalability lies in mastering the art of asynchronous messaging and eventing. ...

Tags: Architecture, System Design, PerformanceFormat: General SessionLevel: Intermediate

The Right Database for the Right Job

Presented by: Nuri Halperin

Picking a database for your particular purpose is hard, and vendors don't make it easier. So which database is right for which workload? ...

Tags: Databases, ArchitectureFormat: General SessionLevel: Intermediate

CQRS with Event Sourcing using the “Critter Stack”

Presented by: Jeremy Miller

Do you have a system where you think would be a good fit for a CQRS architecture that also uses Event Sourcing for at least part of its persistence strategy? Are you intimidated by the potential complexity of that kind of approach? ...

Tags: .NET, Databases, ArchitectureFormat: General SessionLevel: Intermediate

The Micro-Frontend Playbook

Presented by: Marko Skugor

Micro-frontend architecture can provide a lot of great benefits to team autonomy and can play a crucial role in enabling technical and organizational scalability. At the same time, it also comes with a lot of potential pitfalls and anti-patterns to avoid. In this talk we'll learn how to apply Domain...

Tags: Javascript, Front End, Cloud, ArchitectureFormat: General SessionLevel: Intermediate