Welcome

Welcome to our course on Decision Records - for architectural decisions and other decisions!

Picture this - you just joined a company's development team and got assigned to modernize an existing legacy monolith. You're the new senior ranking dev, and they have a couple junior devs starting next week. What are you looking for? Oh, the documentation... about that. There is none. The lone dev who was responsible for creating this system a decade ago and who has been adding hotfixes and squeezing features into the app has left the company. They are not taking our calls, so you're on your own. You have a new platform to figure out and no documentation - and you have to figure it out quickly so that you can onboard your new teammates to the project next week.

As you start to tear it apart, you realize that you might want to capture certain decisions that were made - maybe to start some sort of documentation. This could be used to help question the choices and make different decisions as part of the modernization process.

Or maybe, you're lucky and have been brought in to join a team working on a brand new application. They are going through some EventStorming sessions to discover their domain and scope of the project. As you learn more about the project, you realize that certain architectural decisions or software choices may make sense. After talking with your teammates, you may end up with a decision. Document it!

Capturing a decision in the context that it was made helps future you to understand the "how"s and "why"s of a decision. Writing it down captures any hints as to what led to the decision.

In this mini-course, we will take you through the importance of capturing decisions, documenting those decisions, storing those documents, using AI to help with the documents, as well as how you can set up GitHub Pages with the Just the Docs theme and a template for decision records.

Before we get started, let's take a moment to address who this course is tailored for and any prerequisites you should have.

Complete and Continue