Бюджет: 18000 UAH Термін: 9 днів
Добрий день, Євгене!
Візьму це як точкову доопрацювання існуючого pipeline, а не як «переписування поруч». Ключовий момент тут — безпечно вбудувати новий engine в staging/shadow-контур так, щоб до кінця QA не зламати ні cron, ні поточну production-логіку, ні canonical-дані каталогу.
Що зроблю по обов'язковому scope:
— інтегрую Python-модуль як окремий компонент з явною валідацією контракту на стороні Node.js;
— заміню DELETE→CREATE на snapshot-safe UPSERT-потік: STALE тільки для повного успішного snapshot, без деградації при partial/failed run;
— оновлення offers + selected offer metadata + shadow fields по одній моделі оформлю в одній PostgreSQL transaction з повним rollback;
— розширю offers без паралельної нової системи, якщо поточну схему можна безпечно мігрувати;
— додам запуск refresh по одному slug/id і списком через CLI або існуючий службовий API;
— збережу поточні cron/batches/cooldown/PRICE_REFRESH_MIN_DAYS і legacy pipeline до завершення Shadow QA;
— зроблю audit output в найбільш легкому і безпечному варіанті після перегляду поточної admin table.
По досвіду: регулярно працюю з PostgreSQL migrations, транзакційними оновленнями, idempotent ingestion/snapshot-пайплайнами і інтеграціями між Node.js і окремими Python-компонентами, де критично не псувати активні дані при неповному прогоні.
Моя оцінка:
1. Fixed price за обов'язковий scope — 29 000 грн.
2. Promotion-механізм окремо — 7 000 грн.
3. Термін — 10–12 робочих днів.
4. Оцінка — 55–70 годин.
5. Готовий почати — протягом 24 годин після доступу до репозиторію і staging.
6. Staging, QA, migrations і bug-fix період 7+ днів — включені.
Що потрібно уточнити до старту:
— як зараз викликається Python-модуль і який формат partial/error відповіді;
— поточна схема offers і де зараз зберігається selected offer / price metadata;
— чим виконуються migrations і доступний чи staging deploy через існуючий процес;
— чи є вже поле/статус для STALE або його потрібно вводити в поточну модель;
— який варіант audit output переважніший: admin table чи CSV.
Якщо хочете, можу першим повідомленням після доступу дати короткий technical review-план: які місця в коді трогаємо, які міграції робимо і де найризикованіші точки rollback.
🌐 Моє портфоліо з останніми кейсами:
https://mrnko.com
💼 Профіль Freelancehunt: Freelancehunt
🤝 Буду радий обговорити деталі, відповісти на Ваші запитання та запропонувати оптимальне рішення під Ваш проєкт.