Skip to content


Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.

Context is King: Finding Service Boundaries

Are you having trouble defining service boundaries? We know there are benefits in splitting up a complex system, such as more focused models and modular deployments. Defining the correct service boundaries is incredibly important but can be pretty tricky. When defined correctly, the model feels natural and cohesive. Defined wrong can make a system overly complex and end in disaster. Join Derek as he explores the use of key terminology in real business systems. How dissecting simple words and asking the right questions led to insights that helped define the service boundaries in real business systems developed over the last decade. Download Slides

Blazor: C# in the Browser with WebAssembly

Browser + Razor = Blazor! Blazor is based on existing web technologies like HTML and CSS, but you use C# and Razor syntax instead of JavaScript to build composable web UI. Download Slides

Vertical Feature Slices, not Layers!

Does adding a new feature require you to modify files across multiple projects in your UI business and data access layers? Tired of mapping DTOs through the various layers of your system? A layered architecture can be a painful when you really develop in vertical slices. We’re going to rewrite an existing app into features instead of technical layers. Covering the benefits and how to create a vertical slice using SOLID principles. Download Slides

Building Self Describing Web APIs

Does your web API expose your database structure and provide GET/POST as way to perform CRUD operations? Do your clients know the control logic/workflow of your API? Web APIs that represent your database couples your clients to the internals of your app, making it much harder to change your API. In this presentation we’re going to learn how to go beyond serializing a database row into json by leveraging hypermedia to write self-describing APIs Download Slides

Fat Controller CQRS Diet