Yes, the one single constant thing that is a nightmare to every engineer or developer out there. The one thing that is capable of making you completely mad and in worst cases even might make you question your intellect.

I am not a bright guy. I write bad codes. Some of the codes I wrote six months back truly embarrass me now. But one thing I always try to do is not to make the same mistake over and over again. And as you keep writing more and more codes, your codes get better automatically. But what’s the context of it? …

CI/CD codes tend to be of similar patterns based on the technology stack. We can take advantage of this fact and optimize the lines of codes from one project for any particular technology to be able to reuse those with minimal works for another project using the same technology stack. Reading CI/CD files in a project is one of the arduous tasks in software engineering. So what can we do about it? The most common thing that comes to our mind is Refactoring.

GitHub Actions is one of my favorites that’s because it allows me to use most common action steps available at their marketplace which lets me build my workflow faster and with less code. …

As promised I am back! I hope you all enjoyed my last blog on GitHub Actions: Basics. Today I will show you how you can take earlier knowledge and make an end to end CI/CD pipeline for a django project using GitHub Actions.

What will we do in here?

What I want to show here is how developers work in their day to day lives. How they work with commits, pushes, pull requests, merges and ci/cd pipelines. For this I will be using a django project. But you all can use any project you like because the basics are all same overall. …

In modern days developing softwares without a CI/CD pipeline is unthinkable. And if it can be tied up with your version control system then that is the power you can harness for good. It would save you a lot of times as those CI/CD platforms are managed and also literally have no setting up steps.

I have already used bit of Jenkins. At work, we are using GitLab CI heavily right now. So I really wanted to try out GitHub Actions now. In the following discussion I won’t be comparing any of the platforms rather I will go through the concepts of GitHub Actions. …

So yeah, I was talking about discovering your api via Istio service mesh in my blog Istio — Part 1: Discovering Services. I hope you all read that blog. It will really help you develop your understanding on Istio and some related topic like Gateway, Virtual Services e.t.c. I tend to keep my cloud resources running for sometime so that you all can get my example with code which might be helpful. So I will not tear down the microservice architecture we build on earlier.

Rather we will write all the codes in a different namespace and will redirect different domains to achieve the same thing as we have in part 1 then move onto our today’s discussion. …

As we start building applications with microservice architecture sooner or later we always find ourselves in a spot where we want to visualize and monitor our entire deployment in a single screen. Also debugging a bug in microservice is really complex and time consuming. To ease it up, everyone felt the need of observability and controllability of their distributed architecture. Istio is one of the tools that actually solves these problems.

So here I will try to discuss what is Istio and will take a use case based approach to see most of the features of Istio in here and upcoming blogs. …


Whether we build any distributed system or any real time data pipeline for any applications, a streaming platform is what we need at the very first place. And when it comes to streaming platform, Apache Kafka is the first thing that comes to our mind. But setting up Apache Kafka for production is not a piece of cake. Is there any managed services for this? Fortunately yes. Google Cloud Pub/Sub is a global messaging and event ingestion platform which allow us to do exactly that. …


Every time we end up writing an application, there is a need of deploying it so that people can see it. After deploying the application, there comes the chaos. We need to keep constant eye for the following aspects.

  • Continuous monitoring of system so that it remains live.
  • What if one of our server is not working expectedly, how to take it down and reboot another.
  • What if we are getting more traffic, now the server needs to scale.
  • What if there is no downtime of our services.

These are too many what-if’s to handle, right ? Most of the time we just boot up a vm, host our application there and open our port to the world so that people can see it. But this scenario comes with vulnerability, scaling issues and downtimes. …


Sharing code is one of most important aspect when it comes to working in a team. This actually leads to the inception of version control systems i.e. Github, Gitlab, Bitbucket etc. As a result, we can share the code easily but another problem arises when it comes to running the code in one’s pc or laptop. There are several challenges.

  • What if there is an os related dependency
  • There might be issues with the installation of a specific dependency on the os that one has
  • There might be lots of instruction and pre-requisite to follow to get up and running with the…


Raju Ahmed Shetu

Father | Engineer | Tech Enthusiast | Happy

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