Бюджет: 5000 UAH Термін: 2 дні
Вітаю! Я тут, щоб допомогти вам. Відкритий для повідомлень. Та не не забувайте про портфоліо, там багато цікавого!
Розгорнути ASP.NET Classic сайт за допомогою WebDeploy на віртуальну машину. Для цього використати команду Publish у контекстному меню проєкту. Створити базу даних у SQL Server Management Studio та надати права на 'IIS AppPool\<ім'я сайту>' Змінити рядок підключення на серверний та розгорнути сайт знову Перевірити, що реєстрація користувача працює. Подивитися в базі, що користувач створився. 100%: Розгорнути ASP.NET Core застосунок на віртуальну машину HTTP 8080, HTTPS 8433 Його потрібно також відкривати на внутрішньому брандмауері віртуальної машини. Встановити на сервер ASP.NET Core runtime for hosting bundle (https://get.asp.net) Перезавантажити необхідні служби, використовуючи документацію, або перезавантажити сервер Створити в Visual Studio та розгорнути ASP.NET Core застосунок у новий сайт IIS. Версія ASP.NET Core повинна точно збігатися, оскільки пакет розгортання не містить бібліотек ASP.NET Core. Вони йдуть разом з .NET Core runtime. M: Створити базу даних під Core сайт і надати доступ до неї з IIS. Можливо, для ASP.NET Core інструкція буде відрізнятися Зробити так, щоб сайт піднявся без перезавантаження сервера (потрібно перезавантажити IIS і ще одну службу, щоб IIS підхопив Hosting Bundle, шукайте в інеті) Результат – знімки з відкритими портами (Defender і Azure), знімок з сайтом в оглядачі на локальному ПК, запущений з сервера. Якщо без перезавантаження сервера, то знімок виділених служб, які перезапустили
Бюджет: 5000 UAH Термін: 2 дні
Вітаю! Я тут, щоб допомогти вам. Відкритий для повідомлень. Та не не забувайте про портфоліо, там багато цікавого!
Є діюча production-платформа з каталогом та автоматичним оновленням зовнішніх пропозицій і цін. Стек: — Node.js / TypeScript; — PostgreSQL; — існуючий сервіс оновлення цін і cron; — окремий готовий Python-модуль валідації та вибору пропозицій; — staging і production. Необхідно точково доопрацювати існуючий pipeline оновлення цін без повного переписування backend. ОБОВ'ЯЗКОВИЙ СКОП 1. Інтеграція Python-модуля — Python-модуль залишається окремим компонентом; — повертає структурований результат: offers, selected offer, statuses та risk flags; — Node.js валідує результат і виконує запис у БД; — передбачити обробку помилок і partial/failed runs; — legacy pipeline не відключається до завершення QA. 2. Запуск оновлення за списком Додати запуск: — по одному slug/id; — по переданому списку slug/id. Допустимо CLI або існуючий службовий API. Новий користувацький інтерфейс не потрібен. 3. Shadow Mode Нові результати повинні записуватися окремо і не впливати на production до QA. Потрібні shadow-поля: — price; — selected offer ID; — direct URL; — offer status; — risk/QA flags; — checkedAt; — engineVersion. 4. Розширення існуючої таблиці offers Додати: — source; — external_offer_id; — last_seen_at; — last_checked_at; — engine_version; — risk flags або зберігання в існуючому JSON; — unique constraint для захисту від дублів. Нову паралельну систему пропозицій створювати не потрібно, якщо існуючу таблицю можна безпечно розширити. 5. UPSERT, STALE і транзакція БД Замінити поточну схему DELETE → CREATE: — UPSERT існуючих і нових пропозицій; — відсутні в повному успішному snapshot пропозиції переводяться в STALE; — при API error, partial result або незавершеному snapshot активні пропозиції не повинні ставати STALE; — оновлення пропозицій, metadata вибраної пропозиції та shadow fields по одній моделі виконується всередині однієї транзакції БД; — при помилці виконується повний rollback. 6. Canonical-safe refresh Оновлення цін не повинно змінювати: — brand; — reference; — model; — collection; — name/title; — slug; — descriptions; — images; — SEO fields. Оновлюються тільки offer, price і shadow data. 7. Збереження поточної cron-логіки Зберегти: — existing cron; — rolling batches; — cooldown; — перевірку PRICE_REFRESH_MIN_DAYS до виклику зовнішнього API; — legacy production pipeline до завершення Shadow QA. 8. Audit output Достатньо одного варіанту: — shadow-колонки в існуючій admin table; або — CSV export. Мінімальні дані: — model/reference; — production price; — shadow price; — delta; — production/shadow URL; — status; — risk flags; — checkedAt; — engineVersion. Новий складний dashboard не потрібен. 9. Staging і QA — DB migrations; — staging deployment; — smoke test на 5 переданих моделях; — потім Shadow Mode приблизно на 50 моделях; — виправлення технічних помилок, виявлених під час цих прогонів; — коротка документація контракту Python → Node.js та rollback procedure. ОПЦІОНАЛЬНО ОЦІНИТИ ОКРЕМО Простий технічний promotion без нового UI: — promotion однієї моделі по slug; — promotion списку slug; — перенесення підтверджених shadow values в production; — технічна перевірка після rollout. РЕЗУЛЬТАТ — Pull Request; — DB migrations; — робоча інтеграція Python → Node.js; — Shadow Mode; — UPSERT, STALE і транзакційне оновлення; — запуск по slug/id; — staging deployment; — smoke-test results; — коротка документація; — не менше 7 днів виправлення багів по реалізованому scope після приймання. В ОТКЛИКУ УКАЗАТИ 1. Фіксована ціна за обов'язковий scope. 2. Окрему вартість механізму promotion. 3. Термін. 4. Оцінку годин. 5. Коли готові почати. 6. Досвід з PostgreSQL transactions, migrations та ingestion pipelines. 7. Які питання потрібно уточнити до початку. 8. Включені чи staging, QA, migrations та період виправлення помилок. Шаблонні відповіді без конкретної оцінки розглядатися не будуть. Доступ до production на першому етапі не надається. Робота починається з обмеженого code review та staging.
Потрібно розробити централізовану серверну систему збору та зберігання даних із Planfix, 1С, Meta Ads і Google Ads, а також веб-дашборд для їх відображення та аналізу. Усі дані, історія змін, розрахунки та агреговані показники повинні зберігатися виключно в серверній базі даних. Дашборд не повинен зберігати або дублювати бізнес-дані. Він має отримувати необхідну інформацію із серверної бази через API відповідно до запитів користувача та відображати її у вигляді KPI, графіків, таблиць і деталізованих звітів.
Щукаємо для підтримки проекта на базі Yii , треба вносити правки та доопрацювання бази , частково є звязок з попереднім виконавцем .....................
Потрібно зробити міграцію бази з CRM G-PLUS на MyChatBot Обєм бази - 26 тис. лідів 2 воронки - Кол центр та Відділ продажу зі своїми вирвами Картки лідів (крім імені та номеру) мають багато різних полів Ліди також мають голосові записи дзвінків. Їх також потрібно перенести Від кандидата очікую орієнтовну суму та терміни реалізації
Створити дашборд для моніторингу та аналізу ефективності мережі локацій (філій) компанії у Google Business Profile (GBP). через офіційний Google Business Profile API. Обробкачерез Скрипт на базі Google Apps Script (підв'язати до Google Таблиці). Запис даних у Google Таблиця (яка виступає як база даних для Looker Studio). Оновлення: Щодня (з індикацією дати останнього оновлення).Створити сервісний акаунт Google Cloud Скрипт раз на добу (тригер о 03:00 ночі) надсилає запит до GBP API. Отримує метрики за вчорашній день по кожній локації (locationId). Записує дані в таблицю в плоскому форматі (рядок = унікальне поєднанняДата + ID Філії + Метрики). Картки ключових показниківНазва карткиМетрика GBPФормат динамікиПерегляди профілюImpressions (Search + Maps)Відсоток %, Sparkline (синій)ДзвінкиLocal Services Phone CallsВідсоток %, Sparkline (зелений)Переходи на сайтWebsite ClicksВідсоток %, Sparkline (фіолетовий)Побудова маршрутівDirection RequestsВідсоток %, Sparkline (помаранчевий)Середній рейтингAverage Review RatingАбсолютна зміна (наприклад, +0.1), Sparkline (жовтий)Нові відгукиNew Reviews CountВідсоток %, Sparkline (бірюзовий)