Cover image for How to Learn Software Design and Architecture [Roadmap]

How to Learn Software Design and Architecture [Roadmap]

stemmlerjs profile image Khalil Stemmler ・2 min read

This article is a summary of what I'm writing about in my newest project, solidbook.io - The Handbook to Software Design and Architecture with TypeScript. Check it out it you like this post.

It's crazy to me to consider the fact that Facebook was once an empty text file on someone's computer.


This past year, I've been going hard in software design and architecture, Domain-Driven Design, and writing a book on it, and I wanted to take a moment to try to piece it together into something useful I could share with the community.

Here's my roadmap for how to learn software design and architecture.

I've broken it down into two artifacts: the stack and the map.

The Stack

Similar to the OSI Model in networking, each layer builds on top of the foundation of the previous one.

The stack

The Map

While I think the stack is good to see the bigger picture of how everything works together, the map is a little bit more detailed (and inspired by the web developer roadmap) and as a result, I think it's more useful.

It's pretty huge, and Dev.to won't let me upload the entire thing, so click here to fork the repo, read my detailed write-up and see the entire image.

Alt Text

I hope it's useful.


Posted on by:

stemmlerjs profile

Khalil Stemmler


I teach Advanced TypeScript & Node.js best practices for large-scale applications and how to write flexible, maintainable software.


Editor guide