Skip to main content

Rapidly revolutionising critical mental health services

XenZone

XenZone’s digital mental health services support thousands of young people and adults towards better mental health and emotional wellbeing. Kin + Carta Create partnered with XenZone to launch two core mental health and well-being platforms; Kooth and Qwell.

Kooth, a designated platform for children and young people, and Qwell, the adult equivalent, offer a range of services including early intervention support and access to a team of experienced counsellors, removing the traditional barriers to entry such as waiting lists, sub-threshold assessments, stigma, etc. With over 46,000 visitors to their platforms every month, this is a critical service for many individuals as well as for their partner organisations such as NHS commissioners.

The collaboration between XenZone and Kin + Carta achieved rapid success with lasting impact. Our work helped XenZone improve a critical service that relies on trust, speed and professionalism to get people the help they need, when they need it. As a result, the updated system was able to handle over 3,000x more users at any one time than previously.

A sensitive subject matter and a critical timeline meant that XenZone needed a partner it could trust from day one. This required a team with proven technical capability, flexibility, the capacity to share knowledge with the XenZone team and build in-house capability.

XenZone’s Chief Technology and Product Officer, Giles Alexander, tasked Kin + Carta Create with relaunching the Kooth and Qwell websites and with bolstering the ability of his internal team in agile ways of working and a culture of continuous improvement. This enabled XenZone to serve a growing user base with even greater efficiency.

With speed a critical success factor, Kin + Carta Create and the XenZone teams came together to quickly assess the existing infrastructure and trace performance issues in high-risk areas of the codebase, which allowed us to pinpoint issues.

Following this, we implemented a scaling solution and a load-testing framework to improve performance of the apps. From the number of users the system could comfortably support, to the average API response time XenZone wanted to achieve - we benchmarked our progress with real-time data and continued to tweak, until we were confident that performance could not just meet but exceed people’s expectations.

We continually shared our development expertise as part of a pairing policy between Kin + Carta Create and XenZone engineers; our changes have had lasting impact. This means that the XenZone team will continue to reap the rewards of agile ways of working long after our involvement.

Using Stackdriver and Locust to diagnose performance issues.

Measuring app status, capacity and performance enabled the joint team to rapidly identify major performance improvement opportunities. Using Stackdriver for code hotspots and service logs, and Locust to simulate load the team determined a baseline performance score to measure improvements.

 

Resolving system crashes and other performance issues

Kin + Carta Create tested each service in isolation to resolve frequent site crashes in the cloud-based system caused by too many containers overloading the nodes. We fixed memory leaks in the codebase for a number of performance critical services.

 

Future-proofing through daily testing

We ran daily tests via Locust and a Grafana dashboard to ensure that development changes had the desired impact on response times, failed requests and load capacity.

Where the changes didn’t have the intended impact, we leveraged the logging carried out with Stackdriver to diagnose and resolve issues before the next round of tests.

Ultimately, our thorough evaluation of the technical requirements for XenZone meant a lasting impact on its services, instead of just providing quick fixes for the problems at hand.

Performance Objectives:

  • The number of concurrent users the system was capable of handling grew from 30 to 960, exceeding the target of 840.
  • The average API response time fell from 1600ms to 480ms, exceeding the target of 500ms.
  • The rate of system errors at load reduced from 0.8% to 0.000178% (a x450 improvement)
  • Seamlessly released Kooth and Qwell Platforms.


Growing Capability

  • XenZone facilitated the 2nd release requiring only 1/3 of the original Kin + Carta Create team
  • 1st release launched in 2 months and 2nd release launched just 3 weeks later
  • Enabled continuous releases

2

months to deploy 1st release

480ms

average API response time

x450

improvement in rate of system errors at load