Online Books Web Portal

A mobile native and web application which provides a suite of easy to use education functions including online study, examination and certification in a variety of subjects.

About the project

A mobile native and web application which provides a suite of easy to use education functions including online study, examination and certification in a variety of subjects.

Technical information

We designed the system based on Microservices and Amazon Web Services, including PostgreSQL, Amazon Elastic Kubernetes Service (EKS), EC2 Auto Scaling, S3 and Elasticsearch. This solution allows flexibility in expanding the system and saves on operating costs. We chose JavaScript as the main language for ease of scaling and upgrading the system, with Reactjs for Web app, NodeJS for API. Regarding mobile platforms, we developed iOS version with Swift and Android version with Kotlin.

Challenges

Since the client cares a lot about the ability to scale and smoothly operate the system when their large customer base of approximately 1.5 million people use their product, they gave us main requirements:

  • In the future, they can easily develop additional services for the application and the new development will not affect the operating services, both on the operation and the database.
  • Because of the large number of customers, the system must be able to operate without issue when there is a significant spike in the number of system users at a certain point.

Solutions

To keep up with the client’s requirement, we suggested using Microservice architecture and Single Sign-on authentication scheme for the system.Using Microservices offers the following benefits:

  • Easier to build, maintain and develop additional functions for both the web and mobile application.
  • Improved productivity and speed by decomposing applications into manageable services that are faster to develop.
  • Different components of the system can be developed simultaneously without interference and queuing.
  • Flexibility in project scaling: with Microservices, the development team can add new components to the system without any difficulty or scale services separately from one another.Using Single Sign-on will allow the customer to use all the services they want with only one login.

Let’s work together


Contact

Heading

Articles