Original Photo by Dhruvansh Soni on Unsplash

I. Introduction

“The essence of abstraction is preserving information that is relevant in a given context, and forgetting information that is irrelevant in that context. — John V. Guttag

The focus of the software architecture evolution has been on creating the next layer of abstraction. It allows us to focus our efforts on new unsolved challenges and not worry about re-inventing the wheel for complex resolved problems of the past. For example, looking back at the evolution of programming languages, first, we had machine languages, followed by procedural languages, object-oriented languages, and service-oriented architecture. This software evolution demonstrates abstraction layers built on…


Original photo on pexels

I. Introduction

“Software entities should be open for extension but closed for modification — Bertrand Meyer”

The OPEN/CLOSE principle of SOLID is well known and understood among the developer community. It is a key to designing and writing good quality maintainable code. This principle is even applicable to a large extent while designing software architecture for a fast-paced AGILE delivery program. My idea of a “Transitional Architecture” is quite synonymous with the OPEN/CLOSE principle that your transitional designs should extend themselves as you move towards the Target Architecture in incremental steps/releases.

The focus of this blog is to extend the previous design


Original Photo by Markus Spiske on Unsplash

I. Introduction

Carrying on from where I left sharing my experience of implementing microservices in a serverless style in my previous blogs, the focus of this blog is to understand how to approach event-driven design. This blog takes the understanding of core principles of event-driven architecture and demonstrates how to use them in your serverless architecture.

II. What and Why of Event-Driven Architecture

Event-driven architecture (EDA) can be seen as a way of wiring all your microservices together. In this architecture, a microservice publishes an event when something notable happens, such as when it updates a business entity. Other microservices subscribe to those events. …


https://www.serverless-diary.dynamodb.com
https://www.serverless-diary.dynamodb.com
Original Photo by Markus Spiske on Unsplash

I. Introduction

Having shared my experience of implementing microservices in a serverless style in my previous blogs, let me dive into a level deeper sharing design considerations to be aware of for each component of our microservices. The focus of this blog will be understanding the right way of designing NoSQL Dynamo tables, which in my opinion is a pre-requisite before I share my learnings on how to approach event-driven architecture. More on that in my future blogs. Let’s use the below simple diagram as a starting point to discuss DynamoDb. …


Original Photo by Adi from Unsplash

I. Introduction

Having shared my experience of implementing microservices in a serverless style in my previous blog, let us iterate the design and learn how to build a serverless website. Since we are iterating and extending the initial architecture design, the focus of this blog will be leveraging existing cloud provider services to build a website.

II. Questions

Let me continue the story that took place in the mystical fairy cloud kingdom, where I was working on a digital transformation program as the Lead Architect. The challenge at hand was different from the phase1, and we knew the benefits of serverless design. The primary…


Original Photo by Billy from Unsplash

1. Introduction

Microservices are now being widely accepted and looked at as a very strong architectural style for new projects, as well as the target for architecture for legacy monoliths. There isn’t much doubt regarding the benefits of microservice architecture, as both start-ups and major technology players have implemented and proven the benefits of this style. What remains debatable is an effective way of implementing various design patterns alongside the choice of technology and platforms to deliver. …

Anuj Kothiyal

Digital Architect, Agile practitioner, Mentor and Fitness Enthusiast.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store