Software Architecture Training

Hands-on training for software architects and API designers

Martin Fowler has called software architecture “the stuff that’s hard to change later”. It’s about the decisions that you need to make, that you can’t defer any longer – but if you get them wrong, fixing them later is going to be expensive, risky and complicated.

Whether you’re looking to specialise in an architecture role, or just want to better understand how to approach the design of your software projects, my courses can help you figure out what’s out there, how it can help, and how to use it effectively on your projects.

Principles of Software Architecture

Duration: Two days

This course covers the core principles behind modern software architecture. We'll start by discussing the role of an architect in a software team, and you’ll learn how to design classes, components and services, how to capture and ßcommunicate your designs, and the patterns and protocols you can use to connect and monitor your services.

Target audience:

Developers who want to learn to design large-scale systems.

Details & Dates Coming Soon

Building Distributed Systems with .NET

Duration: Three days

This course covers the patterns, protocols and libraries you’ll need to create distributed systems using Microsoft .NET. YOu will learn about building HTTP APIs with GraphQL and REST, high-performance networking using gRPC, and popular architectural patterns such as command/query responsibility segregation (CQRS) and publish/subscribe.

Target audience:

Developers with 2–3 years’ experience using .NET and C#.

Details & Dates Coming Soon