Image for post
Image for post

Part 3

During the last years, JavaScript becomes one of the most potent and most used programming languages, it’s used in web, game, desktop development, and much more. You can be a Fullstack web developer (Both Frontend and Backend developer) just by using JavaScript, according to that I liked to write an article about the roadmap so it can be useful for beginners to boot up and for others, to fill gaps in their knowledge if exists.

You can check the first part and the second part at the following links:

Conceptual topics

Now if you want to begin writing Enterprise applications, more concepts…


Image for post
Image for post

Part 2

During the last years, JavaScript becomes one of the most potent and most used programming languages, it’s used in web, game, desktop development, and much more. You can be a Fullstack web developer (Both Frontend and Backend developer) just by using JavaScript, according to that I liked to write an article about the roadmap so it can be useful for beginners to boot up and for others, to fill gaps in their knowledge if exists.

You can check the first part at the following link:

And you can continue the next article from the following link:

And here I will…


Image for post
Image for post

Part 1

During the last years, JavaScript becomes one of the most potent and most used programming languages, it’s used in web, game, desktop development, and much more. You can be a Fullstack web developer (Both Frontend and Backend developer) just by using JavaScript, according to that I liked to write an article about the roadmap so it can be useful for beginners to boot up and for others, to fill gaps in their knowledge if exists.

I will start in this article with basic things and continue in another article with the advanced stuff. …


Image for post
Image for post

I believe that every one of us contains two essences, you can call them the body and the soul, your self and the inner self, the conscious part and the unconscious part. Whatever a couple of names you chose, they exist. And your choices in life always reflect on your unconscious part either in a positive way or in a negative way. So I will take in this article about some very important rules from my perspective according to around 10+ years of working experience.

Work like you own the business

I am not saying don’t search for better opportunities, but whenever you got a job…


Image for post
Image for post

Entity Framework is an object-relational mapper (ORM) that enables .NET developers to work with a database using .NET objects. It eliminates the need for most of the data-access code that developers usually need to write. In some contexts like SaaS products you may need to apply a specific filter for any operation that happens on the database level, and you don’t want to include that in all your repository layer functions, so in this article, I will discuss an easy way to implement that.

SaaS Product Scenario

In your SaaS product, users can create companies, each company has its own resources, and the…


Image for post
Image for post

Fission is a framework for serverless functions on Kubernetes. Whenever your functions increase more and more managing them will be harder, especially synchronizing the code between development and production environments. That time the CI/CD pipeline will be the best solution. While at the time of writing this article I couldn't find anyone did that before or any useful documentation about that, I needed to do that alone and thought to share that here, maybe it will save someone time. I did this pipeline on the Azure DevOps platform.

Deployment scripts:

A good practice would be to categorize your functions inside folders according…


Image for post
Image for post

While there are no standard project templates in NodeJS like in other languages like .NET and Java, I wanted in this article to introduce a simple Boilerplate project that is using standard ES6, NodeJS Express, and connecting to a Mongo database.

You can find the boilerplate on the next link:

The main features of this boilerplate are:

  • The use of IoC and dependency injection
  • The use of middleware in a simple way
  • Logging provider that supports both normal logs in addition to JSON logs
  • Layered system (Controllers layer, Services layer, Repositories layer)
  • Unit tests for both controllers and services

Some important points to consider while writing your Web APIs project

  • You…


Image for post
Image for post

One of the most important patterns in Microservices is Health Check, it helps the detection of a running service instance that is unable to handle requests, forcing an alert to be sent to the admin that may conclude with some actions like restarting the service.

I will talk in this article about the following points:

  • Introduction about the concept “Health Check”
  • Implementing Health checks in your NodeJS project
  • A simple example of how you can use the community libraries and customize it according to your needs

While software architectures have evolved their applications towards Microservices architecture and Containerization, the need…


Image for post
Image for post

Modern applications are generating enormous amounts of image data. And in the last years, researchers began to apply some data mining algorithms to extract useful information from these images to apply smart decisions in business, to detect harmful situations in medicine, to understand behavioral patterns for people, and much more.

Detecting anomalies play a very important role in data mining which raises suspicions while these outliers most of the time differs a lot from the rest of the majority of images.


Image for post
Image for post

Separation of Concerns (SoC) one of the important concepts in software design and architecture, it's about decomposing the system into parts that highly independent and slightly overlapping in functionality.

In the case of OOP languages, encapsulation and inheritance are one of the main ways to achieve SoC. Event-Driven Programming (EDP) can be also a major concept in SoC too, ideally, the modules that are throwing the events should not be aware of the modules that will handle them. In this article, I will take you through implementing EDP in NodeJS with a real-life example.

Basic concepts with example

I will talk about an AI…

Ahmad Mhaish

I am a Software Architect and AI engineer that have a great passion for integrating technology with businesses and human life.

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