Илья Жарков › ilya.zharkov Сбер ID
Рейтинг
1 715
№ 606 в каталоге
Отзывы
0
Профессионализм
-/10
Коммуникация
- /10
Город
Санкт-Петербург
Опыт работы
28 лет
На сайте с
2011 года
Юридический статус
ИП

Внутренняя платформа скоринга и аналитики премиальных заведений с оптимизированным сбором данных Google Places API

Используемые навыки Docker Compose Node.js Nuxt.JS Typescript Vue.js

Описание

Клиенту требовалось создать внутренний аналитический веб-инструмент (back-office workbench) для автоматизированного поиска, скоринга и формирования базы премиальных заведений (рестораны высокой кухни, закрытые клубы, панорамные rooftop-бары) в курортных городах и мегаполисах мира.

В чём заключалась проблема:
Формирование качественной базы статусных локаций вручную — долгий и дорогой процесс: операторам приходилось вручную сопоставлять данные карт, отзывы туристов и статьи в глянцевых гидах (Michelin, Tatler и др.). При этом оценки на картах часто субъективны или накручены, а ручной сбор не давал единой объективной шкалы сравнения.

Цель проекта:
Автоматизировать рутину аналитиков и операторов: создать закрытую систему, в которой сотрудник указывает город, а сервис сам находит заведения, собирает по ним исчерпывающие данные, сопоставляет с экспертными источниками и формирует объективный ранжированный топ-30 лучших мест для внутреннего использования и дальнейшей работы.

Ключевые требования заказчика:
1. Закрытый периметр: система предназначена исключительно для внутренней работы команды — доступ только по авторизации, никакой публичной части на этапе MVP.
2. Двухфакторный объективный скоринг: оценка заведений должна строиться не просто на «звездах», а на математической модели, учитывающей реальную популярность (соотношение рейтинга и объема отзывов) и уровень эксклюзивности (ценовой сегмент + подтвержденные упоминания в экспертных медиа).
3. Нулевые затраты на API ($0/мес): сбор данных через картографические сервисы должен быть строго оптимизирован, чтобы регулярная генерация городов укладывалась в бесплатные ежемесячные лимиты без дополнительных расходов.
4. Простота управления: наглядный интерфейс с отслеживанием прогресса сбора в реальном времени, возможность загружать свои файлы с экспертными подборками (CSV/Excel) и просматривать результат прямо в системе.

Решение

Для решения задачи был спроектирован и реализован закрытый рабочий инструмент с изолированной фоновой обработкой данных:

1. Архитектура и безопасность периметра:
• Приложение реализовано как закрытая внутренняя система: публичный доступ полностью отключен, вход в систему осуществляется через защищенную авторизацию по сессиям.
• Стек подобран с упором на надежность, высокую скорость отклика и минимальное потребление серверных ресурсов

2. Умный сбор данных и оптимизация расходов на API:
• Разработан многоэтапный конвейер сбора: геокодирование города → точечный поиск кандидатов → сбор детальной информации (рейтинг, число отзывов, ценовой диапазон, фото) → отбор и сохранение топ-30 мест.
• Схема запросов к внешнему API была строго оптимизирована: вызовы ограничены только необходимыми параметрами без перехода на дорогие тарифные планы, внедрен жесткий лимитер вызовов на каждый прогон. Это гарантировало нулевую стоимость сбора данных ($0/мес) при регулярной работе операторов.
• Реализованы механизмы безопасного кэширования в полном соответствии с правилами внешних платформ.

3. Математический скоринг и нечеткий матчинг:
• Внедрен расчет двух независимых показателей: «Популярность» (объективная оценка на базе рейтинга и объема внимания) и «Люксовость» (сочетание ценового уровня и веса упоминаний в экспертных изданиях).
• Реализован модуль загрузки списков из медиа (CSV/Excel) с автоматическим «умным» сопоставлением названий заведений из статей с объектами на картах (нечеткий поиск по схожести строк) и отсевом дубликатов.

4. Асинхронный воркер и рабочий интерфейс оператора:
• Все тяжелые вычисления и запросы к API вынесены в отдельный фоновый процесс (worker). Интерфейс не блокируется во время расчета, а оператор видит статус и ход выполнения в реальном времени.
• Создан удобный экран просмотра результатов внутри системы: интерактивная таблица и карточки мест, фильтрация, переключение сортировки (по общему рангу, индексу популярности или оценке статуса) и просмотр ключевых атрибутов каждого заведения.
• Предусмотрена панель диагностики с историей прогонов, контролем расхода квот и очередью для ручной проверки сомнительных совпадений.

5. Надежность, тестирование и DevOps:
• Проведено глубокое автоматизированное тестирование всех модулей системы (бизнес-логика, скоринг, безопасность, импорт данных).
• Сервис упакован в Docker-контейнеры, подготовлен скрипт быстрого развертывания на сервере с автоматическим резервным копированием базы данных на лету и настройкой защищенного соединения (SSL).

Результат

В результате разработан и подготовлен к промышленной эксплуатации надежный внутренний инструмент для аналитики и формирования каталога:

• Полная автоматизация рутины: вместо многочасового ручного поиска оператор вводит название города и за несколько минут получает готовый, математически выверенный топ-30 премиальных локаций с контактами, фото и оценками.
• Нулевой бюджет на эксплуатацию API: благодаря жесткому контролю структуры запросов и лимитов регулярная актуализация и добавление городов обходятся без затрат ($0/мес).
• Стабильность и точность: благодаря качественной архитектуре и обширному набору автотестов система устойчива к сбоям, исключает дублирование заведений и гарантирует корректность скоринга.
• Минимальные требования к серверу и развертывается одной командой с автоматическим созданием резервных копий.

Сдача проекта:
Готовый программный комплекс (исходный код, настроенное Docker-окружение, скрипты миграций базы данных, руководство по эксплуатации и скрипты автоматического деплоя) был успешно развернут на сервере и передан заказчику в согласованный срок. На этом этапе разработка MVP была успешно завершена; дальнейшая судьба продукта и сценарии коммерческого использования собранных данных остаются на стороне заказчика.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Кроссплатформенный менеджер паролей, документов и 2FA с Zero-Knowledge шифрованием в продакшене (Google Play, RuStore)
Кроссплатформенный менеджер паролей, документов и 2FA с Zero-Knowledge шифрованием в продакшене (Google Play, RuStore)
22
Веб-разработка и IT Омниканальная платформа обмена сообщениями и веб-кабинет оператора: интеграция Facebook Messenger и TikTok (NestJS / Vue 3)
Омниканальная платформа обмена сообщениями и веб-кабинет оператора: интеграция Facebook Messenger и TikTok (NestJS / Vue 3)
13
Веб-разработка и IT MVP платформы управления коммерческим автопарком: омниканальный чат оператора, таск-трекер с Kanban и складской учет (NestJS, Vue 3, Redis, Docker)
MVP платформы управления коммерческим автопарком: омниканальный чат оператора, таск-трекер с Kanban и складской учет (NestJS, Vue 3, Redis, Docker)
16
ИИ и Нейросети AI-ассистент в Telegram на базе Agentic RAG: экспертные консультации по кормам и рационам животных с защитой от галлюцинаций
AI-ассистент в Telegram на базе Agentic RAG: экспертные консультации по кормам и рационам животных с защитой от галлюцинаций
32