No subject in software engineering will add more value to an engineer's skillset than having a good understanding and, eventually, mastery of the topic of solution architecture. It is the bedrock of everything we do; without it, we can't create good solutions, no matter how good our code is. The phrase "the right tool for the right job." rings true with solution architecture more than any other subject in engineering, and knowing when to choose the correct database or even the right technologies to build your solution reasonably, depends on a sound understanding of solution architecture. In this course, James Eastham, Senior Software Architect for Amazon Web Services (AWS), will introduce you to the concept of Solution Architecture and give you all the foundational knowledge you need to master the subject.
Welcome
What will you learn in this course?
Who is the course for and prerequisites
Context For The Course
What is a software architect?
The Software Architect's Elevator
The importance of the business context
Optimizing for Change
Impact as an Architect
Defining Architecture Tenets
Systems Thinking
The Value Of Communication
Functional vs non-functional requirements
Gathering Functional Requirements
Architectural -ilities and understanding trade offs
Architect in characteristics
Modularity, Coupling and Cohesion
Customers & their Access Patterns
Monoliths
Layered Architecture
Hexagonal Architecture
Service Oriented Architecture
The Fallacies of Distributed Computing
Microservices
Why Choose Microservices
Adopting Microservices
Event Driven Architecture
Thinking Serverless First
Conway's Law and Aligning Architecture to the Organisation
Ocams Razor - Keep It Simple Stupid
Choosing the Appropriate Architecture
Thinking In Patterns
API First Design
Streaming Vs Batch Processing
Scaling Systems
Caching
Integration Styles
Messaging and Reactive Systems Design
Architect for Failure
Integrating with External Systems
Architecting Data
The Importance of Documentation
Architecture Decision Records
Documenting Use Cases
Architect in Patterns
The Importance Of Context
Context Mapping
The Importance Of Interoperability
Evolutionary as a default
The Importance of Observability
Fitness Functions
Human-Centric Architecture
Architecture In Practice
Course Info
Lifetime access
Add to Cart
James Eastham is a Senior Cloud Architect at Amazon Web Services and content creator. He has over 10 years experience in software, at all layers of the application stack.
He has worked in front-line support, database administration, backend development and now works with some of the biggest companies in the world architecting systems using AWS technologies.
James produces content on YouTube, focused around building applications with serverless technologies using .NET, Java & Rust.
© 2023 Dometrain. All rights reserved.