Инженер платформы данных Python PostgreSQL
Компания DOMEO — российская компания, лидер среди сервисов по капитальному ремонту и дизайну квартир и частных домов. На рынке более 10 лет, представлены в Москве, Санкт-Петербурге и Сочи.
Развивается платформа товарных данных — единое хранилище всех товаров компании. Система уже работает: модуль, БД, структура, обслуживает внутренние сервисы (конфигуратор, планировщик, заказы, загрузку поставщиков). Ищем инженера, который возьмёт платформу под свою ответственность: базу данных, загрузку, выдачу данных и надёжность. Это не аналитика и не DWH — платформа обслуживает живые сервисы в реальном времени.
Разработка ведётся вместе с ИИ-агентами: они пишут значительную часть кода, а инженер ставит задачи, проверяет результат и отвечает за архитектуру и качество. В разборе данных поставщиков помогают ИИ-модели.
Стек: PostgreSQL 16, Python / FastAPI / SQLAlchemy, Redis, Object Storage, Docker, GitHub Actions; российское облако.
Что предстоит делать:
- Проектировать и развивать схему PostgreSQL: товары, предложения поставщиков, цены и наличие;
- Строить и развивать загрузку данных поставщиков: пакетная обработка, идемпотентность, возобновление после сбоя, контроль отклонений;
- Участвовать в разборе данных поставщиков с помощью ИИ-моделей: профили поставщиков, сопоставление категорий и характеристик, передача спорных случаев человеку;
- Развивать слой выдачи данных для других систем: стабильный формат, постраничная выдача, кэширование, чтение с реплики;
- Оптимизировать производительность: индексы (включая partial), планы запросов, большие таблицы; менять базу на работающем сервисе без остановки;
- Отвечать за роли и права доступа к данным;
- Отвечать за восстановление базы за согласованное время: бэкапы, регулярные проверки восстановления, репликация и переключение при отказе, мониторинг;
- Участвовать в выборе и развитии инфраструктуры под платформу;
- Работать в связке с ИИ-агентами: ставить задачи, проверять код и SQL, принимать результат по замерам и тестам;
- Дорабатывать систему по итогам разбора инцидентов, закрывая причину, а не симптом.
Требования:
- Python на продакшн-уровне от 3 лет: FastAPI, SQLAlchemy, asyncio;
- PostgreSQL как основная база сервиса от 3 лет, а не только источник для аналитики;
- Понимание устройства PostgreSQL: MVCC, транзакции и блокировки, автовакуум, WAL;
- Уверенный SQL и PL/pgSQL: функции, триггеры, пакетная обработка вместо построчной;
- Опыт очередей и фоновых воркеров, повторная обработка без дублей;
- Оптимизация по замерам: EXPLAIN (ANALYZE, BUFFERS), pg_stat_statements;
- Миграции на живом сервисе без остановки;
- Опыт эксплуатации: Docker, мониторинг, бэкапы и восстановление базы;
- Ежедневное использование ИИ-инструментов в разработке (Claude Code, Codex, Cursor или аналоги) и умение проверять их результат;
- Самостоятельность: готовность вести участок, принимать решения и оформлять их;
- Готовность работать в офисе в Москве.
Будет плюсом:
- Репликация, PgBouncer, партиционирование;
- Outbox, событийная синхронизация сервисов;
- Опыт с каталогами товаров, фидами поставщиков, e-commerce, PIM;
- Опыт интеграции LLM и локальных моделей;
- Kubernetes.
Условия:
- График: 09:00–18:00 или 10:00–19:00 (перерыв 1 час), сб/вс и праздники — выходные;
- Современный офис, оборудованная кухня, места для отдыха;
- Бесплатная йога в спортивном пространстве офиса;
- Детская комната — если нужно взять ребёнка с собой;
- Зарплата: обсуждается по итогам интервью.