Mental health isn't something you can see or measure. Yet, our mental health influences all aspects of our life: work, friends, and family members.
When faced with problems, most people prefer to stay silent instead of asking for help or going to a counselor. And there are many reasons for such behavior.
Some people think that nobody cares about their problems. Some can't visit therapists because in-person therapy offices are located too far from their homes or workplaces.
COVID-19 only adds fuel to the fire and causes extra reasons to get nervous. People are anxious about losing their jobs and getting infected in crowded places.
The private tech entrepreneur, whose name we can't disclose due to a Non-Disclosure Agreement (NDA), saw an opportunity in this situation. He saw mental help services striving to keep up with the growing demand and realized there was a business opportunity and a good cause at the time, so he started his own company in this niche and hired our team to create Calmerry.
For the Calmerry project, the client had the following requirements:
- The project should include three different interfaces — account for patients, account for therapists, and CRM account
- The project must meet U.S. regulations (GDPR) for healthcare software on storing and using patient sensitive data
- Patients should receive online therapy via secured online chat and secured video sessions, only from counselors licensed in the U.S.
- The project’s first version should include a basic feature set, but the feature scope will scale in the future
Our main goal for the Calmerry project was to develop a secured platform that brings together patients and licensed counselors via video and text chats. We wanted the platform to be equally useful for both patients and therapists giving them a secure therapy space.
During the project development process, we encountered the following challenges:
Monetization model. We needed to suggest a monetization model that could be applied to this project.
To make this happen, we conducted market research and gathered several monetization strategies, most commonly applied in such projects.
- Next, we matched business models with the client's business needs and decided that a monthly subscription business model is the perfect match for this project.
- We also developed different subscription types — a basic tier with online chat and an advanced tier with video calls.
Therapist validation. According to U.S. legislation, therapists are allowed to provide therapy only to patients from the same state. We also wanted only experienced therapists to join the platform.
We met these challenges by integrating a matching algorithm and initial survey, mandatory for both patients and therapists.
- During the survey, users select their state from the drop-down menu
- The matching algorithm connects patients and therapists from one location
- We integrated a mandatory "Licence number" filed into the survey for therapists to validate their experience.
GDPR compliance. Since an e-therapy platform falls into the medical software category, it must comply with GDPR (General Data Protection Regulation).
These regulations involve handling and storing sensitive personal data. The same regulations apply to data exchanged in text and video chats.
The project challenged us to provide a secure connection and data encryption. Since creating video conferencing software from scratch didn't fit the client's budget, we also needed to find a third-party video conferencing provider compliant with GDPR.
We ensured GDPR compliance by:
- Using SSL secured connection protocol that encrypts text messages, user data used by a matching algorithm, and users data stored in databases
- Using on-premise servers located in the U.S. for storing encrypted user data
- Leveraging securing MongoDB clusters as data storage to protect user accounts, passwords, and encryption keys
- Integrating Pusher service for sending push notifications to users that don't send user sensitive data.
Architecture. We needed to select the architecture for this project carefully for several reasons.
Video conferencing functionality requires huge loads on servers that may impact the overall performance of the platform.
The client expects to launch the project in all U.S. states, so the architecture should handle hundreds of simultaneous actions made by thousands of users.
There are many interactive functions to add to the project's second version.
We considered all these factors and decided that microservice architecture suited this project the best. Overall, the architecture included:
- Backend server's API, powered by Node.js
- Micro frontend applications developed with Angular that calls backend API server via secured encryption
- Data storage made of secured MongoDB clusters
We included the following functionality into the project first version:
Entry survey. The user must answer a 3-minute survey so the platform receives one's age, gender, family status, location, previous and current mental health conditions, and mental issues that presently bother the user.
Matching flow. Within 24 hours, the platform matches patients with therapists based on their specialty and state. If the patient isn't satisfied with the therapist, the platform suggests another therapist for free.
Text messages. Registered users can communicate with their therapists via online chat from anywhere.
Video conferencing. Patients can buy additional video chat functionality to receive counseling during on-demand video sessions.
Subscription. Users select the subscription plan that matches their needs - to communicate with the therapist via text messages or add video conferencing functionality. Users can also cancel subscriptions at any time and get a refund if they're not happy with the services provided.
Therapy space. Therapists can set up the patient's goals and track progress in real-time in the therapy space.
Therapy management. Patients can put unfinished sessions on hold or pause an account for the desired period.
License. Therapists offer a short survey to provide information about their location, the state they are licensed in, and the number of the highest clinical licenses in their state that allows the independent clinical practice.
Text and video chats. Therapists receive access to patients in need via online chat and video sessions during working days.
Caseload management. Therapists can set up their caseload and provide therapy to as many clients as they want.
- Angular for the fronted
- Node.js for the backend
- Ionic for developing a hybrid mobile app
- MongoDB for secured database
- Redis for sessions queues
- Kafka for exchanging message between microservices
- S3 Bucket for developing the messaging feature from scratch
- Pusher for sending push notifications without sensitive data
- Daily.co for secured video calls
- 3 Frontend developers
- 2 Backend developers
- 1 CTO
- 1 Business analysts
- 1 Project manager
- 1 Product manager
- 1 QA engineer
We delivered a GDPR-compliant e-therapy platform with essential functionality. You can see the project's website on the link.
After delivering the first version of the Calmerry platform, we started to create the next project version. Right now, we are improving the user experience for patients and therapists, integrating therapist notes into video chat, and session booking via a calendar. We are also considering enabling file exchange via a messenger between users.
- Healthcare app development
- What does project tech stack mean?
- A step-by-step guide on HIPAA compliance
Looking for a team to develop a GDPR-compliant platform for online consultations?
Ask a free consultation