Challenge Overview
Challenge Objectives
To analyze and diagnose architecture issues that could affect the performance of the Ognomy ReactJS web application and its NodeJS based backend.
Project Background
- We have built a suite of tele-office applications that allows patients to schedule and hold remote consultations with sleep specialists. The suite includes the patient-facing mobile app, the web application which is used by physicians and office-staff, and a common API and database. In this challenge, we are focusing on the web application, API, and DB.
- Currently, the client is experiencing some performance issues on the web application.
Technology Stack
- ReactJS
- Javascript
- CSS
- HTML5
- AWS
- Backend uses Node.js and MongoDB
Code access & test environment
You’ll be provided the code as well as access to the deployment web app in our test environment.
Detailed requirements
In this challenge, we need you to:
- Analyze the architecture of the API and the web app to find potential performance issues
- Test & diagnose the api / web app to find potential performance issues
- Document the process, tools, and results during your analysis and diagnosis
- Provide recommendations on how to improve the api / web app performance
- Include links to any tools used in this process or at least some text reference (for example: Lighthouse in Chrome Dev Tools)
- NOTE: a lot of the performance issues may be coming from the backend, make sure you analyze the backend api carefully too.
A few things that you might find helpful:
- The backend currently does all data encryption at application level, not at the database level, this is surely one of the areas to be looked into.
- The backend also has some jobs that runs some analysis / aggregation on the data, which needs to be looked into as well.
What To Submit
Submit a detailed document in markdown or word format covering all the requirements above.