Оптимизация CI/CD
Я настоятельно рекомендую сотрудничество и надеюсь снова поработать вместе в будущем.
Технологический стек:
Frontend: React
Backend: Nest.js
База данных: MongoDB (с поддержкой реплика-сета)
Использование Nx Monorepo для управления несколькими фронтенд и бэкенд проектами, включая 3 фронтенд сервиса и 1 бэкенд API сервис.
Среда развертывания:
Redis и MongoDB размещены на собственных серверах, без использования облачных сервисов.
MongoDB должен быть настроен с реплика-сетом для обеспечения правильной обработки транзакций.
Оптимизация пайплайна и развертывания:
Настроить автоматизированный тестовый пайплайн с использованием GitHub Actions.
Обрабатывать только проекты, которые изменились, избегая повторной установки зависимостей и пересборки образов.
Оптимизировать процесс сборки Docker, используя кэширование и инкрементальные сборки для уменьшения использования хранилища и времени сборки.
Управление Docker образами и контейнерами:
Использовать docker-compose файлы для развертывания сервисов.
Перезапускать только изменившиеся сервисы, а не весь стек, обеспечивая минимальное время развертывания и минимальные ресурсы.
Переустанавливать зависимости только при их изменении, избегая повторной установки при каждом развертывании.
Требования к базе данных:
Развернуть MongoDB с реплика-сетами для обеспечения высокой доступности и поддержки транзакций.
Развернуть Redis для обеспечения конфиденциальности данных и поддержки базовых кэширования.
Оптимизация ресурсов и хранилища:
Автоматическая очистка старых Docker образов и контейнеров для уменьшения использования хранилища.
Повышение эффективности развертывания с помощью GitHub Actions и других автоматизационных инструментов.
Достичь инкрементальных сборок и развертываний, обеспечивая самое быстрое время развертывания и минимальные ресурсы.
Дата сдачи: 1 день, максимум 2 дня.
Обзор проекта
Технологический стек:
Frontend: React
Backend: Nest.js
База данных: PostgreSQL (вместо MongoDB)
Использование Nx Monorepo для управления несколькими фронтенд и бэкенд проектами, включая 3 фронтенд сервиса и 1 бэкенд API сервис.
Среда развертывания:
Redis и PostgreSQL размещены на собственных серверах, без использования облачных сервисов.
PostgreSQL должен быть настроен для высокой доступности и поддержки транзакций.
Краткое описание требований
Оптимизация пайплайна и развертывания:
Настроить автоматизированный пайплайн тестирования с использованием GitHub Actions.
Обрабатывать только те проекты, которые изменились, избегая повторной установки зависимостей и пересборки образов.
Оптимизировать процесс сборки Docker, используя кэширование и инкрементальные сборки для уменьшения использования хранилища и времени сборки.
Управление Docker образами и контейнерами:
Использовать файлы docker-compose для развертывания сервисов.
Перезапускать только те сервисы, которые изменились, а не весь стек, обеспечивая минимальное время развертывания и низкое потребление ресурсов.
Переустанавливать зависимости только при их изменении, избегая повторной установки при каждом развертывании.
Требования к базе данных:
Миграция с MongoDB на PostgreSQL, обеспечение высокой доступности и поддержки транзакций.
Развернуть Redis для обеспечения конфиденциальности данных и поддержки базовых потребностей кэширования.
Оптимизация ресурсов и хранилища:
Автоматическая очистка устаревших Docker образов и контейнеров для уменьшения использования хранилища.
Повышение эффективности развертывания с помощью GitHub Actions и других инструментов автоматизации.
Цели:
Достичь инкрементальных сборок и развертываний, обеспечивая максимально быстрое время развертывания и минимальное потребление ресурсов.
Дата сдачи: 2 дня, максимум 3 дня.
Бюджет: 200 USD Срок: 5 дней
Здравствуйте, Jiangzhe,
Я внимательно изучил ваши подробные требования по оптимизации CI/CD-процесса для вашего Nx monorepo и миграции базы данных. У вас четкое видение эффективного и современного процесса развертывания.
Чтобы обеспечить высокое качество и надежность результата, лучше рассматривать это как два отдельных, важных проекта:
Оптимизация CI/CD-процесса
Миграция базы данных (MongoDB на PostgreSQL)
Выполнить оба эти проекта, особенно сложную миграцию базы данных, в профессиональном стандарте за 2-3 дня — не представляется возможным.
Поэтому я предлагаю сначала сосредоточиться на достижении вашей основной цели — оптимизации CI/CD. У меня есть обширный опыт работы с GitHub Actions и Docker в средах Nx monorepo.
Мой план по оптимизации CI/CD включает:
Реализацию
команд nx affected в вашем workflow GitHub Actions для тестирования и сборки только тех приложений, которые действительно изменились.
Оптимизацию ваших Dockerfile для использования многоступенчатых сборок и кэширования слоев, что значительно сократит время сборки и размеры образов.
Усовершенствование вашей
docker-compose для возможности повторного развертывания только измененных сервисов.
Добавление автоматизированного шага очистки для удаления старых Docker-образов и контейнеров, что сэкономит место на диске.
После успешной оптимизации вашего процесса развертывания я с радостью подготовлю отдельное, подробное предложение по миграции базы данных.
Оценка (только для оптимизации CI/CD):
Сроки: 5 дней
Цена: 750 долларов США
Этот поэтапный подход гарантирует немедленные, ощутимые улучшения в вашем жизненном цикле разработки. Я уверен, что смогу создать эффективный pipeline, который вы ищете.
Бюджет: 300 USD Срок: 2 дня
У меня есть опыт, и я могу реализовать оптимизацию развертывания.
Требуется разработать изолированный внутренний микросервис для генерации, валидации и отправки одноразовых кодов подтверждения (OTP) через различные каналы (SMS, Email, Telegram). Сервис будет использоваться основным приложением для подтверждения входа, смены пароля или подтверждения финансовых транзакций.Технологический стек Язык: TypeScript / Node.js Фреймворк: Fastify или Express База данных / Кэш: Redis (для хранения кодов с TTL) Инструменты: Библиотеки для работы с провайдерами (Twilio, SendGrid и т.д.)
Необходимо разработать собственный веб-сервис для автоматизации работы кофеен и небольших заведений общественного питания. По функциональности продукт должен быть похож на Poster POS, но с собственным дизайном, архитектурой и программным кодом. Копирование кода или интерфейса Poster не предполагается. Планируется создание полноценного коммерческого SaaS-продукта, которым в будущем смогут пользоваться различные кофейни по подписке.На первом этапе нужно разработать MVP Основной функционал: регистрация и авторизация владельца заведения; создание одного или нескольких заведений; управление сотрудниками и ролями; каталог товаров, категорий и модификаторов; добавление размеров, вкусов и дополнительных опций; кассовый интерфейс для оформления продаж; открытие и закрытие кассовой смены; разные способы оплаты; возврат и отмена заказов; учет остатков и списание товаров; базовый складской учет; история продаж; отчеты по выручке, товарам, сменам и сотрудникам; программа лояльности для клиентов; адаптивная работа на планшете, ноутбуке и смартфоне; административная панель владельца сервиса; тарифные планы и ограничения в соответствии с тарифом.В дальнейшем планируется мобильное приложение; интеграция с платежными терминалами; печать чеков; интеграция с фискальными сервисами; доставка и онлайн-заказы; бронирование столиков; расширенная аналитика; API для сторонних интеграций; интеграция с бухгалтерскими и CRM-системами.Важные требования система должна быть рассчитана на работу многих независимых заведений; данные каждого клиента должны быть изолированы; необходимо предусмотреть масштабирование продукта; нужна безопасная работа с финансовыми и персональными данными; код должен быть структурированным и пригодным для дальнейшего развития; нужна техническая документация; права на исходный код после оплаты передаются заказчику. Дизайн на данный момент отсутствует, поэтому нужно отдельно оценить UI/UX-дизайн или предложить готовое решение для MVP.В предложении укажите опыт создания SaaS, POS, CRM, ERP или учетных систем; примеры подобных работ; предложенный стек технологий; состав команды; ориентировочную стоимость MVP; срок разработки; что именно входит в предложенную стоимость; стоимость дальнейшей поддержки; готовы ли работать поэтапно с оплатой за каждый завершенный этап. Преимущество исполнителям или командам, которые уже разрабатывали кассовые, складские, ресторанные или многопользовательские SaaS-системы.
Технологический стек - React: Адаптивная и динамичная разработка фронтенда - Node.js: Надежные операции на бэкенде - Web3: Мультицепочная интеграция криптовалют - Solidity: Разработка смарт-контрактов Цель проекта Разработать комплексную мультицепочную платформу для стекинга для популярной игровой экосистемы, обеспечивающую бесшовные взаимодействия с криптовалютой, интеграцию NFT-рынка и улучшенный пользовательский опыт на нескольких совместимых с EVM блокчейн-сетях. Белая книга Мы больше, чем просто мобильная игровая студия; мы визионеры и новаторы в мире игр. Наша команда состоит из талантов мобильной игровой индустрии и увлеченных геймеров, и она стремится раздвинуть границы возможного в мобильных играх. Наш опыт сосредоточен на гибридизации жанров, чтобы создать нечто поистине уникальное, что мы адаптируем для перехода от игр Web2 к играм Web3. От гоночных RPG до стратегий в реальном времени, мы постоянно экспериментируем и смешиваем жанры, чтобы предложить новые игровые впечатления. Наши игры — это не просто форма развлечения; это погружающие путешествия, которые вовлекают, бросают вызов и захватывают наших игроков. Мы воплощаем нашу миссию не просто развлекать, но и переносить нашу аудиторию в необычную вселенную интерактивного мира в рамках игр Web3. - Разработка фронтенда - Разработка бэкенда - Редизайн целевой страницы - Мультицепочная интеграция - NFT-рынок - Тестирование и контроль качества - Развертывание и обслуживание
Сайт уже запущен и работает. Основная задача — разобраться в текущей структуре проекта, проверить качество реализации, исправить найденные технические проблемы и помочь с дальнейшими изменениями.Основной стек Next.js 15 React 19 TypeScript Tailwind CSS Zod Redux Toolkit В проекте также могут использоваться: Prisma JWT-авторизация Stripe Mailgun Google APIs Vercel или Netlify FunctionsОсновные задачи провести ревизию существующего проекта; оценить структуру и качество кода; исправлять ошибки и дорабатывать текущий функционал; улучшать серверный рендеринг и скорость загрузки страниц; проверять корректность отображения сайта на мобильных устройствах; работать с формами, административной частью и внешними интеграциями; вносить технические SEO-изменения; поддерживать и постепенно улучшать существующий сайт.Что для нас важно хороший опыт работы с Next.js, React и TypeScript; умение разбираться в чужом коде; понимание SSR и особенностей Next.js App Router; внимательность к производительности и качеству реализации; умение объяснять найденные проблемы и предлагать понятные решения; самостоятельность и аккуратная работа с действующим сайтом. На первом этапе необходимо ознакомиться с проектом, провести техническую ревизию и предложить список приоритетных изменений. После этого возможна постоянная работа над дальнейшим развитием сайта.
Необходимо разработать форму онлайн-записи для косметического салона и интегрировать ее в существующий сайт (лендинг). Сайт на стадии разработки (на HTML, CSS, JS). На сайте отсутствует собственная база данных (и не планируется), поэтому необходимо предложить бесплатное решение для хранения и управления данными, которое будет простым в администрировании и стабильным в работе. Необходимый функционал: подгрузка списка категорий услуг; подгрузка услуг в соответствии с выбранной категорией; подгрузка списка мастеров, которые выполняют выбранную услугу; отображение доступных дат и свободного времени в соответствии с графиком работы мастера; создание записи с автоматическим блокированием выбранного времени; защита от двойного бронирования. Данные в форме: имя; номер телефона; категория услуг; услуга; мастер; дата; время; комментарий (необязательно). Администрирование: Должна быть возможность: добавлять и редактировать категории услуг; добавлять и редактировать услуги; добавлять и редактировать мастеров; настраивать график работы каждого мастера; управлять выходными, отпусками и другими периодами недоступности; просматривать, редактировать и отменять записи клиентов. Прошу указать: какое решение предлагаете для хранения данных; ориентировочную стоимость; срок выполнения. Дизайн не важен, главное функционал. Человек, который делает верстку сайта, сам оформит ее в нужном дизайне.