April 9, 2021

software architecture in under a minute

Quickest explanation of software architecture evolution that now serves billions of users. The worst part about being a student is the moment you think you know it. It is just the beginning. Bruh! You need to catch up to it.

the beginning

In the beginning the cloud was formless and void and the engineers provisioned a server, it talked to THE DATABASE and served up THE WEBPAGE and it was good.

simple-archi

the growth

The users came, and the business grew. As the company grew, they formed more engineering teams. As the server grew, it became a monolith.

simple-archi

They divided the monolith into micro-services, in order to increase the autonomy of the teams, so they could move faster. Then the engineers created apps that used the services.

the innovation

simple-archi

But the engineers saw that it was not good for each app to have to talk to every service on its own, so they created an API Gateway to bind the services together and in the seventh year they rested.

simple-archi

the temptation

But not for long, because they continued to innovate, they saw that REST was insufficient and they created Graph Query Languages, for the apps to fetch data from the api and it was all good. Time passed and the company continued to grow and teams were fruitful and the services multiplied.

The api gateway that bound them together, grew as well in order to compose the many services and then there was temptation, in order to handle failure gracefully. They added fallback logic into the gateway. Simple caches gave way to complex memory data stores, along with business logic.

Before they knew it, the API Gateway had become the new monolith.

simple-archi

the fall

What happens next? Go study. You got a lot to catch up to.

Ciao! 👋