В 2013 году мне казалось, что я отлично зарабатываю. Я уже около года фрилансил и получал что‑то порядка 100–120 тысяч рублей в месяц. Для того времени — очень неплохо.

В голове математика была простая: аренда квартиры — около 25к, еда — около 15к. Значит, живу примерно на 40–50к, а всё остальное — свободные деньги. Поэтому покупка машины в кредит казалась нормальной идеей. Проблема была только в том, что я считал очень оптимистично.

Я не учёл платную заочку. Не учёл лечение зубов, на которое как раз попал. И, конечно, не учёл, что машина — это не только ежемесячный платёж. Это ещё ОСАГО, ТО, постановка на учёт, бензин, резина и десятки мелких расходов, которые почему‑то не спрашивают, есть ли они в твоей финансовой модели.

А кредит под ~30% годовых довольно быстро превращает: «машину за 530 тысяч» в «миллион, который ты будешь выплачивать сильно дольше, чем планировал».

Тогда я впервые понял, что: «много зарабатывать» и «понимать свои деньги» — вообще не одно и то же.


Как Google Sheets превратилась в систему принятия решений

Сначала это была обычная Google‑таблица. Потом в ней появился план/факт, прогноз по месяцам, обязательные траты, сценарии крупных покупок и понимание кассовых разрывов.

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

Со временем таблица перестала быть «табличкой с расходами». Она постепенно превратилась в систему принятия решений: можно ли брать кредит, насколько быстро получится его закрыть, не развалится ли баланс через несколько месяцев после крупной покупки и сколько денег реально останется к концу года.

Но в какой‑то момент меня начала раздражать сама таблица. Любая новая категория — это правка формул. Любая реорганизация — риск случайно сломать суммаризацию.

А ошибку можно заметить сильно позже, когда в прогнозе внезапно появляется кассовый разрыв, которого «не должно было быть». И вот тут я решил: «Ладно. Сейчас AI всё быстро накодит».


И самое неприятное — интернет не врал

На тот момент я использовал Codex 5.2, GPT и spec‑kit. И первая версия действительно собралась за пару вечеров.

Она повторяла логику таблицы, убирала боль с формулами, выглядела как настоящее приложение и действительно работала.

Правда, всё это работало только локально, на одном устройстве и с хранением данных прямо в браузере. Но после Google Sheets это всё равно ощущалось как магия.

Я тогда реально стал тем человеком из AI‑постов: «LLM меняют разработку». Потому что на этапе демки — они действительно её меняют. И вот это, как мне кажется, главный источник сегодняшнего AI‑вайбкодинга.

Проблема в том, что между: «смотрите, оно работает» и «этим можно нормально пользоваться каждый день» находится огромная инженерная пропасть.


Local‑first оказался не фичей, а архитектурной проблемой

Изначально всё было просто: данные лежат локально в IndexedDB. Когда появился backend, самый очевидный путь был — переписать всё на server‑first. Но UX сразу становился хуже.

Финансовое приложение должно позволять быстро записать расход даже когда сеть плохая или backend лежит. Поэтому local‑first слой пришлось оставить.

В итоге получился гибрид: UI работает из IndexedDB, изменения складываются в outbox, sync worker отправляет typed mutations на backend, а backend валидирует изменения и возвращает server version.

И вот тут начинаются вещи, которых не видно в демке: конфликты изменений, версии сущностей, курсоры синхронизации, идемпотентность запросов, shared‑доступ к бюджетам и постоянная борьба с рассинхронизацией кэша.


В какой‑то момент внезапно появляются законы

И это был момент, когда пет‑проект внезапно начал превращаться в настоящий продукт. Потому что выяснилось, что я храню уже не просто «какие‑то JSON'ы».

У меня появился логин через Yandex ID, пользовательские профили, история операций, категории, бюджеты и данные, которые вполне можно связать с конкретным человеком.

И вот тут внезапно приходит неприятное осознание: «кажется, это уже персональные данные». Я изначально вообще не воспринимал приложение как что‑то, попадающее в эту область.

Казалось: «ну это же не банк и не госуслуги». Но по факту даже связка логина через Yandex ID, пользовательского профиля, истории действий, cookie, session‑данных и auth‑токенов уже начинает попадать в область вполне реальных требований законодательства.

И это очень меняет мышление. Потому что дальше ты начинаешь думать уже не только про фичи. А про удаление аккаунта, отзыв сессий, хранение токенов, права доступа, последствия утечки и восстановление доступа.

И это уже совсем другой тип задач. Потому что демка — это: «смотрите, приложение работает». Production — это: «что будет, если что‑то пойдёт не так?»


Самое опасное в LLM — они очень убедительно генерируют техдолг

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

Самый показательный пример был с мобильной версией. В какой‑то момент AI начал решать все задачи одинаково: «дописать ещё немного в тот же компонент». Так один из mobile screen‑контейнеров вырос до 10 537 строк. Внутри одновременно жили страницы, формы, фильтры, авторизация, синхронизация, финансовые расчёты и AI‑заглушки. UI при этом продолжал выглядеть нормально. Цена обнаружилась позже.

Любой визуальный фикс внезапно рисковал задеть бизнес‑логику, расчёты, синхронизацию или состояние экрана. В итоге пришлось выносить мобильные компоненты, разделять view‑model, отделять UI от расчётов и добавлять golden tests.

И это был очень показательный момент. Потому что интерфейс ещё выглядел «нормально». А архитектура уже несколько тысяч строк как перестала быть поддерживаемой.


Production‑боль часто вообще не в коде

Часть проблем внезапно оказалась вообще не в приложении.

Например — Docker images. CI при каждом merge в main собирал и пушил API, migrations, frontend, backup job и backup‑check job. Сначала migration image был собран максимально «удобным способом» — вместе с Go toolchain. Он работал.

Но потом оказалось, что:

  • registry начинает быстро расти;

  • vulnerability scanning становится дорогим;

  • VM забивается Docker cache;

  • deploy начинает тормозить.

В итоге migration image пришлось отдельно ужимать: только runtime, только migration binary, только SQL и ничего лишнего. И это очень хорошо описывает разницу между: «LLM помогла собрать» и «production теперь нужно эксплуатировать годами».


Самая большая ошибка — начать полностью доверять модели

Первые успешные результаты очень быстро создают иллюзию контроля. Кажется: «ну всё, теперь AI реально пишет почти production‑ready код». А потом модель начинает уверенно утаскивать архитектуру в сторону. Самая неприятная часть: чтобы получить хороший технический результат, недостаточно просто написать: «сделай красиво».

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

Иначе модель начинает очень уверенно предлагать решения, которые выглядят правдоподобно, но разваливаются на реальных сценариях. В какой‑то момент работа с LLM начала ощущаться не как: «AI пишет проект за меня». Скорее как управление очень быстрым разработчиком, которому постоянно нужен review.


AI внутри AI‑продукта оказался отдельной инженерной задачей

Самое ироничное: добавить AI в приложение оказалось неожиданно сложно. Я думал: «Сейчас скормлю модели финансовые данные — и она начнёт давать полезные советы». На практике сначала получались рекомендации уровня: «Постарайтесь меньше тратить». В какой‑то момент стало понятно, что AI‑слой — это вообще не: «отправим текст в модель».

Сначала backend должен посчитать агрегаты, собрать предсказуемый контекст, определить кассовые разрывы, отделить обязательные траты от разовых, ограничить горизонт прогноза, убрать слабые сигналы и только потом отдавать что‑то модели.

Потому что «умный AI‑ассистент» без надёжного и проверенного источника данных очень быстро превращается в генератор уверенной финансовой ерунды.


AI меняет не только скорость. Он меняет ритм разработки

Самое забавное — проект не разрабатывался «полгода каждый день».

Если посмотреть на график коммитов, видно скорее серию коротких интенсивных спринтов с большими паузами между ними.

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

Production — это уже:

  • ограничения;

  • инварианты;

  • поддерживаемость;

  • UX;

  • sync;

  • rollback;

  • эксплуатация;

  • последствия архитектурных решений.

И именно здесь исчезает магия: «сделал SaaS за вечер».


И, кажется, AI делает разницу между инженерами только заметнее

Наверное, самое интересное изменение я начал замечать даже не в коде, а в людях. Я работаю техруком, и последнее время всё чаще думаю: «а как вообще теперь калибровать инженеров в эпоху LLM?»

Потому что объём выдачи действительно вырос. То, что раньше делалось неделю, сейчас местами собирается за день. Но парадокс в том, что критерии сильного инженера почти не изменились.

LLM очень хорошо ускоряют реализацию. Но они почти не помогают с инженерными компромиссами, эксплуатацией, отладкой и пониманием последствий архитектурных решений. И, кажется, именно поэтому AI пока не «обнуляет» опыт и экспертизу. Скорее наоборот — делает разницу между уровнями заметнее.


Что я в итоге понял

Сейчас мне даже немного смешно, насколько похожими оказались финансы и AI‑разработка. В обоих случаях главные проблемы начинаются сильно позже первого успешного результата.

Покупка машины казалась простой ровно до момента, когда появились: страховка, обслуживание, бензин, кредит, непредвиденные расходы. С AI примерно то же самое. Демка собирается быстро. Настоящая стоимость появляется позже: sync, rollback, техдолг, поддержка, production, последствия быстрых решений.

AI действительно радикально ускоряет старт разработки. Но демо и production — это всё ещё две разные вселенные. Хайповые истории не совсем врут. Сделать SaaS за вечер — реально. Просто между: «смотрите, оно работает» и «этим можно пользоваться каждый день» обычно находится ещё несколько месяцев инженерной работы.

И это именно та часть разработки, которую AI пока не отменил. Собственно, результат этого эксперимента можно посмотреть здесь: financehelperai.ru

Будет интересно почитать в комментариях, где у вас лично заканчивался «вайбкодинг» и начинался настоящий production.

Комментарии (18)


  1. poige
    21.05.2026 13:03

    да невозможно читать нейрослопень этот

    Production начинается там, где заканчивается вайбкодинг

    — осталось сделать подобный же вывод про тексты для людей.


    1. jouilk23
      21.05.2026 13:03

      Зато автор отлично освоил промпт-инжиниринг для написания статей на Хабр..)


  1. Bartlby182
    21.05.2026 13:03

    Сначала backend должен посчитать агрегаты, собрать предсказуемый контекст, определить кассовые разрывы, отделить обязательные траты от разовых, ограничить горизонт прогноза, убрать слабые сигналы и только потом отдавать что‑то модели.

    лайк, реально мало кто понимает, что с качеством данных и потом последовательностью промтов надо запариваться, и что это не быстро

    обязательно попробую продукт!


  1. FainFortRana
    21.05.2026 13:03

    Ну вот я сижу на нейрослоповом SAS который был сделан за 10 дней , он как бы "ready" , но перед этим еще минимум недели 2 тестирования в продакшн окружении и доработки всего того что сломается , плюс надо бы отрефакторить половину проекта , из за PhD level решений которые приняла нейросеть во время разработки . Поэтому соглашусь с утверждением что ИИ может сделать проект за неделю , при нормальном ТЗ и подписки за 200 долларов даже за 2 дня. Но никто не дает гарантий что оно продакшн ready или даже хотя бы работает как надо .


    1. venzeles Автор
      21.05.2026 13:03

      Замечаю, что за крупняками по типу OpenAI и Anthropic уже не угнаться)) порой кажется что делая какой то свой инструмент для разработки, они быстрее выкатят набор фичей, с помощью которого “твой тот самый инструмент” либо будет бесполезен, либо - к примеру если твой проект под опенсорс модели, закодится сильно проще чем сейчас)) Но я не сдаюсь) Радует что сейчас сильно проще можно описывать ТЗ, чем пол годом ранее. Ты какими моделями пользуешься?


      1. FainFortRana
        21.05.2026 13:03

        2 подписки , cursor , antropic . В первой что дают на авто , второй sonnet 4.6 . По ощущениям ничего умнее 4.6 пока нету , хотя я не пользовался новыми моделями типо Kimi 3.5 или Deepseek V4. Их активно хвалят .


        1. venzeles Автор
          21.05.2026 13:03

          я видел несколько статей по сравниванию моделей, но убедился что результат у каждого может быть иной) это как в рулетку крутить - в моменте повезло и у тебя умный AI агент который с тобой на одной волне, вот ты уходишь поспать, а с утра уже какой то неопытный сотрудник, который даже не хочет напрячься чтобы понять твои потребности)

          поэтому делаю свой инструмент, в котором одна и таже задача пройдется по определенному флоу на разных моделях, позже напишу статью про это


    1. jouilk23
      21.05.2026 13:03

      Если проект можно отрефакторить за пару недель, это еще не настоящий техдолг. Настоящий техдолг это когда ты боишься трогать код, потому что не знаешь, как он работает)


      1. FainFortRana
        21.05.2026 13:03

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


      1. venzeles Автор
        21.05.2026 13:03

        Глаза боятся, а Claude / Codex - делает))


  1. Alexander_Sansey
    21.05.2026 13:03

    Согласен с автором.

    Уже пол года занимаюсь своим проектом. Не таким ответственным как финансы, но тоже полезным.

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

    На самом деле если посчитать в совокупности, сколько я потратил на него, это около 3-4 месяцев и до почти всех вещей которые описываются в статье я тоже дошёл совсем недавно. Сам я системотех и программирование для меня это темный лес, был и во многом остаётся.

    Тех.долг, синхронизация и ограничения платформ, безопасность и возможная утечка, изменение данных злоумышленником. Всё это начинаешь понимать когда что-то идёт не так.

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


    1. venzeles Автор
      21.05.2026 13:03

      А чем пользуешься? в плане инструментов Я начинал с использованием spec-kit, но когда финального видения продукта нет - то это превращается в большую рутину, поэтому вся мобилка была написана уже без spec-kit’a. Хотя инструмент достаточно интересный, я на основе него делаю свой инструмент в который закидываешь идею, потом получаешь набор документаций как в вотрефоле, а потом уже итеративная разработка - на всех шагах можно отправить на доработку. Попозже напишу статью про свой инструмент, в нем можно много разных моделей подключать, я как раз провожу эксперимент “какова разница в моделях, если документация и дизайн хорошо подготовлены”.


      1. Alexander_Sansey
        21.05.2026 13:03

        У меня Antigravity и Pro аккаунт. Иногда пользую Windsurf, Trae, Cursor и прочее.
        Начинал вообще просто через чат. Набросал небольшой прототип в LS работающий. А потом решил расширить, чтобы и пользователи могли использовать его. Тогда пришлось искать решение и нашёл Supabase, миграция была не из лёгких. На самом деле до сих пор борюсь с кешем.
        Мне удобнее именно так использовать, хотя насколько я понимаю зоопарк методов вайбкодинга довольно широк.


  1. lem89
    21.05.2026 13:03

    Мне очень понравилось как реализовал перенос учёта из таблички в UI.

    Я свою реализацию (как пет проект) как тока не переписывал и мне казалось, что в excel быстрее и удобнее)


    1. venzeles Автор
      21.05.2026 13:03

      Эксель для многих был очень сложным)) а после публикации десктоп версии - друзья сказали “вот была бы мобильная версия и совместный бюджет”. Для меня было очень сложно положить такую таблицу в мобильный интерфейс - Figma Make очень выручила, на удивление, с первого раза предложила мне очень удобвный вариант главной страницы, а вот остальные страницы пришлось уже самому делать))) не получил ожидаемого от фигмы. Частично GPT Image 2 тоже нагенерила интересного - вышло комфортнее по токенам, но не так удобно строить продолжение интерфейса как в фигме, думаю что OpenAI скоро дотянет до фигмы свой функционал.


  1. pthfdr
    21.05.2026 13:03

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


    1. venzeles Автор
      21.05.2026 13:03

      а сколько времени у тебя уже прошло с момента отказа от моделей? просто сейчас почти каждую неделю апдейты подъезжают и сильно все лучше становится


  1. jouilk23
    21.05.2026 13:03

    Хорошо что вовремя осознал границу между пет-проектом и реальным продакшеном, особенно в части персональных данных. Большинство "SaaS за выходные" ломаются именно на этапе GDPR/ФЗ-152 и безопасности