Backend Developer. Making use of Cloud & Serverless. Writes @ Medium about Programming, Tech, and innovation. Passionate in Software Engineering best practices

Ever since when I was in school, computer science has been my passion. I still remember sitting in front of my brother’s PC which has an Intel dual-core processor with 1 gigabyte of memory and Windows XP running it.

I got a computer for myself when I was in High School. I used to sit in front of it spending hours and hours surfing the internet and learning to code, building websites using HTML, CSS. The first programming language I learned was a language called QBASIC.

This passion carried me through my education at Sunway Int’l College for undergraduate CS degree, (affiliated to Infrastructure University) where I studied new languages, algorithms, compilers, data structures, Web Development, distributed computing, System Analysis, and Design. …


As a developer, I always follow the know your tool (K.Y.T) rule.

Image for post
Image for post
Source: Image from Pexels

Developers always should understand the tools they use. With the right tools, you can achieve your job easily and efficiently. In this article, I’ve listed all the tools I use in my daily job.

“ If you know the system well enough you can do things that aren’t supposed to be possible. — Linus Torvalds

1. Ubuntu Linux

Over the last 4 years, I’ve been using Linux as my main operating system. The first distro that I used was Ubuntu 12.04 LTS back in 2012. I’ve tried so many Linux flavors. Kali, Debian, Pirot, Mint, etc. I found Ubuntu a developer-friendly distro packed with so many developer tools. I’ve been using Ubuntu 20.04.1 …


These technologies will see significant innovation and growth in 2021.

Image for post
Image for post
Photo by Jack Sloop on Unsplash

Every day, algorithms are improving and learning, computation powers are increasing rapidly failing Moore's law.

In 2020, we saw a lot of things in the tech industry. Google’s multi-services were down, Zoom skyrocketed, Tesla’s share skyrocketed, Billionaire made more money than ever, work from home became new normal even in enterprise companies like Google, Microsoft, Amazon, and Facebook. The list goes on.

“The advance of technology is based on making it fit in so that you don’t really even notice it, so it’s part of everyday life.” — Bill Gates

Here are the top 5 fields, we will see a significant innovation this year. …


Based on the State of JS 2020 Survey

Image for post
Image for post
Usage of JS Testing Frameworks. Source: State of JS 2020

Testing is one of the essential parts of Software Engineering. If you are new to testing, you might ask the same question as everybody does. Why the hell should I write tests? If the functionality is just working perfectly.

Well, we write tests to check the functionality of the code. Whether the code is working as expected or not. We don’t write tests to find the bug in the code.

To write tests for JavaScript and Node applications, there are so many frameworks available.

In this article, we will closely look at some of the popular testing frameworks available today.

1. Jest

Github Stars: 38.3k


Image for post
Image for post

Ever since I started using Linux, It has been my go-to driver. I’ve been using it for more than five years now. My first Linux distro was Ubuntu 12.04 LTS (Precise Pangolin). Since then I’ve used a vast array of distros on both virtual box and as the main driver.

These days, Linux is everywhere — from your computers to cars to mobile devices. It powers most of the internet and 100% of the world’s 500 supercomputer uses the Linux Operating System.


A quick cheat sheet of your friend, SAM.

Image for post
Image for post
Your friend SAM

SAM CLI Installation

To get started with building SAM-based applications, use the AWS SAM CLI. SAM CLI provides a Lambda-like execution environment that lets you locally build, test, and debug applications defined by SAM templates. You can also use the SAM CLI to deploy your applications to AWS Cloud.

Install AWS SAM CLI

brew tap aws/tap
brew install aws-sam-cli

Verify installation

$ sam --version

Upgrading SAM

$ brew upgrade aws-sam-cli

You need AWS credentials to work on AWS. I have covered everything about AWS CLI in my previous article “Getting Started with AWS CLI version 2”.

Build and deploy a Simple Application

$ sam init → Download a sample…


AWS CLI helps you quickly interact with AWS Services using your terminal.

Image for post
Image for post

When you get started with AWS Cloud, most people start with the AWS Management Console on the browser. It gives you easiness and some visual representation of resources. But using the console, again and again, is a repetitive task and involves so many button clicks. It is perfect to go with the console when you are a beginner but in the end, you should use CLI for quickness and efficiency. You can do many things with just one command.

In this article, I will cover how to get started with AWS CLI and some tips like auto-completion prompt, etc.

The AWS Command Line Interface (AWS CLI) is an open-source tool that enables you to interact with AWS services using commands in your command-line shell. With minimal configuration, the AWS CLI enables you to start running commands that implement functionality equivalent to that provided by the browser-based AWS Management Console. …


In this article, I’ve shared my .zshrc.

As a developer, I mostly use the terminal all the time to do my daily task. It is fast and efficient. But the default shell is so boring. There are so many things you can do to make your terminal fast and interactive.

In this article, I’ve shared my .zshrc which made me a 10x faster terminal user. This includes auto-completion, terminal line status, git status, etc.

Image for post
Image for post
My .zsh configuration

Introduction to shell

A Unix shell is a command-line interpreter or shell that provides a command-line user interface for Unix-like operating systems. …


So you’re that guy who wants to impress your colleagues with your vim skills. Find out how in this article.

Vim is a command-line text editor and I want to be honest. It is hard to learn. If you try to apply the principle of UI/UX, vim will fail every checklist. It is not friendly. BUT as people say practice makes perfect, with good practice you can learn it over time. And your productivity might get 2x faster.

Most of the time when we do code, we don’t type code all the time right? We write some code and compile it and things don’t work and we start to edit code. Vim is best for editing code. …

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