Taking a Mental Healthcare Solution Global
Making Mental Healthcare Accessible by Expanding the Solution Globally and Providing a Personalized Customer Experience
Countries with product presence
Global users added
days to add a new language
Mental Health Solution Provider
Our client is a leading, comprehensive global mental health solution provider that advocates for better mental healthcare benefits for everyone. They achieve this by delivering personalized solutions that fit the individual while providing the proper clinical guidance and emotional support.
Our client started their journey in 2016 and received series C funding, resulting in a valuation of $2 billion in 2021. They now offer top-quality mental healthcare solutions worldwide.
WHAT WE DID
Our client’s reach was limited to English speakers in the US for the first few years. As part of their expansion strategy, they now needed to add native language support and take their solution global.
Expanding the product presented its own set of challenges that included the following:
- Scalability of the existing design
- Support for new countries
- Support for new languages
A keen study of the existing product and our client’s requirements, a careful selection of suitable solutions, and close collaboration with the client helped us achieve the goal of delivering a highly scalable solution in a short time. Some of our key wins include:
Three months to make the product globalization ready
Following this, under seven days and minimal development effort to introduce a new language
Launched in 52+ countries and 22+ languages in the following months
Built trust and long-term association with the client to execute their vision and strategic direction
Creating the approach
Tackling the frontend
Next step, the backend
Solution for emails
Support for RTL languages
1. Creating the approach
When building software products, content is often distributed across the application. Some are UI-embedded, while some come from the backend and the database.
Since language is a crucial aspect affecting user experience, we needed a proper strategy to retrieve content in the target language based on user location.
Our approach was to extract the strings of content, save their translations, and serve this translated version to the end user. To achieve this, we set up several steps in the frontend, backend, and database. We also made our solution user-friendly by translating emails and supporting right-to-left languages to enhance user experience.
2. Tackling the Frontend
Every software product typically communicates with its users through its UI. Our first challenge was translating the UI based on the user’s language preference.
The first step in tackling the UI-embedded content was to move it from code to simple text files. This helps simplify the process of introducing new languages in the future. A new language can be added simply by replicating the flat file in a different language.
We used JSON files to separate code from the language embedded in it. Doing so ensures all content is available in one place, and a translation service can easily translate this content.
In a global solution, there is a need for customized content based on the user’s location. In addition to generalizing common and hard coded content, helpline numbers are dynamically displayed based on user location to ensure users get the correct information.
Lastly, we introduced Crowdin, a third-party translation provider, to get translations for new languages. To extend this further, we integrated Crowdin with GitHub PR workflow so that the automated pipelines can handle the translations without a developer’s manual intervention, saving time for the team.
3. Next Step, the Backend
Maintaining consistency is vital in development, so we took similar steps in the backend to those in the frontend, ensuring a seamless user experience without disruptions.
We configured the application to deliver localized content based on the user’s language preferences.
Initially, all content was retrieved directly from the database and passed to the frontend in English. As new languages were introduced, we made the necessary adjustments to the application to serve the translated data content instead.
For translations, we opted for a hybrid of database and YAML files for serving translated content, using Crowdin as our choice tool for providing translations.
4. Solution for Emails
Next, we also wanted customers to receive emails in their target language.
In the case of emails, we integrated a third-party mail service provider, Iterable. Iterable offers smooth email translations thanks to its locale-based templates that automatically translate content based on the user's preference. For existing emails, we migrated them to use these easy-to-edit templates.
In the future, our client's marketing team can effortlessly launch events and email campaigns with these editable templates.
For our client, this meant a better overall experience. Mails are now translated and can be modified without a dependency on the developer, removing a significant bottleneck for the client's marketing team.
5. Support for RTL Languages
While the application empowered users to access content in their preferred language, supporting RTL language was the natural next step.
For right-to-left languages such as Arabic, the UI usually appears mirrored. Based on this factor, we identified the elements that would appear mirrored to ensure an intuitive user experience.
Bidirectionality is an integral part of the UI to support RTL content. An instance of this would be the direction of the arrow that indicates the back button in RTL languages. To accommodate this, we added bidirectional text and icons configured to mirror depending on the language needs.
At the same time, content types such as images appear the same irrespective of language. For this content, we added smart exceptions as they don’t adhere to RTL styling rules. The same applies to specific icons that don’t hold directional meaning.
Overall, the steps we took, such as translating English to RTL language and UI mirroring, transformed our solution into a robust tool that met the diverse needs of each end-user.
*All the metrics in this case study are accurate as of the time of publishing.
Other case studies you may be interested in
A Centralized System for a Leading Consumer Lending Bank
Reinventing global consumer insights for fintechREAD CASE STUDY
Monnai: A Product Launch Journey
Making Mental Healthcare Accessible by Expanding the Solution Globally and Providing a Personalized Customer ExperienceREAD CASE STUDY