Striking a Balance: Adam’s Journey Through Hybrid and Native App Development
As a React Native Developer Adam gladly embraces the best of both worlds: hybrid and native app development. Discover how his knowledge of Kotlin enhances his cross-platform projects and the future he envisions for React Native. Learn how working on a mental health app has given his work a deeper sense of purpose. Dive into Adam’s career story!
Was your career focused on mobile development from the start?
I started my career as a web developer, but at my first job, I unexpectedly joined a team that was working on a hybrid mobile application. My first tasks were related to mobile development, and I quickly realized that I could build mobile apps using the web technologies I was already familiar with. This experience really empowered me and got me hooked on mobile development, even though it had never crossed my mind before that I could build mobile apps.
You specialize in React Native but also continue learning native technologies. Why is that?
In my first job, I worked exclusively with React Native. However, after two years, I changed jobs and began working on a much more advanced mobile app. This app required native modules to handle hardware communication and geolocation.
This necessity "forced" me to learn Kotlin, which opened up more opportunities to optimize our hybrid app. Whenever we found that certain features couldn't be optimized with React Native alone, we turned to native technologies, building those parts in Kotlin to achieve better results. I've also been learning Swift, though I haven't yet had the opportunity to work with it professionally.
I've encountered numerous hybrid applications that reached their efficiency limits, and turning to native tech was the only way to optimize certain features. So, knowing both hybrid and native stacks is crucial, even if you specialize in cross-platform development.
What future do you foresee for hybrid technologies?
I can mainly speak about React Native, as that's where most of my experience lies. React Native has essentially conquered the market, even though there's still no stable 1.0 version released. Despite this, it has become so popular and widely used in many mobile products that it’s something developers need to embrace rather than avoid.
Meta does a good job developing it, typically releasing updates once a quarter. In recent years, there have been significant updates to the framework's architecture, making it easier to integrate hybrid with native modules.
Another interesting development is Expo, which adds another layer of abstraction, making it even easier to build an app. However, this also introduces more limitations. Still, for someone looking to release an app with a small budget, Expo allows a single developer to do so efficiently.
I don't believe React Native will ever completely replace native development, but it does provide small startups with a chance to quickly release an MVP in a cost-effective way. That said, I think it's crucial to educate startup owners that while choosing a hybrid solution might be cheaper initially, it could become costly in the long term when you need to rewrite the app or at least parts of it.
Unfortunately, not every software company is transparent about this with their clients. It's important to be aware that hybrid mobile development might not be as cost-effective as it seems at first. Once your MVP proves successful, you might need to "pay some debts" to scale effectively.
Read more about native app development vs cross-platform.
You work in a team developing a mental health application. How does this impact your daily work?
Working on a mental health solution has changed the way I approach my work. I now see my role from a broader perspective, recognizing that the app I help build supports people dealing with serious mental health challenges like grief, depression, and anxiety.
For example, we developed a feature that allows users to notify the appropriate organizations if they notice someone expressing suicidal thoughts during a chat conversation. While the feature itself might not be technically groundbreaking, the potential to save lives makes it incredibly meaningful. Although my daily tasks haven’t changed – I still solve problems with code – I feel an added sense of purpose in what I do every day.
What convinced you to join Bright Inventions?
I was positively surprised by the recruitment process. It was the most professional one I’ve ever participated in, and at the same time, the most challenging. From the first conversations with the recruiter, I could already sense that the work culture was at a high level.
During the technical interview, I appreciated the emphasis on code quality, which is also important to me. For someone like me who is passionate about programming writing high-quality code is crucial.
Additionally, I was drawn to the idea of collaborating with a client from the Middle East. I’m interested in Middle Eastern and African cultures and I actually learn Arabic in my free time, so this opportunity aligned perfectly with my personal interests.
I also appreciate that in our team, we have regular meetings where we discuss technical aspects, new trends and tools, and make decisions about which features should be refactored and how.
What do you do after hours?
Apart from learning Arabic, I enjoy swimming. I used to participate in swimming competitions at school, but now I swim just for fun. I also enjoy attending sauna ceremonies conducted by sauna masters.
In addition to that, I love visiting lesser-known places in Poland, such as less popular mountain trails, parks, and other hidden gems.
What underrated place in Poland can you recommend?
I can recommend a place from my local area: the highest peak in Wielkopolska, "Kobyla Góra". Although it's only about 200 meters above sea level, it's a great example of places in Wielkopolska that are close to nature. Even though this voivodeship isn't famous for tourist attractions such as mountains, parks, and castles, Wielkopolska remains an underrated gem worth exploring.