Кейс

Маркетплейс услуг

Двусторонний маркетплейс исполнителей и заказчиков с поиском, заказами и безопасными сделками.

Год
2023
Клиент
Маркетплейс услуг
Роль
Senior Backend Developer
М

Описание

Маркетплейс соединяет заказчиков и исполнителей услуг: каталог с поиском и фильтрами, профили специалистов с рейтингами и отзывами, оформление заказов, безопасные сделки с удержанием средств и система сообщений. Я разработал серверную часть на Laravel с продуманной доменной моделью и строгой авторизацией: каждое действие проверяется политиками по принципу «запрещено по умолчанию», а доступ к чужим заказам и данным исключён проверками владения. Поиск и фильтрация оптимизированы индексами PostgreSQL, а горячие выборки каталога кэшируются в Redis. Уведомления, рассылки и пересчёт рейтингов вынесены в очереди, чтобы не замедлять пользовательские запросы. Денежные операции по сделкам учитываются в целых минимальных единицах с аудитом всех переходов, а интеграция с платёжным провайдером построена на идемпотентных колбэках.

Задача

Прежняя площадка страдала от медленного поиска, небезопасной авторизации с доступом к чужим заказам и синхронной отправки уведомлений, из-за которой страницы подвисали под нагрузкой.

Решение

Переработал доменную модель, ввёл политики авторизации на каждое действие, оптимизировал поиск индексами и кэшем в Redis, вынес уведомления и пересчёт рейтингов в очереди, реализовал безопасные сделки с удержанием средств.

Результаты

Скорость поиска выросла в 6 раз, уязвимости доступа к чужим данным устранены, страницы перестали подвисать под нагрузкой, конверсия в оформленный заказ выросла на 18%, площадка вышла на 30 тысяч активных пользователей.

Технологии