Точка-Точка — это логистический сервис междугородних перевозок. Компания предлагает услуги перевозки по России за цену в разы меньше, чем конкуренты. Точка-Точка избавляет предпринимателей и обычных людей от переплат за перевозки, а водителей от простоя и недогруза машин. Таким образом, первые экономят, а вторые — зарабатывают.
У Точки-Точки нет собственного автопарка и складов. Она является посредником между отправителем и перевозчиком.
Филиппова Елена, account director AIR Production
— Точка-Точка — это логистический стартап, который пришел к нам на стадии MVP. В чем его концепция и суть?
У создателей проекта была идея привнести концепцию «свободного рынка» и шеринга в индустрию логистики. Это возможно с помощью IT-системы, которая соединяет потребителя и перевозчика, готового оказать услугу. У компании нет фиксированных тарифов, вместо этого цена предлагается интервальная на основе вычислений калькулятора и предложений перевозчика. Благодаря отсутствию собственных складов или автопарков финальная цена выходит ниже, чем у конкурентов.
Компания паллетирует весь поступивший груз, формирует партии, после чего IT-система распределяет их среди перевозчиков. Итоговая стоимость перевозки делится на всех отправителей.
Компания охватывает большой сегмент междугородних перевозок. А кто аудитория проекта? Кто отправляет и доставляет грузы с помощью Точки-Точки?
Аудитория проекта — физические и юридические лица. Скажем, есть человек или компания, которой нужно отправить груз из Москвы в Воронеж. Они могут воспользоваться услугами Точки-Точки. Также предусмотрен мульти-ролевой личный кабинет. То есть в рамках одного интерфейса человек может переключаться между ролями клиента и отправлять грузы в другие города как физическое лицо, и как юридическое, ждущим свой заказ.
Скажем, у нас есть Татьяна из Екатеринбурга. У нее небольшое есть ИП и производство авторской керамической посуды, которую она продает через Instagram. Также она довольно часто отправляет грузы родственникам в другие города: подарки, бытовую технику и т.п. Для всех этих задач Татьяна может создать единый личный кабинет с условием, что она предоставит данные о себе как о физическом, так и о юридическом лице.
Есть еще один крупный сегмент аудитории: перевозчики. Это юридические лица, которые занимаются магистральными и прямыми перевозками. Все они зарегистрированы на сайте и верифицированы страховой компанией.
Чем сервис полезен бизнесу?
Точка-Точка снижает расходы на перевозку. Это также сказывается на цене конечного получателя груза, который не переплачивает за отправку ему заказа. Ну и для удобства есть персональный менеджер клиента, который 24/7 на связи, а еще оформление заказа с телефона. Оно занимает столько же времени, сколько на сайте.
С другой стороны, Точка-Точка позволяет перевозчикам заработать больше, дозагрузив свои транспортные средства (ТС). Более того: цена на груз устанавливается в порядке аукциона.
Так что Точка-Точка — это такой посредник между бизнесом отправителя и перевозчика.
Из чего состоит сервис?
Точка-Точка — стартап с разветвленной структурой, которая содержит интерфейсы для отправителей и перевозчиков, для комплектовщиков и для менеджеров самого стартапа.
Как формируется цена заказа для отправителя и перевозчика?
У сервиса есть несколько калькуляторов для разных типов отправителей и отправлений. У их интерфейсов есть общие черты: нужно указать тип товара, его габариты, объявленную ценность, вес и объем, а также пункт назначения.
Как работают калькуляторы для клиентов?
Если клиент выбирает услугу «Сборный груз», то он видит актуальные цены других операторов. Для этого мы интегрировались по открытому API с калькуляторами расчета ведущих компаний по доставке.
Отправитель может рассчитать цену с помощью калькулятора Точки-Точки, и, при отображении финальной цены, сверху всплывает блок с ценами конкурентов на такой же груз. Цена конкурентов всегда актуальна и рассчитывается моментально. Это происходит так:
Описанный процесс занимает меньше 1 секунды.
Если же у отправителя нет точного понимания по характеристикам отправляемого груза, то можно зайти на отдельную страницу с сравнением цен по весу: 30 кг, 100 кг, 1000 кг, 5000 кг. Информация по ценам в этом разделе также постоянно обновляется, если у одного из операторов меняются тарифы.
В случае с «Прямой перевозкой» отправитель, опять же, заполняет все необходимые поля, но в данном случае видит только интервал цены, в рамках которой он может выбрать желаемую для него. Пользовательские изменения цены влияют и на условия и дату доставки, поэтому постоянный «клиентский демпинг» исключен.
Как работают калькуляторы для перевозчиков?
Перевозчикам важно быстро погрузить дополнительный вес, желательно уже спалеттированный (то есть упакованный и рассортированный) и начать выполнять заказ.
Чтобы распределять заказы между ними, на страницах магистральной и прямой перевозки реализованы аукционы. В случае с магистральными на странице расположен калькулятор дохода с аукционом. Для него был разработан алгоритм генерации партий в двух вариантах: на Java и на PostgreSQL. По итогам теста оказалось, что PostgreSQL отрабатывает быстрее и выдает расчет партий за 0,5 миллисекунд, а Java тратила 5-10 секунд. Подробнее о разработке алгоритма можно прочитать тут.
Что из себя представляет сам алгоритм аукциона для магистральных перевозок?
Отправитель заполняет параметры заказа, нажимает «Сформировать заказ» и видит примерный интервал стоимости перевозки его груза. Скажем от 2150 до 2800 рублей. Заказ доставляют на склад, и его принимает комплектовщик. Он проверяет данные по габаритам, весу и другим характеристикам, которые указал отправитель на сайте. После того, как заказ спаллетирован, он попадает на аукцион среди перевозчиков, имеющих ЛК на сайте, где может торговаться от нескольких минут до нескольких дней.
Во время аукциона цена на груз начинается с минимума и постепенно повышается до верхней планки. Выигрывает обычно тот перевозчик, который быстрее всего реагирует на заказ, а не тот, кто ждет повышения цены. Такая модель стимулирует операторов не ждать, пока цена достигнет максимума сама по себе, а брать груз здесь и сейчас, пока его не взял кто-то другой.
Если через отведенное время на торгах паллету никто не забирает, то она «теряет свежесть». Ее больше нельзя держать на аукционе, так как дальнейшее промедление приведет к срыву сроков доставки.
Какие действия предусмотрены для такого сценария?
Для таких случаев мы создали отдельный интерфейс, «Перегруз», который переключает заказ с аукционной модели на собственных перевозчиков. Этот интерфейс позволяет распределять товары вне аукциона среди перевозчиков-партнеров Точки-Точки.
Эти процессы никак не влияют на клиента: для него нет промедлений по сроку или изменений в цене. Как уже было сказано, цена в момент оформления заказа выводится интервальная. В срок доставки уже заложено время на аукцион.
Если же Точка-Точка привлекает перевозчиков вне аукционной модели, то они также знают об интервалах и укладываются в них.
Что насчет алгоритма аукциона для прямых перевозок?
Он отличается от алгоритма для магистральных. В данном случае ставки делают перевозчики, а не система. При этом для каждого груза также стоит ограничение по времени на аукционе.
Как построено хранение и обмен данных на проекте?
Площадка интегрирована с внешней общей базой данных (БД), написанной на PostgreSQL. В ней происходит расчет партий для калькулятора перевозчика согласно логике алгоритма генерации партий, реализованного там же. Не стоит забывать и о процессе работы с заказом на складе. Комплектовщики проверяют его, готовят по нему закрывающие документы, паллетируют. Пользовательские данные, информация по заказам, статусам и документам хранятся в общей БД. Чтобы эти данные отобразились в системе, они передаются по API в другие базы данных (БД сайта и БД страховой компании).
На момент разработки у Точки-Точки не было собственных складов, только партнерские. И вначале мы хотели реализовать отображение статусов следующим образом: интегрироваться со складами партнеров, у которых уже есть своя система управления складами. А затем подтягивать по API данные о действиях комплектовщика и статусе заказа на саму площадку и в общую базу данных.
Однако выяснилось, что у партнеров нет стандартизированной системы управления складами, подходящей под потребности Точки-Точки. Большинство из них были не готовы дорабатывать свою систему или обновлять ее.
В итоге мы пошли другим путем и создали собственную систему управления складами для кладовщика. Получился такой вот сервис внутри сервиса.
Сервис работает так:
Как происходит страховка грузов и проверка перевозчиков?
Точка-Точка интегрирована со страховой компанией, которая верифицирует перевозчиков и страхует заказы. Чтобы перевозчик мог брать грузы, а отправитель — не беспокоиться за них, на сторону страхового агентства передаются: паспортные данные, сведения о правах и т.п. На верификацию нового перевозчика и его водителей требуется обычно до 24 часов, затем он уже может приниматься за заказы.
Какой стек применялся на этом проекте?
Верстку мы делали на Vue, а для бэкенда использовали Symfony + SONATA admin, PostgreSQL (БД) и частично Java для алгоритма генерации партий, хотя по итогу эти наработки остались не использованными.
Клиент пришел к нам на стадии MVP, без визуальной айдентики. Что мы помогли реализовать по части дизайна?
Мы разработали дизайн-концепцию проекта и логотип. Клиент пришел к нам с прототипами на Тильде. И его команду больше интересовала и интересует функциональность и удобство для пользователей, а не эстетическая упаковка. Поэтому мы предложили концепцию в строгих контрастных цветах: грифельный и красный.
Основной упор сделали на проектировании калькуляторов и различных форм: для отслеживания заказов, комплектовки и т.п. Интерфейсы калькуляторов мы тестировали на перевозчиках...
Какую методологию мы использовали на проекте?
От четкой методологии мы отказались: это архаизм, да и нет смысла ограничивать себя рамками определенных инструментов или подходов. Вместо этого взяли на вооружение принципы гибкой разработки и работы по спринтам. В этом проекте спринты длились по 4 недели. Такой длинный срок был выбран не случайно: команда Точки-Точки хотела получать какой-то готовый продукт каждый раз: калькулятор, прототип нового интерфейса и др. Успеть подобное можно было только за срок не менее 4 недель.
Верстка, дизайн, проектирование и программирование шли параллельно, так как мы работали над несколькими сервисами одновременно.
Примерно через 1,5 года работы мы отказались от спринтов. Вместо этого мы беремся за одну крупную задачу, декомпозируем ее на мелкие, каждая из них оценивается, затем согласуется метод реализации и назначается общая дата релиза.
От спринтов мы отказались, потому что новые задачи не помещались в этот период. Здесь разработка ведется по продуктовому принципу.
За время, что мы работаем вместе, у Точки-Точки появилась собственная инхаус-команда разработки. Однако они не отказались от наших услуг. Сейчас продолжаем работать над новыми проектами компании, поддерживаем площадку.