October 4, 2020

True Agile or what we have learned struggling with COVID

Olga Shavrina
This story tells how the boat rental marketplace struggled with COVID. Product team learned how to be agile and as a result implemented anti-covid measures earlier than the competition and survived.
What COVID brought us
In March 2020, we together with the rest of the world, faced COVID. And as our sector is a multinational touristic business (Nautal is a marketplace for boat rentals) it turned out to be a huge problem. In the boat rental world, it's very common to rent a yacht several months in advance because the price is way lower, and the selection of boats is much better.

At the end of March 2020, when the high season should normally begin, customers started to panic, delay decisions, and even cancel previously placed orders.
The number of orders went down in comparison with the last year
People were frustrated - they had no confidence that, say, Ibiza or Croatia would be open in July-August, that their own country would let them out, that none of their family members would get sick, and that they would still have a stable income the next year.

Our clients have these options:
Book a boat now when the price and selection are good and pray that everything will be fine and in case of problems, a boat owner will make a refund.
Wait for the situation to be clarified at the risk of being left without a boat.
Forget about summer vacation on a boat at all.
Boat owners were desperate and agreed to everything - discounts, a decrease of down payment, free rebooking... and asked us what else they could do.

We had to stabilize cash flow right now and secure an income for the summer. Plus, we had to find a solution on how to help boat owners. Unlike them, we had a vision of the market, because we worked all over the world and, having gained experience in one country, we can apply it in another.
What we did
According to our panicking clients, the single phrase they wanted to hear was the "free booking cancellation". The boat owners have never suggested anything like this before. In fact, all of them had a pretty strict cancelation policy. But desperate times require desperate measures, so we decided to try.

We wrote to the boat owners that we at Nautal are introducing a special anti-coronavirus policy to calm down clients and will reward those owners who adopt this policy. We suggest them two options to choose from:

- Free booking cancelation up to 15 days before the start date [recommended].
- Free rebooking.

An incentive was: a top position in the boat feed, a tag on the boat card, and a special block on a boat page.
Tags Flexible cancellation or change in the boat feed
We thought that it would take long for owners to answer and that the majority would pick the second option. How surprised we were to see that 75% of them agreed to provide a free cancelation and we got answers from 500 companies the next day after we sent an email.

Given that on average owners have a fleet of 10-11 boats, this allowed us to put tags on more than 4500 vessels right away. By the end of the week, the number of boats with tags had risen to 9500.

This was a victory!
A special block describing a COVID policy on the boat page
How we made it happen
We gathered boat owners' answers through Typeform and aggregated them into the Google Sheets document. Owners' ID was transferred to the Typeform through the get-parameter, so we knew who filled the form and when.
Typeform that we sent to boat owners
As we support nine languages, we had to do nine Typeforms and then aggregate answers to Google Sheets. I wrote a simple script saying thanks to my developer's past :)
Google Sheets script for gathering Typeform results to one file
From the product point of view, we applied the principle "from shit and sticks". We didn't implement any interface solution because we had no idea if it was going to work at all, and it was the case when speed really mattered. No competitor has come up with any solution yet, but they could do so at any time.

We created a field in the DB and filled it every day with the data from the CSV file. It was as simple as:
- 0: no tag
- 1: free rebooking
- 2: free cancelation

We have added this field to the boat sorting algorithm to show boats with free cancellation first, then boats with free rebooking, and then all others without tags.

Lean and mean.
We've never ever worked this fast before
Our usual process of shipping a feature from the moment "taken into the development" to the release usually takes from a few days to a couple of weeks + testing + translations to 9 languages + something can always go wrong. And it is fast in comparison to some other European startups I know. And if you compare it to big corporations, it's almost immediately.

From the decision "ok, let's do it" to the actual start of the development, it usually also takes some time. Even when we decide to do it "right away" it can happen that all developers are busy with urgent tasks or bugs. Plus, again, something can go wrong.

But in the COVID scenario, we had to act very very quickly.

On Thursday night we took a decision. Committed to launching the feature on Tuesday. Friday morning we had a Jira ticket, all translations and Typeforms ready, and emails sent. By the end of the day, the backend was ready. Monday early morning tags were live.

It was so damn cool!
How we understood that feature worked
The distribution of sales was this: the majority – boats with the "free cancelation" tag, the minority - boats with the "free rebooking" tag, and almost zero - boats with no tags.
Clients demanded only boats with tags and ignored others.
Feedback from boat owners was "Guys, thank you! Orders come only from you!"
Later we compared our sales levels with some direct and indirect competitors and discovered that in the darkest times they had zero sales when we made 20-30% of our budget.
Second phase Safe&Clean
At the beginning of summer, it became clear that boat trips were not just allowed but way safer than any other type of vacation. Clients began to worry if the boat owners were applying anti-covid measures and if the boats were being disinfected well enough.

The most responsible owners have sent us documents describing the measures they have taken, which we tell our clients about. We started drowning in excel files and phone calls. We had to urgently stop this chaos.

And then we came up with the second phase of the anti-covid plan called Safe&Clean.

The plan was the following:
Develop a protocol for boat owners - what exactly they should do to ensure the safety of customers on the boat (taking into account the requirements of different countries).
Send the protocol to boat owners and get an explicit agreement that they accept it.
Place a second tag "Safe&Clean" on the websitesite with a description of what it means.
Adapt the boat sorting algorithm.
Add explanations to transactional emails, a payment page, and a personal account of the owner.
Automatize the process of updating the tags (it was clear by than that tags work and we had to move from the MVP to something more solid), and make an interface in the admin panel for this.
Safe&Clean tags on the boat cards of boat feeds
The MVP has been well tested in production, so we were already aware of all edge cases. For example, we knew that owners change their answers over time, which is normal, but we didn't think about it before, so we realized that we needed to save the date and all historical data.

Also at the beginning, we had no idea that we would need to show two tags and process them separately. If we had all the business logic from the start, we would have to change quite a lot.
Interface for updating tags in the admin panel
What we've learned
A common delusion for product teams is that being Agile means having sprints and stand-ups, writing a shitty code and zero documentation, working in co-workings, and drinking smoothies. But all this is secondary. The main thing is to deliver value, and deliver it fast. It doesn't matter if your code is perfect, if it's not deployed - you've provided zero value.

The basic idea is that business needs money. Clients pay money. The sooner a client gets what they are willing to pay for, the better for the business. Sometimes it is literally a matter of life and death.

During COVID we felt it really well and honestly admitted that before we worked way more relaxed and less effective, even though we were sure that we were "Agile". It was a great lesson, pretty tough, but it did open our eyes.

Now we have a good example to look at. It helps a lot to keep the focus and split the task into simple and useful steps for the client. Since then, several projects have already been carried out according to this scheme. I'll tell you one day :)
Olga Shavrina
Product manager. Human being