The Complete Guide to Becoming a Software Architect

The Complete Guide to Becoming a Software Architect

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 117 lectures (6h 2m) | 1.59 GB

The most comprehensive guide that will make you a Software Architect, the most desired role in the software industry.

Congratulations! You’re going to be a Software Architect!

Becoming a Software Architect is the holy grail for almost all developers.

Great salary, working with management, dealing with the up-to-date technologies and patterns, working with variety of projects and teams – all these make the Software Architect one of the most desired positions in the software industry.

But becoming a Software Architect is not easy. There is no academic course for that, and no formal training.

You might assume that being a great developer is enough to become a great Software Architect – but that’s not the case.

A great Software Architect employs a mix of great technical skills, the ability to take a high-level look, and great interpersonal skills.

You may find other courses that will teach you programming skills, project management skills and even software design skills. But no course covers all the bases as this one.

Here is what we will discuss in this comprehensive, 115 lectures length, course:

– What is a Software Architect and why you want to become one

– What are the steps you should take in the Architecture Process

– What are System Requirements and why they are so important for the architecture

– A proven, tested way of selecting the technology stack

– How to design the system’s components architecture

– What are design patterns and why does it matter

– How to design the overall system architecture

– What is architecture document and why it’s so important

– Super important soft skills every architect should possess

– Some advanced architecture patterns you should keep in mind

– And lots more…

But wait, that’s not all!

One of the cornerstones of the architect’s work is the architecture document. This document contains all the information regarding the architecture designed by the architect, including requirements, technology stack. component’s architecture, system architecture and lots more.

Creating the architecture document is a daunting task, that can take months of hard work.

But if you take this course – your life will be much easier!

Towards the end of this course, we’ll work together on a real-world case study, one that stems from other projects I’ve worked on. After discussing the case study, and designing its architecture, you’ll have an opportunity to download a real-world, full blown architecture document, complete with all the information related to the case study. In fact, this is an industry-grade document, which I used in dozens of systems I’ve worked on.

And the best part? It’s yours to use! Feel free to take this document, modify the parts that are relevant to your project, and submit it to your client!

Again – you’re going to give your client a professional looking, modern, methodical document that covers all the bases, and makes a great impression.

No other course provides such a document, and that’s because I’m fully confident in the document’s contribution to your work and reputation, as I used it extensively in the past years.

What you’ll learn

  • 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
Table of Contents

Welcome
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

What Is a Software Architect
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

The Architect’s Mindset
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!

The Architecture Process
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

Working with System Requirements
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

Types of Applications
Introduction to Application Types
Web Apps
Web API
Mobile
Console
Service
Desktop
Summary
Test your knowledge Application Types

Selecting Technology Stack
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

Meet the -ilities
Introduction to the -ilities
Scalability
Manageability
Modularity
Extensibility
Testability
Summary
Test your knowledge The -ilities

Components’ Architecture
Introduction to Components
Layers
Interfaces
DI
SOLID
Naming Conventions
Exception Handling
Logging
Summary
Test your knowledge Components

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

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

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

Architecture Document
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

Case Study
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!

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

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

Conclusion
What Have We Learned
BONUS Next Steps

Homepage