SOAJS

January 7, 2020 mikehajj

In early 2015, I embarked on a mission to address the challenges that engineers faced when developing complex web applications. My goal was to create a solution that would empower engineers to construct scalable web products capable of serving large markets. Scalability, in this context, refers to a product’s ability to handle increased traffic and adapt to evolving user needs.

Uncertain of our success, we decided to release our solution as an Open Source Technology from day one. We invited engineers worldwide to try it out, providing valuable feedback for continuous improvement.

Challenges

Several challenges confronted us, with key objectives including:

  1. Offering a versatile solution for rapid development of any web application.
  2. Alleviating common pain points experienced by engineers in daily API development.
  3. Addressing the complexity of using different programming languages in building applications.
  4. Supporting the modernization of existing systems and facilitating connections to third-party systems.
  5. Assisting engineers in deploying application components while ensuring high availability.
  6. Facilitating the scaling of components to manage increased traffic.
  7. Providing an intuitive interface for configuration, management, and seamless maintenance operations.

Solution

Over the years, we released four major versions between 2015 and 2018, complemented by numerous patches and updates.

Version 1 (2015)

Introduced a framework for building Microservices and APIs using NodeJs and MongoDB. A user-friendly UI Console, developed with AngularJS, allowed efficient management of these APIs. The framework’s data model flexibility enabled customization without re-engineering existing logic.

Version 2 ( 2016)

Implemented an out-of-the-box solution integrating container technologies like Docker and Kubernetes. This enabled the deployment of microservices as replicated and auto-scalable container groups, adapting to traffic fluctuations.

Version 3 (2017)

Added support for CI/CD pipelines and multi-cloud orchestration. SOAJS could now deploy diverse environments operating on different infrastructures, including containers, virtual machines, and bare metal.

Version 4 (2018)

Redesigned the main framework’s functionality into the API Gateway, introducing support for middleware in various languages (NodeJs, GoLang, Java, PHP). This allowed engineers to use different programming languages while ensuring security and runtime configuration through SOAJS Gateway.

Today, with over 660,000 downloads, SOAJS empowers engineers to build complex web applications using diverse programming languages. It facilitates the provisioning of hosting platforms, deployment across various infrastructures, and offers a robust solution for the evolving landscape of web development.