Course Highlights
  • Practical, proven techniques to becoming a great Software Architect.
  • The exact role of the Software Architect
  • Adopting Software Architect's mindset
  • Architectural Patterns used in almost any software system
  • Design Patterns to make the code more readable and easy to maintain
  • Crucial Soft Skills that will make your work much easier
  • Role and structure of the Architecture Document
  • Advanced architectural patterns for extreme cases
Curriculum

6 Topics
Introduction
Join The Software Architects Discussions Facebook Group
Who Is This Course For?
Why You Should Become a Software Architect
An Update for Udemy Students
What We Will Talk About in This Course

7 Topics
Types of Architects
Responsibility of the Architect
The Architect in the Organizational Chart
Architects & Code
Architects and Academic Degrees
Career Path to Architect
Test your knowledge on the definition of Software Architect

6 Topics
Introduction to the Architect's Mindset
Understand the Business
Define the System's Goals
Work for Your Client's Clients
Talk to the Right People with the Right Language
Test your mindset!

10 Topics
Introduction
Understand the System Requirements
Understand the Non-Functional Requirements
Map the Components
Select Technology Stack
Design the Architecture
Write the Architecture Document
Support the Team
Conclusion
Test your knowledge: The Architecture Process

7 Topics
Introduction to Requirements
The Two Types of Requirements
Architects & Functional Requirements
Non-Functional Requirements
Who Defines Non-Functional Requirements?
Conclusion
Test your knowledge: System Requirements

9 Topics
Introduction to Application Types
Web Apps
Web API
Mobile
Console
Service
Desktop
Summary
Test your knowledge: Application Types

8 Topics
Introduction to Technology Stack
Considerations for Technology Stack
Back End Technology
An Update on .NET Core State
Front End Technology
Data Store Technology
Summary
Test your knowledge: Technology Stack

8 Topics
Introduction to the *-ilities
Scalability
Manageability
Modularity
Extensibility
Testability
Summary
Test your knowledge: The *-ilities

10 Topics
Introduction to Components
Layers
Interfaces
DI
SOLID
Naming Conventions
Exception Handling
Logging
Summary
Test your knowledge: Components

7 Topics
Introduction to Design Patterns
The Factory Pattern
The Repository Pattern
The Façade Pattern
The Command Pattern
Summary
Test your knowledge: Design Patterns

8 Topics
Introduction to System Architecture
Loose Coupling
Stateless
Caching
Messaging
Logging & Monitoring
Summary
Test your knowledge: System Architecture

5 Topics
Introduction to External Considerations
Deadline
Existing Dev Team Skills
IT Support
Cost

11 Topics
Introduction to Architecture Document
Goal of the Document
Audience
Contents of the Document
Document's Structure
Background & Overview Section
Requirements Section
Executive Summary Section
Architecture Overview Section
Components' Drill Down Section
Test your knowledge: Architecture Document

11 Topics
Introduction to Case Study
Presenting IOToo
Defining the Requirements
Mapping the Components
Choosing Messaging Methods
Designing the Logging Service
Designing the Receiver
Designing the Handler
Designing the Info Service
Writing the Architecture Document
Get the Architecture Document!

5 Topics
Introduction to Advanced Architectures
Micro Services
Event Sourcing
CQRS
Summary

8 Topics
Introduction to Soft Skills
Listening
Dealing with Criticism
Be Smart Not Right
Organizational Politics
Public Speaking
Learning
Summary

2 Topics
What Have We Learned?
BONUS: Next Steps

  Write a Review

The Complete Guide to Becoming a Software Architect

Go to Paid Course