Before we begin, I'd like to preface this post by saying that these are simply my thoughts on the subject. I'm not a software architect, nor do I claim to be an expert. This is me exploring the topic and putting my thoughts "on paper," so if I've misunderstood something, feel free to correct me in the comments.

In this post, I'd like to cover what it means to be a Software Architect.

Imagine you're asked to build a simple login screen.

A junior developer might think about the form and UI that need to be built.

A mid-level developer might think about authentication and authorization.