Elena Perminova

Design leadership at Dostavista and Borzo

At Dostavista, I built the design function from the ground up: grew the team to 10 people, set up collaboration with product, engineering, and marketing, created a design system, and launched UX research. At Borzo, I was responsible for the rebranding.

Product
city courier delivery
Scale
1.5M MAU · 8 countries
Team
10 people

Context

When I joined Dostavista, design was not working as a system: there were several disconnected libraries, no shared component system in engineering, and a constant stream of urgent tasks.

I needed to build the design function: the team, the processes with product and engineering, and a shared quality standard. I worked across two product areas – customer and courier – and reported directly to the VP of Product.

Team and processes

Over three years, the team grew to 10 people. I split it into two areas – product design and communications design – and defined who was responsible for what.

I handled hiring myself, from CV screening to final interviews and onboarding. I helped designers grow and gradually handed over responsibility for separate areas.

I built the task workflow: planning and prioritization, estimation, design review, product review, handoff to engineering, and QA in the test build.

Diagram of the design function: team, processes, feedback, and systems

Product changes

Web and app flows were structured differently. I gradually brought them to a shared logic and visual language.

At first, I designed most of the customer product myself. As the team grew, I moved into leadership: defined where product design was heading, ensured the quality of decisions, and got involved in complex flows.

Changes to the customer interfaces helped increase conversion to first order from 23% to 28%.
Dostavista customer app screens for placing and tracking an order

Order form. First iteration

About 95% of orders were urgent: users needed a courier to pick up the order as quickly as possible. But the form was built around manually choosing a time for each address.

Problem

For new users, the interface did not clearly answer the main question: “How quickly can you deliver? ” We advertised an urgent delivery service, but to understand how to order one, users first had to work through the complex time‑selection logic. For existing users, these were unnecessary steps: in the most common scenario, they had to set the time manually every time.

What we did

We moved this choice to the top of the form and split the flow into “As soon as possible” and “Schedule”. For urgent delivery, users no longer had to set the time manually. We also moved secondary parameters, such as weight and vehicle type, into dropdowns.

Result

After launch, we noticed that some users still chose “Schedule” for urgent orders. Interviews showed that selecting a time manually gave them a sense of control. This led to the next idea: showing a predicted delivery time so that the simpler flow would also give users confidence.

Among new users, conversion from opening the form to placing the first order increased by 10%, while form completion time fell from 7 to 6 minutes.
Первая итерация формы заказа в клиентском продукте Достависты

Order form. Second iteration

As the product became more complex, we introduced express delivery, slower and cheaper options, and delivery by a specific time. The form now had to do more than help users place an order: it also had to introduce them to new products.

Problem

Users needed to see every available option directly in the form, understand the differences, and choose the right one without separate landing pages, pop‑ups, or explanations. There was also a risk: the more products we added, the more complex the form would become.

What we did

We redesigned the pricing selector and foregrounded the factors that mattered for the choice: speed, time, and price. We also tested the names and descriptions of the delivery options: we gave users different scenarios and checked whether they chose the product designed for each scenario.

Result

Users clearly distinguished between the delivery options and chose those that matched their scenarios. Overall conversion to order did not decline, even though the interface offered more choices.

We analyzed where the volume for the new delivery options came from: about 40% came from cannibalizing existing orders, while 60% was incremental volume.
Вторая итерация формы заказа в клиентском продукте Достависты

Order form. Third iteration

The final major transformation was for India, where we had many more vehicle types: mopeds, rickshaws, and several kinds of trucks, each with different delivery speeds.

Problem

The old form no longer scaled. Vehicle type and delivery speed were mixed at the same level: options such as “within 4 hours” and “by truck” could appear side by side. This worked while there were only a few options. But as we added new trucks and rickshaws, users, especially new ones, began to get lost, and adding another option could reduce conversion to the first order.

Users in India also compared prices closely. For example, delivery within 4 hours could be about 40% cheaper than urgent delivery, but the old form required users to switch between options to see the difference.

What we did

We studied local patterns and found that users in India usually thought about vehicle type first: “I need a moped” or “I need a truck”. Only then did they decide how quickly the delivery needed to arrive. We therefore restructured the hierarchy: vehicle type became the first level and delivery speed the second. At the same time, we updated the backend to calculate prices for every available option for each order. Users could now compare them without additional switching.

Result

The new solution was intended to make additional vehicle types and delivery options more visible and easier to understand, simplifying the journey for new users and increasing activity among existing customers. After launch, we tracked conversion from the first form opening to order creation, as well as the share of alternative options across all orders.

New users converted 6% better, while orders from existing customers grew by 4% thanks to the additional options.
Третья итерация формы заказа в клиентском продукте Borzo

Onboarding

We had a highly diverse audience, from private customers to businesses with different delivery scenarios – flowers, documents, valuable items, and bulky parcels. The product already offered features for these needs: insurance, payment on delivery, waiting at the address, document return, loading, and unloading. But in the early stages of working on the product, we did not communicate these capabilities well to users.

Problem

Phrases such as “delivery for business” were too broad. Users still needed to understand: “Is this service right for my particular business? ” At the same time, we lacked information about new customers before their first orders. We needed it to analyze different segments and prioritize them for sales. We had already collected this data through a survey during registration, but to users it felt more like an extra step serving the company’s interests.

What we did

We combined the two tasks and turned onboarding into a personalized quiz. In a few steps, users told us what and how much they delivered and immediately saw relevant service features. For documents, these included waiting and return; for bulky items, loading and unloading. The quiz gave users a quick answer to the question “Is this product right for me? ” while giving us early customer segmentation.

Although this added a step to the funnel, we hypothesized that it would not create extra friction but would instead add clarity and reveal the product’s value sooner.

Result

In an A/B test, conversion from app installation to the first order increased by 8% compared with the previous version. Qualitative research later confirmed this: some customers recalled selecting their business type during onboarding and seeing information relevant to it. About 35% of users skipped onboarding, so we still collected some of the data later. This remained a limitation of the solution.

The new onboarding allowed the sales team to prioritize target leads: sales efficiency increased by 20%.
Onboarding screens for choosing a delivery scenario in the customer product

Research

I launched fast unmoderated UX research using Figma, Maze, and Intercom to test solutions with users before development.

I built a repeatable process and an internal guide, then trained designers and product managers. Research became part of the teams’ regular workflow instead of remaining a one‑off experiment.

I ran the fastest test in one hour, and the full cycle – preparation, launch, and analysis of results – took two days. The test included 106 participants.
Results of an unmoderated UX test for deleting an order in Maze

Design system

Instead of the previous disconnected libraries, I created a two‑level design system for product and marketing communications.

The first level defined the visual foundation: color, typography, grid, icons, and the shape of UI elements. The second level covered applied systems for web, mobile apps, and marketing. Shared principles allowed each system to evolve independently while keeping one visual language.

Together with engineering, we gradually turned shared elements into components in code, so the system worked not only in Figma but also in the product. After the companies split, Dostavista remained on this design system.

Diagram of design system levels: visual foundation, marketing communications, web, and apps

Borzo rebranding

The rebranding started before the companies split: local urgent delivery services in eight countries had to be united under one brand. After the companies split in 2023, I continued leading design at Borzo.

I prepared a shared design system for product, marketing, and engineering. It took several months: by launch, the design team together with engineering had already built the foundation.

The Borzo brand operated in eight out of ten countries; Russia and Turkey kept their local brands. To avoid rebuilding interfaces and communications manually for every market, we used a system of color skins.

Fragments of the design system for the rebrand
Color schemes for brand localization

Brand guidelines and product update

Later, Borzo’s visual language no longer matched the way the product and the brand had evolved. I updated the brand guidelines with the design team. We did not create a new style from scratch; we evolved what already worked.

We brought the new visual language into the product gradually: rebuilt the home page and part of the customer app flows. We changed the interface in a way that did not make users lose familiar scenarios.

Example of the updated visual language in the product