Automatic Bonuses Interface

In a marketplace application like Kapten, it’s all about balancing supply and demand. Prices rise when demand is high, and supply is low, and regulate when supply balances demand. The surge is there to balance in real-time and in a localized way: where demand is strong, prices increase to attract drivers. By analyzing customer behavior on a daily basis, we can anticipate demand and offer bonuses to drivers to encourage them to work at the right time and prevent the surge from increasing. This interface is an internal tool to configure these bonuses.






Internal tool


UX Research

Facilitate workshops

Product Design


The first bonus configuration tool was built on an emergency basis in 2018 and has never been modified. It was painful and very limited. The goal of this project was to create an easy to use interface to save time for internal teams when setting up bonuses and to be flexible so that it could be adapted to Kapten’s new markets.

Team & role

I worked on this project in collaboration with a Product Manager and an Engineering Manager. My role was to do user research, build interface layouts, facilitate workshops called “sparring sessions” to discuss together the proposed designs, user tests, and collaborate with 3 developers to update the design system and provide them with the assets they needed.

Design process

In order to design this interface, I first organized a kick-off meeting to understand everything the PM had to teach me about how to start the project. I then learned that there was a business issue because bonuses are at the heart of Kapten’s strategy regarding the balance between supply and demand, and also that currently, the teams were working on complex tools that did not allow them to have much flexibility.

Discovery User Research

I prepared and organized interviews with the teams in charge of the bonuses strategy at Kapten in France, London, and Portugal, as well as with the operations teams who were in charge of setting them up.

Thanks to the strategy teams, I understood all the existing bonuses, what was planned to be tested, and why the interface needed to be flexible.

Thanks to the teams that were in charge of bonus configuration, I understood how they were currently working, what the problems were, and what their needs were.

They prepared the week’s bonuses on a powerpoint which they then had to convert into Json code and inject it into the interface. The slightest error would cause all the week’s bonuses to crash. This process was really painful and wasted a lot of their time. It wasn’t very flexible either because they could only configure 4 bonus slots for the week because of the way the basic tool was created.


I first created the interface as a calendar, to allow teams to configure their bonuses over the week as they were used to, but to be able to do it easily and intuitively in a single interface.

I then presented this version to the PM and the Engineering manager, and while discussing it, we asked ourselves if the business side of things met our expectations. I then organized a workshop with the business teams in London and Paris to discuss the proposal. It didn’t seem to be flexible enough, and too calendar oriented.

So I iterated, the new version was rather oriented on the visualization of the bonuses configured day by day with the possibility to filter, and a step by step configuration of each bonus, starting with the date, the rules, the cluster of drivers to which to apply it, and a label to be able to track it via the data.

I then re-tested it with the business and operations teams who set up the bonuses, in France, Portugal, and London, to make sure that the interface met their needs and that it was easy to use. It was a good fit with the company’s strategic needs, and after a few usability modifications, the interface was ready to be sent to the developers.

User Interface Design

Daily Bonus View Page

Step 1: Configuration of the date and time of the bonus

Step 2: Setting up the bonus rules

Step 2: Setting up the bonus rules (threshold)

Step 3: Setting up the cluster of drivers to apply bonuses

Step 4: Setting the type of bonuses (label for data)