Назад к webkoth.com
Запрос фаундера → прод за 3 дня

HubMarket: маркетплейс-синхронизация остатков

Production-кейс founder-driven спринта внутри HubMarket. Реальный заказчик-фаундер запросил фичу синхронизации остатков по трём маркетплейсам (Wildberries, Ozon, Yandex Market). От первого сообщения в Telegram до релиза прошло 3 дня.

Таймлайн

  1. День 0Запрос фаундера в Telegram, обсуждение требований и формата данных
  2. День 1Архитектурный набросок, проверка источников данных по 3 маркетплейсам, выбор очередей
  3. День 2End-to-end пайплайн на одном маркетплейсе, тест на реальных данных
  4. День 3Расширение на 3 маркетплейса, нагрузочная проверка, релиз в прод

Принятые решения

Playwright вместо официальных API

У части маркетплейсов нужные данные доступны только через UI (или API устаревший / нестабильный). Playwright + stealth даёт стабильный путь с откатом к API там, где он есть.

pg-boss как очередь

Уже используется в HubMarket для других задач. Зачем тащить новый Kafka/RabbitMQ, если существующая инфра справляется.

Хранить дельты, не снимки

Снимки остатков по часу = терабайты данных. Дельты + периодический ребейс позволяют держать всё в Postgres без отдельного DWH.

Результат

  • Релиз в прод на 3-й день после запроса
  • Покрытие 3 маркетплейсов (Wildberries, Ozon, Yandex Market)
  • Цикл «запрос → прод» 3-4 дня стал устойчивым паттерном для HubMarket — featured как 4-я метрика на лендинге
  • Кейс подтверждает Hero-обещание «MVP за неделю — стартапам»

Стек

Next.jsHonoPlaywrightpg-bossPostgreSQL