К содержимому
firstpaint

услуги / доработка сайта · Laravel, Node.js, Python

Доработка сайта: новое добавлю, старое не сломаю.

Частный программист для сайта, который уже работает: исправить ошибку, добавить функцию, ускорить медленные страницы, подключить CRM или ИИ. Почасово или проектом, код в вашем репозитории, на свои правки даю гарантию.

от 35 000 руб. · оценка по брифу бесплатно

Знакомо?

Прежний разработчик пропал

Сайт работает, но никто не знает как. Любая правка — риск, поэтому задачи копятся месяцами.

Мелкие задачи никто не берёт

Нужен программист для сайта на пару дней, но студиям такой заказ неинтересен, а фрилансер без опыта в вашем стеке чинит одно и ломает другое.

Сайт стал медленным

Каталог, личный кабинет и админка долго грузятся — секундами. Сервер поменяли на мощнее — быстрее не стало.

Что делаю

От исправления ошибки до новой подсистемы.

Техническая доработка сайта на PHP (Laravel), JavaScript и TypeScript (Node.js, Vue), Python и PocketBase. WordPress, Битрикс и 1С не беру.

исправления
Ошибки 500, сломанные формы и оплаты, падающие cron-задачи, проблемы после обновления PHP или пакетов.
новый функционал
Личные кабинеты, админки, фильтры и поиск, REST API, платежи (ЮKassa, CloudPayments, Robokassa), авторизация через VK ID и Яндекс ID, очереди, парсеры.
ускорение
Ускорение загрузки сайта — профилирование, N+1, индексы Postgres и MySQL, кэш, очереди. Замеры до и после — в миллисекундах.
интеграции
amoCRM и Bitrix24 через API, Telegram и MAX для уведомлений, службы доставки, SMS, почта, Google Таблицы.
ИИ
GPT, Claude или YandexGPT на сайте, чат-бот по вашей базе знаний, ИИ-помощник в админке, распознавание документов.
порядок в коде
Обновление Laravel и PHP, рефакторинг, тесты на критичные места, деплой и CI/CD.

Как работаю

Как дорабатываю чужой сайт и ничего не ломаю

Большая часть заказов — код, который писал другой человек. Риск в таких проектах не в сложности задачи, а в том, что неизвестно, что ещё завязано на правимое место. Поэтому порядок работы всегда один.

Сначала читаю проект

Разворачиваю сайт локально или на стейджинге, смотрю структуру, зависимости, версии PHP и фреймворка, cron-задачи и очереди. Если есть места, которые опасно трогать, — например, расчёт цены или обмен с внешней системой без тестов, — говорю об этом до начала работы, а не после.

Правка — отдельный коммит

Каждое изменение — отдельный коммит или пул-реквест в вашем репозитории с описанием, что и зачем сделано. Если репозитория нет и код лежит только на хостинге, сначала заводим его: без истории изменений откатить неудачную правку нечем.

Проверка до выкладки

Изменения проверяю на копии сайта, а не на боевом. Миграции базы — на копии данных: на больших таблицах важно, чтобы добавление колонки или индекса не остановило сайт на несколько минут.

Выкладка и гарантия

Выкладываю сам или передаю вашей команде с инструкцией. Если в моей правке найдётся ошибка, исправляю бесплатно — это и есть гарантия. Чужие ошибки, найденные по дороге, записываю в список и оцениваю отдельно.

Ускорение сайта

Почему тормозит сайт на Laravel

Ускорение работы сайта — частый повод для доработки. Причин обычно две-три из шести, поэтому сначала замер, потом правки.

N+1 — сотни запросов вместо нескольких

Список из 50 товаров делает один запрос за товарами и ещё по запросу на категорию, бренд и картинки каждого — 150 с лишним запросов вместо четырёх. Лечится жадной загрузкой через with() и load(), а Model::preventLazyLoading() в локальном окружении не даёт проблеме вернуться с новым кодом.

Нет индексов под реальные запросы

Фильтр по статусу и дате, сортировка по created_at, поиск по внешнему ключу: на десяти тысячах строк это миллисекунды, на миллионе — секунды. Беру медленные запросы из лога, смотрю план через EXPLAIN и добавляю составные индексы. В Postgres внешний ключ сам по себе индекс не создаёт, в отличие от MySQL, — после переезда базы связи вдруг начинают тормозить.

Из базы читается больше, чем нужно

  • select * с тяжёлыми text- и JSON-колонками там, где нужны три поля.
  • all() и get() вместо пагинации или chunk() на больших таблицах.
  • ->get()->count() вместо count() — вся таблица в память ради одного числа.
  • Аксессоры и $appends, которые на каждой модели делают свой запрос.

Тяжёлая работа выполняется, пока пользователь ждёт

Письма, PDF, ресайз картинок, запросы к внешним API прямо в контроллере. Переношу их в очереди на Redis с Horizon: ответ уходит сразу, работа идёт в фоне, упавшие задачи видны и перезапускаются.

Не настроено окружение

Выключен OPcache, не выполнен php artisan optimize, сессии и кэш лежат в файлах, а воркеров PHP-FPM меньше, чем одновременных запросов. Проверяется за час и нередко даёт заметный прирост без единой правки в коде.

Тормозит не бэкенд, а фронт

Сервер отвечает за 100 мс, а страница грузится пять секунд: картинки по несколько мегабайт, блокирующие скрипты, бандл без разделения. Тогда смотрю Lighthouse и сборку Vite и говорю об этом прямо — оптимизировать невиноватый бэкенд бессмысленно.

Как это идёт

  1. 5 мин

    Задача

    Своими словами в брифе или в чате. ТЗ не обязательно — уточняющие вопросы задам сам.

  2. 1 день

    Оценка

    Смотрю код и окружение, называю срок и стоимость. Оценка бесплатная.

  3. от 1 дня

    Работа

    Правки отдельными коммитами в вашем репозитории, проверка на копии сайта.

  4. после сдачи

    Передача

    Выкладка, описание изменений, гарантия на свои правки.

Цены

Сколько стоит доработка сайта

Оценка бесплатная и до начала работы. Если задача оказалась больше оценки, останавливаюсь и согласую, а не выставляю счёт задним числом.

почасово

от 2 000 руб./час

Мелкие и неясные задачи.

  • ·Оценка в часах до начала
  • ·Отчёт, что сделано и сколько ушло
  • ·Гарантия на свои правки

проект

от 35 000 руб.

Новый раздел, интеграция, ускорение.

  • ·Фиксированная цена и срок
  • ·Оплата по этапам
  • ·Правки отдельными коммитами
  • ·Проверка на копии сайта

поддержка

от 12 000 руб.

В месяц, если задачи идут постоянно.

  • ·Пакет часов каждый месяц
  • ·Мониторинг и бэкапы
  • ·Время реакции по договору
Техподдержка →

Условия

Услуги программиста: почасово или проектом

Формат зависит от задачи, а не от моего удобства. Оба варианта — с оценкой заранее и отчётом по факту.

Программист на час

Для мелких и неясных задач: поправить форму, доработать страницу сайта, разобраться, почему не приходят письма, обновить пакет. Называю оценку в часах до начала, в конце присылаю, что сделано и сколько времени ушло. Если задача оказалась больше оценки, останавливаюсь и согласую, а не выставляю счёт задним числом.

Проект с фиксированной ценой

Для понятного объёма: доработка функционала, новый раздел, интеграция, ускорение каталога. Цена и срок фиксируются после оценки, оплата частями по этапам.

Постоянная поддержка

Если задачи идут каждый месяц, выгоднее техподдержка с пакетом часов, мониторингом и временем реакции по договору.

От чего зависит цена

  • насколько код документирован и покрыт тестами;
  • есть ли стейджинг и копия данных или их нужно подготовить;
  • старая версия PHP или фреймворка, которая мешает обновить пакеты;
  • сколько внешних систем затрагивает правка.

Отзывы

Что говорят заказчики.

С Kwork, имена заказчиков не публикую.

Третий проект с Олегом. Идеально. Вовремя и всё по делу.
Доработки сайта на Laravel
Олег профессионально выполнил поставленную задачу. Коммуникация быстрая и по делу. Где нужно, Олег предлагает свои идеи, которые так же быстро реализуются.
Перенос фронтенда с Vue на Laravel Blade

Вопросы

Вопросы о доработке сайта

Сколько стоит доработка сайта?+

Цена «от» указана в начале страницы, она покрывает несколько небольших правок на одном сайте. Точную стоимость называю после того, как посмотрю код, — оценка бесплатная.

Возьмётесь за чужой код?+

Да, это основная часть таких заказов. Сначала читаю проект и говорю, что в нём рискованно трогать, — до того, как начну что-то менять.

Почему не WordPress, Битрикс и 1С?+

Это отдельная экспертиза со своей экосистемой. Лучше честно отказаться, чем делать хуже профильного специалиста.

Нужен программист срочно — как быстро начнёте?+

Оценку даю в течение рабочего дня, срочную доработку беру в работу в тот же день, если она в моём стеке. Если сайт упал, отдаёт ошибку 502 или его взломали — это срочный ремонт, он описан на странице техподдержки.

Нужно ли ТЗ на доработку сайта?+

Нет. Опишите задачу своими словами — уточняющие вопросы задам сам, а в оценке перечислю, что именно будет сделано. Этот список и станет техническим заданием.

Дорабатываете интернет-магазины?+

Да, если магазин на Laravel, PHP, Node.js или Python: каталог и фильтры, корзина, оплата, доставка, личный кабинет покупателя. Магазины на WordPress и Битриксе не беру.

Насколько станет быстрее после ускорения?+

Зависит от того, что найдётся. Типичный итог — ключевые страницы в 3–10 раз быстрее на том же сервере, но это наблюдение, а не гарантия: точные цифры будут после профилирования.

Какие доступы нужны?+

Репозиторий обязательно, сервер — если правки касаются выкладки или окружения. Для интеграций понадобятся ключи внешних сервисов.

Заключаете договор на доработку сайта?+

Да, с ИП и компаниями — по договору с закрывающими документами.

Зачем нанимать частного программиста, а не студию?+

Задачу оценивает и делает один и тот же человек — без менеджера посередине и пересказа требований. Для студии доработка на пару дней — невыгодный заказ, для меня — обычная работа. Минус тоже есть: я один, поэтому большой проект с жёстким сроком беру, только если он помещается в мой график.

Опишите, что нужно поправить.

Оценю бесплатно в течение рабочего дня.

Заполнить бриф →