React Native Spyros Spanos
Spyros Spanos, one of our Mobile Software Engineers, shares his experience in implementing multiple languages feature into Healthentia app. See how Spyros addressed the challenge of React Native and made Healthentia a multilingual product.

I was very enthusiastic but also anxious when I was assigned this feature. Supporting multiple languages with React Native comes with many challenges on many levels.

Business challenges:
Healthentia is a mobile app that supports many studies. In each study, the participants may be from many different countries. Thus, we need to have dynamic language options.
Also, another difficulty I faced was that for example the Questionnaires or some other information may have not been translated yet to all the supported languages, meaning we need a fallback option for every case.
This, made the algorithmic side of things very tricky and intriguing.

Development challenges:
React Native is based on the NPM ecosystem. In other words, it offers many open-source solutions for almost everything that you want to achieve. Picking the right tool for something so important as handling the localization is a very critical decision, and it came after hours and hours of searching and testing. This process helps me gain experience as a software engineer in handling issues with high responsibility levels.

UI/UX challenges:
We needed to enable this functionality and make it easily accessible and immediately effective in any change. This procedure led to many corner cases of things that just “didn’t work.” Solving such issues made me understand quite better how things work in React Native.

All in all, I think that this feature is one of the most important that I have been assigned up to now and sure it contributed to my personal and professional development.