30% OFF - Use code HANDSON30 for 30% off any course or Dometrain Pro! Browse courses →
  • Courses
  • Learning Paths
  • Blogs
  • Authors
  • Leaderboard
  • Dometrain Pro
  • Shopping Basket

    Your basket is empty

  • Business Portal
  • Deep Dive: Solution Architecture

    Master solution architecture and turn business needs into scalable, maintainable systems.

    About This Course

    Enhance your solution architecture skills in this hands-on course that will help you transform business requirements into scaleable systems. From the development of a new enterprise application to refactoring an existing one, you will gain useful lessons for making sound architectural decisions based on business value along with technical excellence. You will begin by building modular monoliths by using modern patterns that allow for future growth, as well as by structuring the system rightly, being integral, and making it easy for communication among the components. The course will walk you through architectural maturity, with particular emphasis on observability for continuous improvement and the right time to transition from monoliths to microservices. You will study event-driven patterns like the Outbox Pattern and how to implement strategies for synchronous and asynchronous communication. You'll also develop systems thinking skills with the help of methods such as Event Storming and C4 modeling to manage technical and social complexity. By getting your decisions right with Architecture Decision Records (ADRs), you'll be prepared to design systems in line with business objectives and evolving conditions. Your skills as a solution architect are about to level up! In this in-depth course, you'll be an art and science master of solution architecture by gaining knowledge to transform business requirements into robust, scalable, and sustainable systems. No matter if you're building your first business app or refactoring a legacy system, this course provides pragmatic guidance on architecting trade-offs that reconcile technical quality with business value.

    Course Curriculum

    4h 35m 9 sections
    Welcome
    00:48 Free preview
    What will you learn in this course?
    03:38 Free preview
    Who is the course for and prerequisites
    00:49 Free preview
    Why we start here
    05:14
    Modules not layers
    07:42
    Fitness functions to enforce architecture
    08:25
    Module to module communication
    10:05
    Data patterns for modularity
    07:10
    Seeing inside the box
    11:05
    Fitness functions to enforce requirements
    04:03
    Living Documentation
    03:48
    Wrap up
    02:26
    When metrics lie
    01:38
    Observability driven improvements
    07:39
    Preparing for evoloution part 1
    05:19
    Preparing for evoloution part 2
    07:38
    Strategic Decisions in Microservice Evolution
    05:27
    Using events for evoloution
    02:41
    The Outbox Pattern
    03:17
    Public vs private events
    03:17
    Dealing with errors
    05:03
    Observability driven improvements part 2
    04:57
    Architecture separation of concerns
    05:19
    Wrap up
    01:15
    Reflections on Architectural Complexity
    03:54
    Essential vs. Accidental Complexity
    04:38
    Synchronous Service Resilience
    04:59
    Asynchronous Service Resilience
    02:29
    Enhancing System Resilience: Balancing Caching and HTTP Requests
    08:01
    Understanding Idempotency in Distributed Systems
    06:51
    Balancing Technical and Social Complexity
    04:27
    Architecting Success: Bridging Business and Technology
    04:49
    The Pitfalls of Over-Engineering
    03:04
    The Art of Systems Thinking for Architects
    03:02
    Understanding Domains through Storytelling
    05:15
    Unlocking Business Insights with Event Storming
    07:52
    C4 Modelling Uncovered
    05:50
    From User Journeys to Architecture
    04:01
    Effective technology choices
    01:53
    The Serverless Spectrum
    07:19
    Balancing Serverless Functions and Containers
    05:19
    Modularity For Flexibility
    06:48
    Make smart decisions to solve real problems
    03:30
    Stateless processes and data lock-in
    05:51
    The hidden factor in technology choices
    04:00
    Simplifying Architecture
    02:45
    Introduction
    01:07
    Resume Driven Development
    08:29
    Navigating the architects elevator
    04:51
    Guardrails not mandates
    03:06
    Golden paths to enable teams
    05:34
    Understand architecture decision records
    07:18
    Navigating chaos in software architecture
    03:31
    Modularity, your #1 concern
    02:08
    Building evolvable architectures
    05:52
    A case study in flexibility
    03:41
    Conclusion
    03:59

    Meet Your Instructor

    James Eastham

    James Eastham

    James Eastham is a Serverless Developer Advocate at Datadog and a Microsoft MVP. He has over 10 years of software experience at all layers of the software development process and has spoken at conferences all over the world. He answered phones in front-line support, administered databases, and built SSIS packages, as well as developed cloud-native backends with serverless technologies. He spent time at AWS working with some of the biggest companies on the planet, migrating workloads from data centers into the cloud and modernizing in the process. James produces content on YouTube focused on architecting and building applications with serverless technologies using .NET and Rust. He also has a strong interest in and expertise in event-driven architecture and building more loosely coupled systems.

    View all courses by James Eastham

    What's New

    Getting Started: Model Context Protocol (MCP)
    course

    Getting Started: Model Context Protocol (MCP)

    Learn how to get started with the Model Context Protocol (MCP) and integrate it into your applications.

    Learn more about Getting Started: Model Context Protocol (MCP)
    Hands-On: Learn TypeScript
    course

    Hands-On: Learn TypeScript

    Learn TypeScript through hands-on coding exercises. Practice what you learn with interactive challenges designed for every level.

    Learn more about Hands-On: Learn TypeScript
    Hands-On: Learn JavaScript
    course

    Hands-On: Learn JavaScript

    Learn JavaScript through hands-on coding exercises. Practice what you learn with interactive challenges designed for every level.

    Learn more about Hands-On: Learn JavaScript
    Hands-On: Data Structures & Algorithms in C#
    course

    Hands-On: Data Structures & Algorithms in C#

    Master data structures and algorithms through hands-on coding exercises in C#. Free to enroll for 7 days!

    Learn more about Hands-On: Data Structures & Algorithms in C#
    Blogsmith.ai
    feature

    Blogsmith.ai

    Turn your videos into blogs and newsletters with AI. Check out our new product at blogsmith.ai.

    Learn more about Blogsmith.ai
    Leaderboard
    feature

    Leaderboard

    See how you stack up against other learners. Track your progress, climb the ranks, and compete with the Dometrain community.

    Learn more about Leaderboard
    Hands-On: Learn PostgreSQL
    course

    Hands-On: Learn PostgreSQL

    Learn PostgreSQL through hands-on coding exercises. Practice what you learn with interactive challenges designed for every level.

    Learn more about Hands-On: Learn PostgreSQL
    Free Hands-On: C# for Beginners
    course

    Free Hands-On: C# for Beginners

    Learn C# through hands-on coding exercises. Practice what you learn with interactive challenges designed for everyone, from beginners to experts.

    Learn more about Free Hands-On: C# for Beginners
    Getting Started: AI for .NET Developers
    course

    Getting Started: AI for .NET Developers

    Get started with integrating AI into your .NET applications effectively using the latest LLM best practices.

    Learn more about Getting Started: AI for .NET Developers
    Getting Started: Building .NET Applications on AWS
    course

    Getting Started: Building .NET Applications on AWS

    Learn how to build and deploy .NET applications on AWS using CDK, Lambda, DynamoDB, S3, and more.

    Learn more about Getting Started: Building .NET Applications on AWS
    What's new in C# 14
    blog

    What's new in C# 14

    This guide covers every new C# 14 feature, explains its benefits, and provides practical code examples to help you navigate how you can use them.

    Learn more about What's new in C# 14
    Let's Build It: AI Chatbot with RAG in .NET Using Your Data
    course

    Let's Build It: AI Chatbot with RAG in .NET Using Your Data

    Build a Retrieval-Augmented Generation (RAG) chatbot that can answer questions using your data.

    Learn more about Let's Build It: AI Chatbot with RAG in .NET Using Your Data
    From Zero to Hero: SignalR in .NET
    course

    From Zero to Hero: SignalR in .NET

    Enable enterprise-grade real-time communication for your web apps with SignalR.

    Learn more about From Zero to Hero: SignalR in .NET
    Deep Dive: Solution Architecture
    course

    Deep Dive: Solution Architecture

    Master solution architecture and turn business needs into scalable, maintainable systems.

    Learn more about Deep Dive: Solution Architecture
    Migrating: ASP.NET Web APIs to ASP.NET Core
    course

    Migrating: ASP.NET Web APIs to ASP.NET Core

    A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

    Learn more about Migrating: ASP.NET Web APIs to ASP.NET Core
    Getting Started: Caching in .NET
    course

    Getting Started: Caching in .NET

    Let's make the hardest thing in programming easy for .NET software engineers.

    Learn more about Getting Started: Caching in .NET
    From Zero to Hero: Testing with xUnit in C#
    course

    From Zero to Hero: Testing with xUnit in C#

    Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.

    Learn more about From Zero to Hero: Testing with xUnit in C#
    Create a ChatGPT Console AI Chatbot in C#
    blog

    Create a ChatGPT Console AI Chatbot in C#

    This walkthrough is your hands-on entry point to create a basic C# console application that talks to ChatGPT using the OpenAI API.

    Learn more about Create a ChatGPT Console AI Chatbot in C#