Covid and technology — what is so common?
COVID, COVID, COVID — Most of us agreed that it has changed our entire lifestyle. But Technology is also the same. That’s a weird way of thinking but it has one common factor, and many might agree with that.
Both are changing so rapidly that before anyone fully understands, it changes the direction and/or adds more variants to it.
Like scientist has a difficult time finding a cure for this deadly virus, we as technology lovers have a hard time too to keep up to date with the ever-changing technical nuances.
So, irony, right?
During COVID, one question ever comes in every forum. What unique thing have you achieved during the COVID? well, let’s ask more precisely.
What unique thing have you achieved during the COVID in your professional career? (during social gatherings we answer this question and that’s more of personal level)
The last 4–5 years. Technology has changed so rapidly. Docker, Container, Kubernetes, GRPC, Microservice, Cloud Computing, Micro-frontend, all different kinds of relational and non-relational databases. On top of that, we have our programming languages to worry about. Deployment, Automation, and Monitoring — each one of them has their own wings.
Last few months, I was studying all the above items to upgrade myself with the latest technology stack (kind of answering the same question).
There are many articles you will find which will help you to gain this knowledge on each individual concepts and they all have tried to cover great amount of depth and breadth — no doubt on that.
But whenever we like to develop a solution using all these technologies combined? wow — that’s It’s like we found the COVID 2019 vaccine (a new variant is a next door to bust our bubble.) On top of that, if we have a full cycle working in our Local environment where we can develop, debug and test without any external dependency — it’s ice on the cake. right? but it’s way more difficult not to just set up but also to work and configure. test and debug.
After significant time, I have spent on each of these concepts, I finally have a fully working version of a small shopping cart solution working in my local environment. It comes with following items.
Product Catalog API uses Product Catalog DB in Mongo DB
Basket API uses Basket DB in Redis Cache
Discount API uses Discount DB in PostgresSQL
Ordering API uses Ordering DB in MSSQL
2 GRPC Call….
Basket API uses GRPC call to Discount API before adding the items into the basket (to check the applicable discount on selected items)
1 Messaging Queue
RabbitMQ messaging queue between Basket API (Checkout) and Ordering API (Retrieve) order
Ocelot Application Gateway (For Debug)
Kong API Gateway (For Kubernetes)
Aggregator Gateway Pattern
1 Web Client…
MVC Razor pages-based Web Client
Web Frontend Gateway with NGINX (For Kubernetes)
Fully working local version inside Local Kubernetes Cluster
WSL 2 — Ubuntu 20.x
Monitoring to all pods
Istio Service Mesh monitoring to all the microservices and front-end.
What is next?
Well, most of you know this is not DevOps. this is just a Dev.
I have good experience to automate web applications and supporting components through the CI-CD pipeline but Now, I am heading towards automating all the above components. I know it will uncover many interesting facts and I am excited about that.