How Hawaya improved app stability with Sentry for mobile
About Hawaya
Hawaya is a matchmaking platform that helps single Muslims meet and build long-lasting relationships with others who share their values. Founded in the Middle East, they are a subsidiary of Match Group and operate a mobile app that approaches matchmaking with a mindful eye towards Middle-Eastern norms which value life partnership and meaningful connection.
Available on iOS and Android platforms, the Hawaya app surged in popularity at the start of the COVID-19 pandemic, experiencing a 40% increase in messages exchanged by users and 25% increase in time spent on the app. The company has also recently expanded beyond the Middle East, reaching the U.S., Canada, France, and Germany.
In the 2 years since they began using Sentry, Hawaya has reduced failure rates due to timeouts by 40%.
Gaining visibility into errors and performance to improve mobile app stability
With its spike in growth over the past year and a half, Hawaya needed to find a solution to proactively identify and respond to issues/crashes affecting their users.
Prior to Sentry, Hawaya used a different tool to generate crash reports and track issues. However, they lacked error details tracing issues to their code owners and couldn’t readily determine the root cause of an issue impacting user experience. Resolving a crash required time and manual effort from Hawaya’s developers—who had to search for suspect code and research potential code fixes in different languages.
This was an inefficient process and delayed the shipping of releases.
If there were a large number of issues, we would halt the release, make fixes and re-release. In order to ship faster and release confidently, we needed a way to quickly know exactly why our users were being impacted by a crash, what the issue was, and where it originated.
Hazem El-sisy, Frontend Technical Lead
Requirements
Improving stability and gaining additional context were top-of-mind for the Hawaya team. Ayman and Hazem wanted a solution that would allow them to track important release health metrics, including crash-free sessions and users, while also providing dashboard overviews of application health.
It was essential for the Hawaya team to have a consolidated tool that would be easy to set up, intuitive for developers, and flexible enough to add custom functionality. They were also looking for robust platform support for Javascript and React Native.
When asked why they chose Sentry, the Hawaya team responded: “Sentry’s error monitoring not only had the best support for Javascript and React Native, but also delivered a great developer experience that made it easy to get up and running.”
Enhancing context to track issues and errors
When Hawaya switched from their previous crash monitoring tool to Sentry, they immediately saw a difference in the error details they could access. Using Suspect Commits in Sentry, their team was able to automatically uncover which commit caused a crash in their React Native and Javascript code.
Mobile lead Hazem El-sisy explained, “If we didn’t have Sentry, we would spend a lot of time identifying which file and which module an issue came from. With Sentry we know exactly what the issue is and which module it’s from, giving us the context we need to solve it quickly.”
Several months ago, Hawaya also enabled Sentry Performance, a client-side performance monitoring solution. They track latency issues and use Sentry dashboards to see the resulting impact on their customer base.
Hazem notes, “On one of our first days using Performance, Hawaya found an issue in one of our modules and was able to track and solve it using Sentry. Using Sentry’s Trends view, we have visibility into how performance issues are affecting users, which lets us take action quickly”
The Hawaya team has also enabled more performance scripts, especially custom scripts to monitor every function. Today, Hawaya has implemented Sentry Performance in all of their modules.
Hawaya also relies on Sentry’s Release Health product to manage the health of their releases. Crash-free users has been a critical metric for their team.
Used in tandem, Sentry’s products have streamlined Hawaya’s mobile workflow. Hazem describes it as a process with a regular cadence:
After releasing a new version, we have a checkpoint after 3-4 days before increasing the percentage of our rollout. We track Issues using Sentry Dashboards every day in order to surface anything alarming or affecting a lot of users. Crash-free rates help give us the bigger picture of how we’re improving code health over time. We also track Performance every few days, including tagging latency issues and using distributed tracing
What’s Next?
As Hawaya’s mobile app usage grows, understanding how their application is performing is a top priority. The team is consolidating performance monitoring across their different projects in Sentry so they can quickly surface performance errors without having to waste time guessing where the issue originated. Hawaya CTO Ayman Emam states that for the upcoming quarter, “strong mobile app monitoring, including improving UI response time, ANRs, and page performance are critical focuses for our team— and we’ll be using Sentry to help monitor and improve those metrics as we go.”
Results
When managing user experience, monitoring session timeouts is one of Hawaya’s critical performance metrics. With Sentry, Hazem’s mobile engineering team reduced failure rate due to timeouts by 40%.