Инженерная студия
Держим систему на ходу, пока чиним её.
Обычно предлагают либо снести и построить заново, либо закрыть одну задачу и уйти. Мы входим в действующую систему с историей и наводим порядок, ничего не останавливая.
0 критических дефектов у покупателя за год работы на живом каталоге
Первый шаг
IT-аудит за две недели.
Карта ваших систем: сайт, интеграции, 1С, домены, договоры. Список критичного и план — что укрепить, что заменить, что оставить в покое.
90 000 ₽ · фиксированно
Результат — план, который можно исполнять с нами или без нас.
Что берём
Четыре области, в которых мы отвечаем за результат
- Внешний веб-департамент — релизы, интеграции, контент, безопасность. Задачи можно ставить бизнес-языком. «сайт лёг», «выкатить новый раздел», «закрыть дыры после проверки»
- E-commerce — WooCommerce, headless-фронт на Next.js, каталоги на тысячи SKU, синхронизация с 1С. «фильтры не находят товар», «остатки расходятся с 1С», «нужен каталог на 5 000 позиций»
- AI-инженерия — обработка каталогов, контроль качества данных, автоматизация рутины в продажах и поддержке. «проверить 30 000 карточек на брак», «разобрать прайс поставщика», «автоответы поддержке»
- Martech — аналитика, CRM, товарные фиды, рассылки. «свести рекламу с реальными продажами», «фид для маркетплейса», «письма по брошенной корзине»
Не нашли свою задачу? Скорее всего, мы её всё равно возьмём — спросите.
Как работаем
Порядок держится на проверках, а не на обещаниях
Качество проверяет система
Красный результат не пускает выкладку
Перед каждым релизом автоматика проходит по каталогу, текстам и данным. Ночью тот же обход идёт по проду — если за день что-то разъехалось, мы узнаём раньше покупателя.
Бережны к живым системам
Бэкап до изменения, откат в любой момент
Магазин с историей, где нет стейджинга, а продажи идут прямо сейчас, — привычная среда. Конфиг проверяем до перезапуска, тяжёлое переносим на ночь.
Отчёты, по которым можно действовать
859 товаров сверили — отдали 324 позиции списком
Не «нашли расхождения в каталоге», а перечень артикулов с прямыми ссылками в админку. С ним можно сесть и работать в тот же день.
Свободны в инфраструктуре
Любой Linux, доступы остаются у вас
Подберём и настроим VDS под задачу или аккуратно встанем на ваш сервер. Ставим свой мониторинг — видно, что происходит с сайтом.
Форматы и цены
Цена известна до старта
Объём и цену фиксируем до начала работ. Оплата по счёту от ИП, безнал; закрывающие — акт или УПД через Диадок. Если задача в формат не помещается — скажем это на разборе, а не в счёте.
Быстрая задача
5 000 – 30 000 ₽ · фикс
1–3 дня
Точечная работа с проверяемым результатом: починить фильтр или оплату, собрать лендинг на нашей теме, разобрать поломку после обновления. Цену называем после пятнадцатиминутного разбора, до старта.
Сайт есть, болит конкретное место
Спринт
40 000 – 150 000 ₽ · фикс
1–2 недели
Понятный объём одним заходом: пакет доработок, новый раздел, миграция, интеграция с 1С, Telegram-бот. Список работ фиксируем заказом на спринт, закрываем актом по факту.
Задач накопилось на список, нужен результат к дате
Витрина под ключ
190 000 ₽ · фикс
2 недели
Новый магазин, готовый принимать заказы: тема с тремя цветовыми пресетами, каталог до 50 позиций по нашему шаблону, платёжный провайдер, доставка по зонам, деплой и рунбук передачи.
Локальный бренд одежды, обуви, аксессуаров — первый магазин
Проект
от 200 000 ₽ · по смете
от месяца
Всё, что больше спринта: полный цифровой контур, каталог на тысячи позиций, синхронизация с 1С, переезд действующего магазина без остановки продаж. Вход — IT-аудит: его план исполним мы или любой другой подрядчик.
Действующий бизнес с историей и оборотом
Студиям и агентствам. Берём перелив: WordPress, WooCommerce, Next.js, вёрстка, интеграции. Фикс-цена и срок до старта, белый лейбл, счёт от ИП, статус одной строкой каждый день. Обсудить подряд
Кейс · дилер премиальной сантехники
Каталог, за который спокойно
Что было
Действующий магазин премиальной сантехники: WooCommerce и фронт на Next.js, около 3 200 активных товаров, продакшн без стейджинга. Годы импортов из разных прайсов превратили атрибут «цвет» в 3 152 уникальных значения — при реальной палитре бренда меньше сотни. Фильтр по цвету был бесполезен: покупатель выбирал из простыни почти одинаковых строк.
Что сделали
Свели цвета к 71 канону и перепривязали к ним вариации товаров. Поставили ограничитель на импорт, чтобы следующий прайс не завёл мусор заново. Обогатили семь категорий характеристиками производителя и собрали фильтры, которыми можно пользоваться. Всё — на живом сайте, продажи при этом шли.
Что получилось
Фильтры стали рабочим инструментом выбора, а не декорацией. С этого проекта выросли QA-ворота, которые теперь стоят на каждом нашем релизе.
Кейс · мебельная фабрика
Магазин, который падал каждый час
Что было
Лето 2025-го. Магазин мебельной фабрики — больше 1 700 товаров — задыхался: load average держался в районе 30–38, из 15 ГБ памяти занято 11, шестьдесят семь процессов PHP по четверти гигабайта каждый, сотня запросов к базе на страницу, админка открывалась четырнадцать секунд. Внешний замер был безжалостен: из 25 проверенных адресов открывались 36 %, карточки товаров — ни одна.
Что сделали
Пустили на сервер AI-агента по SSH — под жёсткими ограничениями: бэкап перед каждым изменением, проверка конфига до перезапуска, автооткат при неудаче, полный журнал правок. Права зависели от обстановки: в рабочие часы только чтение и мягкие перезагрузки, тяжёлое — ночью, а при высокой нагрузке автоматика сама поджимала лимиты. Дальше — рутина: перенастроили PHP-FPM и OPCache, вычистили полуторагигабайтный лог отладки, разобрались с 2 743 медленными скриптами, прогрели кэш. Заодно выяснилось, что фаервол забанил три сотни адресов без причины, включая поискового робота Bing, — разбанили.
Что получилось
Сервер перестал быть чёрным ящиком: десять экспортёров метрик закрыли около 85 % критичных показателей, семь дашбордов показывают нагрузку, кэш, атаки и баны. Мониторинг мы потом вынесли в отдельный продукт и ставим другим клиентам, а серверы этого — до сих пор на нашей панели.
Кейс · сеть брендов в трёх странах
Три бренда на одном движке
Что было
Представительство европейских интерьерных фабрик работает сразу в нескольких регионах, и в каждом — под своим именем и на своём языке. Восточная Европа, Кавказ и Средняя Азия; три десятка стран Африки; отдельно Россия. Делать три независимых сайта — это три независимые поддержки и три разные судьбы у одной и той же правки.
Что сделали
Собрали один движок и три витрины на нём. Общее — фабрики, каталоги, видео, дилеры, контакты: то, что устроено одинаково везде. Своё — бренд, язык, подбор фабрик и региональная витрина. Новый регион заводится как ещё один бренд, а не как ещё один проект с нуля.
Что получилось
Улучшение, сделанное для одного бренда, достаётся всем сразу — и поддержка не множится на число рынков.
Что стоит между правкой и покупателем
Ворота, которые не пускают релиз
Перед каждой выкладкой проходит один и тот же набор проверок. Красный результат — выкладки не будет. Ночью тот же обход идёт по продакшену, уже без нас.
- blocker
pages_reachableпубличные страницы отвечают кодом меньше 400 ok - blocker
no_forbidden_stringsна страницах нет заглушек и служебного текста ok - warn
no_broken_imagesбитых картинок нет ok - warn
series_ru_title_latinназвания серий по-русски, а не голой латиницей ok - warn
sitemap_oksitemap.xml на месте и не пустой ok - info
imgproxy_webpкартинки отдаются в WebP, когда браузер готов ok
Ночной обход продакшена, последние прогоны
[25.07 00:19] RED — blockers=1
[26.07 11:04] GREEN — blockers=0
[26.07 11:13] RED — blockers=1
[27.07 02:11] GREEN — blockers=0
[27.07 02:24] COULD NOT VERIFY — движок проверок устарел,
меру доверять нельзя до обновления
Красные строки и есть работа. Последняя — случай, когда система отказалась заверять сама себя вместо того, чтобы выдать зелёный.
Вопросы, которые нам задают
Возьмёте сайт, который делали не вы?
Да, это наша привычная среда. Входим в существующий код, разбираемся в истории и двигаем дальше — переписывать всё с нуля обычно не требуется.
У нас нет стейджинга — как вы будете что-то менять?
Это наш обычный случай. Правку готовим локально на копии, перед выкладкой прогоняем проверки, делаем бэкап до изменения и держим готовый откат. Тяжёлое переносим на ночь, когда трафика почти нет.
Кто именно будет работать — команда или один человек?
С вами говорит и работает инженер, который разобрался в вашей системе, — без передачи задачи между людьми и без потери контекста. Часть рутины закрывает автоматика, но отвечает за результат человек.
Мы уже начали с другим подрядчиком и застряли. Возьмётесь?
Да, это частая история. Начинаем с того, что разбираемся, где стоит работа: иногда достаточно доделать начатое, иногда честнее переписать один узел. Что увидим, то и скажем, даже если вывод вам не понравится.
Когда будет виден первый результат?
Первый шаг всегда небольшой и с проверяемым результатом — обычно это недели, а не месяцы. Аудит занимает две недели и заканчивается планом, по которому можно действовать сразу.
Работаете с 1С?
Да: синхронизация каталогов, остатков и цен между 1С и сайтом — одна из типовых задач. Наводим порядок и в уже существующих интеграциях.
Берёте субподряд от студий?
Да: WordPress, WooCommerce, Next.js, вёрстка, интеграции. Белый лейбл — для вашего клиента работает ваша команда. Фикс-цена до старта, счёт от ИП, ежедневный статус одной строкой.
Как устроена оплата?
Счёт от ИП, безнал, без НДС. Быстрые задачи — по предоплате, спринты и проекты — поэтапно. Закрывающие — акт или УПД, документооборот через Диадок.
Пишем на TypeScript, работаем с WordPress и Next.js, разворачиваемся на любом Linux. Три работающих проекта и ночной обход продакшена — на этой странице.
Обсудить запрос
Расскажите о своём деле пару абзацев: что за бизнес, что хочется улучшить, что уже пробовали. Ответим в течение рабочего дня — скажем, что думаем, и предложим первый шаг.
или пришлите ТЗ и референсы в Telegram-бот — файлы дойдут до инженера, отвечает живой человек