Холмс, кажется, вы в России...
Against the backdrop of the pandemic, Purrweb developed a service to find psychotherapists in the UK. Clients approached us for design services but got a fully developed web platform and mobile app. We, in turn, got an hours-long master class on working with a very attentive and demanding client. We’ll tell you the way things were.
Reading time: 7 minutes
Looking for a development team?
We can help with design and development of apps for businesses and startups
The customers contacted us in the autumn of 2020. One of the partners has a PhD in clinical psychology and she’s been a licensed counselor for 10 years. She specializes in trauma therapy, anxiety, and depression. Apart from counseling, she reads lectures. The other partner who specializes in management consulting was our client.
They wanted to combine their experiences and create a therapy service with custom features like calendars, notes, chat, and video calls. They asked us to design their future app. We did it but our client stayed with us to develop a mobile app and a web service.
We built a team of developers and designers, a QA specialist, and a project manager. Little did we know that we would have two managers — the client was so involved in the process that sometimes we thought he was a Purrweb employee. But we’ll get back to it later.
To start working on the service, a month-long online course in psychology is not enough. The platform is very selective — here’s what you need to get an account:
When a therapist creates an account, they fill out the form, give the data from this list, and undergo an interview. After registration, they have to meet these requirements:
If therapists reject more than 5 requests in a row, service moderators contact them. Moderators have the right to block the account.
It’s much easier for patients to: create an account, customize your profile, decide on the goals — and you’re done. You can also take a survey, and the platform will set you up with a therapist. If it’s not enough, the platform has a chatbot. It will ask you more specific questions from preferable gender to payment options and it will set you up with a suitable specialist as well.
There are too many similar apps on the UK market, so our app is not a unique product. But it’s different from its competitors in three ways:
Tech stack-wise we used all the reliable frameworks and instruments:
We divided the development process into 14 sprints:
Service is very detailed for every user role. For example, patients can monitor all the previous and upcoming sessions, make notes, keep all the materials for therapy in one place, and track therapy goals. They can also chat with therapists and look through doctors’ profiles.
Therapists can see their schedule, calendar, income, and patients. Admins look through registration requests, existing profiles, and patients’ data, which is the requirement of HIPAA and GDPR.
Many opportunities mean many screens. And here’s where things went wrong.
Three roles require approximately 100 screens. It was even before we agreed to develop two apps — web and mobile.
During development, we were stuck upon emitted edge cases, for example, the doctor’s availability in the distant future. Rarely, do patients want to schedule a session not for the next week but in several months. But we didn’t have any screens for this scenario. We discovered it when our team was already building the app.
Since we worked on the final release instead of an MVP, this was an urgent problem. Our client wanted to go to the highly competitive market with the final product, so we refined this case.
Western medicine works closely with insurance companies. Many clients have insurance that covers psychotherapy. To allow clients to use their insurance cards, we had to integrate the app we were developing with an insurance aggregator. The client suggested HealthCode which is the largest and the most popular British health-tech service.
When we received HealthCode’s API description, we were discouraged. This document was a useless incoherent mess with outdated descriptions. Our team lead had to hold an extended discussion with HealthCode tech support to get the necessary data.
Even worse, HealthCode’s API uses an obsolete data exchange format — SOAP. Our app uses JSON, like the rest of the world. That’s why we had to write a module to convert queries to our format which was time-consuming.
We could test HealthCode’s API only when a real client tried to pay with their insurance since it doesn’t have a sandbox. We braced ourselves for the first payment — and when it was successful, we were in high spirits. But the UK has a lot of insurance companies, so later we had payment failure cases. We worked on all of them with HealthCode’s tech support to fix all the integration bugs.
We like the clients who are eager to get involved in the project and take part in it. Our client was one of them. He closely monitored the development and actively took part in our group chat. But sometimes, his micromanagement was too much — as if we had another PM in our team.
It led to conflicts. At first, we discussed solutions, implemented them, and got back to the client’s review. However, during the presentation, he asked for a different implementation even though we reached an agreement earlier. All this rework is time and money — and it’s not always obvious for non-developers. It’s only he who thinks that it’s “easy” and “requires just one more line of code.”
The truth is that service issues and new features are seldom fixed or added with just one line of code. It’s hard to explain but it’s crucial. If you don’t find common ground with your client, you’ll end up with mutual dissatisfaction. And all the pent-up grudges will lead you to a failed project.
That’s why we never stay silent in such situations. I invited the client to a “confessional”. We spent 1.5 hours negotiating because we wanted to make the communication pleasant, crystal clear, and comfortable both for him and our team.
This resulted in the following action plan. We promised to:
And he promised to:
After we reached this agreement, the development process became much more productive. We had some disagreements later but, since we implemented writing down all the important points after each Zoom call, we solved those problems quickly.
The project took us 8,000 hours. The service became available to users in the middle of April. The first partner switched several offline clients to the service and runs sessions in the app. Recently, the service got a new doctor — it doesn’t happen fast due to rigorous selection. At the moment of finishing our case study, the partner conducted 69 sessions and a new therapist did 2.
Our client is currently working on marketing and promotion. And we keep supporting the project — right now, we’re refining two intended features:
And to me, working on this service became a negotiation workshop and a source of insights on project management. We always work with clients because each app is their idea and they’re experts in their own fields. And we are experts in development, design, and usability. Sometimes, those expertise overlap — and that requires negotiations, management, and looking for a compromise.
You can find common ground with your client and come up with a solution if you follow these principles:
How useful was this post?
Rate this article!
23 ratings, аverage 4.9 out of 5.
No votes so far! Be the first to rate this post.
As you found this post useful...
Follow us on social media!
Read more
Thanks for your inquiry. It usually take up to 24 hours to get back with reply.
Wanna schedule an online meeting?
Sorry, something went wrong with your request.
Please, try again later.