The Complete Guide To Becoming A Software Architect

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

Last updated 2022-01-10 | 4.5

- Practical
- proven techniques to becoming a great Software Architect.
- The exact role of the Software Architect
- Adopting Software Architect's mindset

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

* Requirements

* Some development knowledge is required
* although there won't be actual coding

Description

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 do my students have to say about the course?

------------------------------------------------------------

"well done - The course was very practical" - Sam

"Good explanation on the topics covered, "Soft Skills" section is a great addition of topics" - Sergio

"[The course] given me the confidence to go out to the market and advertise myself as such [an Architect]" - Mathew

And lots more...


------------------------------------------------------------

Who is this course for?

------------------------------------------------------------

Actually, any person who is involved in software development, even system analyst, can profit from this course.

However, the best candidate for this course is a developer with some experience, preferably 2 years. This experience will help mainly in understanding the terminology used in this course.

If you're not sure if this course is for you - drop me a note!


------------------------------------------------------------

About Me

------------------------------------------------------------

I've been a Software Architect for more than 17 years, working with a variety of clients - Fortune 100 enterprises, start-ups, govt. entities, defense, telco, banking, and lots more.

I'm an avid speaker and trainer, having trained thousands of students in various courses in the past.

I love what I do, and my greatest passion (well, besides my family...) is designing modern, practical, and reliable systems for my clients.

Who this course is for:

  • Developers who want to go to the next level
  • System Analysts who want to achieve technical knowledge

Course content

17 sections • 128 lectures

Introduction Preview 03:01

Join The Software Architects Discussions Facebook Group Preview 01:11

Who Is This Course For? Preview 01:09

Why You Should Become a Software Architect Preview 02:27

An Update for Udemy Students Preview 00:23

What We Will Talk About in This Course Preview 05:45

Types of Architects Preview 03:04

Responsibility of the Architect Preview 02:38

The Architect in the Organizational Chart Preview 02:25

Architects & Code Preview 02:56

Architects and Academic Degrees Preview 00:41

Career Path to Architect Preview 02:51

Test your knowledge on the definition of Software Architect

In this quiz you'll have the opportunity to make sure you can fully describe what is, in fact, a Software Architect.


Introduction to the Architect's Mindset Preview 00:42

Understand the Business Preview 02:09

Define the System's Goals Preview 02:33

Work for Your Client's Clients Preview 02:39

Talk to the Right People with the Right Language Preview 02:39

Test your mindset!

As we learned in this section, good architects must adopt a mindset that will help them working with their clients.

This quiz will help you fine tune your mindset, and help you in your path to become an architect.

Introduction Preview 00:56

Understand the System Requirements Preview 00:49

Understand the Non-Functional Requirements Preview 00:51

Map the Components Preview 00:38

Select Technology Stack Preview 00:58

Design the Architecture Preview 00:37

Write the Architecture Document Preview 00:33

Support the Team Preview 00:38

Conclusion Preview 01:35

Test your knowledge: The Architecture Process

Let's see how fluent you are in the architecture process.

Remember - following this process will greatly help you in crafting your architecture to best fit the system you work on.

Introduction to Requirements Preview 00:51

The Two Types of Requirements Preview 02:51

Architects & Functional Requirements Preview 00:45

Non-Functional Requirements Preview 09:18

Who Defines Non-Functional Requirements? Preview 01:30

Conclusion Preview 00:53

Test your knowledge: System Requirements

Let's see how good you are in describing Functional & Non-Functional Requirements.

Introduction to Application Types Preview 00:54

Web Apps Preview 01:30

Web API Preview 02:35

Mobile Preview 00:47

Console Preview 01:21

Service Preview 00:43

Desktop Preview 01:23

Summary Preview 01:06

Test your knowledge: Application Types

Introduction to Technology Stack Preview 01:40

Considerations for Technology Stack Preview 03:28

Back End Technology Preview 06:12

An Update on .NET Core State Preview 00:29

Front End Technology Preview 10:06

Data Store Technology Preview 07:47

Summary Preview 01:12

Test your knowledge: Technology Stack

Introduction to the *-ilities Preview 02:14

Scalability Preview 02:36

Manageability Preview 01:27

Modularity Preview 01:40

Extensibility Preview 02:11

Testability Preview 02:44

Summary Preview 00:48

Test your knowledge: The *-ilities

Introduction to Components Preview 02:37

Layers Preview 07:53

Interfaces Preview 03:26

DI Preview 05:03

SOLID Preview 07:20

Naming Conventions Preview 04:07

Exception Handling Preview 02:19

Logging Preview 02:35

Summary Preview 00:31

Test your knowledge: Components

Introduction to Design Patterns Preview 03:31

The Factory Pattern Preview 05:04

The Repository Pattern Preview 05:12

The Façade Pattern Preview 02:04

The Command Pattern Preview 04:07

Summary Preview 00:51

Test your knowledge: Design Patterns

Introduction to System Architecture Preview 02:44

Loose Coupling Preview 06:04

Stateless Preview 07:12

Caching Preview 08:54

Messaging Preview 15:13

Logging & Monitoring Preview 04:53

Summary Preview 00:57

Test your knowledge: System Architecture

Introduction to External Considerations Preview 00:28

Deadline Preview 01:12

Existing Dev Team Skills Preview 01:39

IT Support Preview 01:42

Cost Preview 01:21

Introduction to Architecture Document Preview 01:11

Goal of the Document Preview 01:28

Audience Preview 02:57

Contents of the Document Preview 02:13

Document's Structure Preview 01:21

Background & Overview Section Preview 01:53

Requirements Section Preview 04:01

Executive Summary Section Preview 03:28

Architecture Overview Section Preview 04:49

Components' Drill Down Section Preview 05:55

Test your knowledge: Architecture Document

Introduction to Case Study Preview 01:36

Presenting IOToo Preview 02:04

Defining the Requirements Preview 10:04

Mapping the Components Preview 06:43

Choosing Messaging Methods Preview 05:30

Designing the Logging Service Preview 08:07

Designing the Receiver Preview 05:23

Designing the Handler Preview 03:18

Designing the Info Service Preview 06:48

Writing the Architecture Document Preview 01:10

Get the Architecture Document! Preview 02:01

Introduction to Soft Skills Preview 01:41

Listening Preview 01:12

Dealing with Criticism Preview 02:25

Be Smart Not Right Preview 03:25

Organizational Politics Preview 02:15

Public Speaking Preview 02:58

Learning Preview 02:08

Summary Preview 00:36

What Have We Learned? Preview 04:14

BONUS: Next Steps Preview 14:59