Карьера вайб-кодера — это тупик
- суббота, 2 августа 2025 г. в 00:00:12
Сразу расставлю все точки над «и»: LLM полезны. Вопрос не в том, могут ли LLM писать код, они на это способны. Вопрос в том, почему вайб-кодинг может оказаться вашей худшей карьерной инвестицией.
Я начал замечать перемены, когда темы бесед разработчиков полностью поменялись. Теперь они обсуждают лишь то, как заставить Claude написать код за них. Или конечную цель: как заставить ИИ делать всё без вмешательства человека.
До недавнего времени я по большей мере игнорировал этот ажиотаж. Я читал заголовки, время от времени просил Claude или ChatGPT помочь мне в отладке, но ничего больше. Пришла пора учиться вайб-кодингу!
Telegram-бот. Совершенно новый проект. Какие-нибудь дэшборды с обновлениями в реальном времени. Ничего особо сложного, но и в то же время и не совсем тривиальное. Просто стандартный REST API с React-фронтендом.
Я настроил полный процесс ИИ-кодинга: MCP Claude, Playwright и Postgres, несколько агентов, работающих над разными ветвями, и подробные файлы документации. Я приступил к вайб-кодингу.
Claude обновлял схемы, писал конечные точки, нажимал кнопки в Chrome, проверял данные Postgres и открывал пул-реквесты. Всё работало. Моя первая реакция была такой:
«Чёрт возьми! Это безумие!»
Золотая лихорадка неизбежна. Мне больше не придётся тратить время на написание кода. Мне лишь нужно больше агентов, больше автоматизации. Фабрика должна расти! Под моим началом армия разработчиков-джунов, доступных в режиме 24/7.
Я с лёгкостью добавлял каждый день по 2–3 фичи. Барьер между мыслями и реализацией просто исчез. Это было так кайфово.
С ростом сложности проекта ситуация начала меняться. Claude повторял одни и те же ошибки, застревал в циклах. Переключение контекста стало огромной проблемой. Я перешёл с 4–5 параллельных ветвей до двух, иногда всего до одной. Я уже не мог просто просить реализовывать фичи. Мне пришлось перестать тщательно всё продумывать.
В конечном итоге, я всё равно оказался ограничен моей умственными силами. Переключение контекста между несколькими сгенерированными ИИ ветвями срабатывает только для небольших задач. В случае сложных систем мне всё равно приходилось самому продумывать решение. Claude только печатал за меня код.
Я потратил больше времени на тестирование и написание файлов инструкций для Claude, чем когда-либо тратил на проект такого размера. Раньше мне доводилось работать с джунами, которые только что выпустились из буткемпа, но ни одного из них не приходилось так водить за руку.
Как бы то ни было, я выпустил проект для моих трёх тестовых пользователей, и всё начало разваливаться. Сообщения не синхронизировались, пользователям присваивались не те аккаунты. Мне пришлось умолять Claude чинить баг за багом. Как я вообще попал в такую ситуацию? Это полный отстой и хаос.
Последний раз такое было со мной, когда я работал со сторонней командой. Никого в ней не волновало качество кода, все были нацелены лишь на быстрый выпуск. Мне нужно было проверять слишком много пул-реквестов, открытых людьми, которые не знали, чем занимаются, и не особо об этом беспокоились. У меня было лишь поверхностное понимание о происходящем, я походил на какого-то дирижёра, который... Хм. Звучит знакомо.
И таким станет будущее разработки ПО? Я точно ничего не путаю? Зачем вообще вкладываться в такую работу?
Навыками вайб-кодинга овладеть не так сложно. Чтобы пройти путь с нуля до полной компетентности, мне понадобилось несколько недель. Даже если это превратится в стандарт для нашей отрасли, любой сможет освоиться достаточно быстро. LLM — это не новый слой абстракции, а всего лишь другая парадигма интерфейса. Меняя синтаксис на естественный язык, мы меняем детерминированность на неопределённость.
Тем временем, всё изученное мной о вайб-кодинге уже устарело. Сегодня утром я почитал Hacker News. Компании выпускают продукты, автоматизирующие как раз те рабочие процессы, которыми я овладел. В этом поле первопроходцы не смогут получить преимущества, ведь его каждый раз полностью перепахивают заново.
Нет никакого конкурентного преимущества, которое можно сохранить. Нет никаких глубоких технических навыков, которые можно освоить.
Барьер вкатывания в вайб-кодинг рушится так быстро, что «первопроходцы» оказываются простыми бета-тестерами. Вы тратите деньги на исследования и разработку инструментов, которые превратят ваши навыки в товар.
В чём заключается моя стратегия промптинга? Я переключаюсь в plan mode и описываю то, что мне нужно. Затем многократно отвечаю «если что-то окажется двусмысленным или непонятным, задай уточняющие вопросы», пока меня не устроит результат. Вот и всё. Это работает.
Сравните это с изучением чего-то наподобие Rust, с которым я борюсь уже несколько месяцев. Дело не только в синтаксисе, а в совершенно новых концепциях. Это нельзя усвоить за раз.
Промптинг — это не какой-то сложный навык, требующий длительного обучения.
Люди тратят тысячи часов на то, чтобы научиться писать качественный код. Они учатся проектировать схемы данных, способные адаптироваться к новым требованиям, структурировать системы, в которых легко находить и устранять баги. Всё это очень далеко от навыков промптинга.
Ускоряет в чём? В прототипировании? В бойлерплейте? Срок жизни всего этого очень недолог. Подавляющее большинство разработчиков ПО работает над системами для продакшена, а не над проектами с нуля.
В чём LLM хороши, так это в очень быстром написании кода. Представьте, что есть два писателя. Один печатает со скоростью 50 слов в минуту, второй — 200 слов в минуту. Закончит ли быстрый автор писать в четыре раза быстрее? Нет. Потому что они тратят основную часть времени на сюжет, персонажей и создание целостной истории.
Вы когда-нибудь работали над проектом, который не движется вперёд? Всё просто работает медленно. Приложение медленное. Добавление фич происходит медленно. Для устранения багов нужна вечность. Вы действительно думали при этом, что причина в разработчиках, которые не могут писать код достаточно быстро? Или дело всё же было в плохой архитектуре, плохой культуре, поломанных коммуникациях, нечётких требованиях, ошибочном выборе технологий?
Утверждение о том, что ИИ существенно ускоряет разработку, требует как минимум тщательного исследования. Одно лишь бремя тестирования уничтожает многие его преимущества. Нужно гораздо больше тестов, чтобы гарантировать, что ИИ ничего не поломает. Намного больше обычного. При этом трудозатраты на создание ПО переносятся с написания кода на обеспечение защиты и переключение контекста.
Это другой способ создания ПО, со своими плюсами и минусами.
Вайб-кодинг заставляет обменивать чёткость на скорость.
Вы быстро выпускаете фичи, но больше не имеете мысленной карты своего ПО. Баланса здесь добиться крайне сложно. Во время моего эксперимента я заметил, что всё больше сопротивляюсь ручному изменению кода. Мне было проще сказать LLM «это не работает» и вставить трассировку стека. Я начал просить LLM заниматься даже мелкими изменениями, например «а теперь сделай кнопку синей».
Почему? Потому что я утерял понимание того, где что находится и как себя ведёт. Я даже не помнил, в каком файле находится эта кнопка. Да, разумеется, я проверял пул-реквесты. Вы знаете, насколько сложно правильно проверять код? Строить мысленную модель того, что в нём происходит? А теперь представьте, что в вашей очереди больше десятка пул-реквестов. Вы действительно будете проверять их все, а не просто нажмёте на «Approve», понадеявшись на лучшее?
Настал момент, когда я упёрся в стену. Несмотря на многократные мольбы, Claude не смог устранить баг. Я был вынужден взять дело в свои руки. И как же, чёрт побери, это было сложно. Мышление — сложная работа, а я уже довольно долго уклонялся от неё. Это как попробовать пробежать марафон после нескольких месяцев лежания на диване. Чтобы вернуться в строй, мне понадобилось так много времени, что я потерял весь свой выигрыш в продуктивности.
Пока я писал статью, пришёл ещё один баг-репорт. Я понятия не имею, откуда берётся этот баг и с чего начинать.
И это называется «LLM упростили мою работу».
Прочитав всё описанное выше, вы можете решить, что я луддит и ненавистник ИИ. Это не так.
ИИ помогал мне в написании этой статьи. Английский язык не родной для меня, а мои писательские навыки неидеальны. Мне приходилось подчищать грамматику, совершенствовать поток текста и доносить мои мысли чётче. Но я не профессиональный писатель и не утверждаю, что им являюсь. Это всего лишь пост в блоге, не эссе и не книга.
Ещё я использую ИИ для кодинга. Да, это поразительно.
Но процесс совершенно не похож на вайб-кодинг. Я без проблем пользуюсь Claude Code на очень коротком поводке и с конкретной целью, и понимаю, что это стоит мне больше, чем цена токенов. Я не оставляю ему всю работу, как роботу-пылесосу, надеясь, что к моему возвращению он не засосёт шнурок с пола.
Я даже не против самого вайб-кодинга. Иногда просто приходится экономить время, чтобы выполнить задачу. Совершенство может подождать, если фича нужна была ещё вчера. Технический долг — это инструмент, которым можно с умом пользоваться. Слишком многие продукты умирали медленной смертью, пока разработчики оттачивали код, которым никто никогда не воспользуется. Но постоянный вайб-кодинг — это уже перебор.
Концепция автономной ИИ-разработки — это всего лишь фантазия. Невозможно заменить опыт инструментом. Самые ценные разработчики имеют чёткую мысленную карту того, где что находится и какую задачу выполняет.
Пользование LLM не эквивалентно написанию кода. Оно не обеспечит той же пользы и точно не даст более качественных результатов. Это технический долг.
Я видел потрясающие бизнесы, построенные на основе таблиц Excel и no-code. Разумеется, можно создать приложение при помощи Claude. Но это не сделает вас разработчиком ПО. И я говорю это для вашей же пользы, потому что...
В отличие от людей, производящих инструменты для создания продуктов, вайб-кодер создаёт огромный хаос. Я слышал кучу страшилок от людей, унаследовавших сгенерированные ИИ кодовые базы. В них никто ни о чём не задумывался. Действительно, зачем волноваться, если ИИ всё равно справится с любой задачей?
Реальная разница заключается в том, что на самом деле создают профессиональные разработчики: архитектуру, разработку и отладку сложных систем, безопасность, удобство поддержки. Они получают сотни тысяч долларов не за то, что могут быстренько набросать MVP.
Для создания чего-то особенного нужны знания предметной области, накопленные благодаря потраченному времени и труду, пусть даже и с помощью ИИ.
Это ещё одно необоснованное заявление, призванное заставить людей бежать осваивать ИИ. Из него следует, что если вы не научитесь пользоваться ИИ сегодня, завтра вы будете неактуальны.
Я не считаю, что это правда, но если вы действительно верите, что ИИ вскоре сможет выполнять сложный труд разработчика, то зачем вы в него вкладываетесь? Что произойдёт с вашей зарплатой, когда планка требуемых навыков значительно опустится? Если ИИ пишет код лучше вас, то зачем кто-то будет нанимать конкретно вас?
Или искусственному интеллекту нужны годы, чтобы научиться писать подходящий для продакшена код, а значит, торопиться некуда, или он вскоре сделает кодинг настолько тривиальным, что эта работа будет оплачиваться по минимальной ставке. Не существует промежуточной ступени, на которой должность «заклинателя ИИ» будет высокооплачиваемой.
Если наше будущее — это разработка, «усиленная ИИ», то даже при постепенном внедрении вы перестанете быть кодером, а будете нянькой. Ваш рабочий день будет состоять из проверки сгенерированных ИИ пул-реквестов. Вы почти ничего не будете понимать, и вам придётся работать над кодовой базой, мысленную модель которой вы неспособны построить.
Это не разработка. Это менеджерство среднего звена, выдающееся себя за QA, проверяющее тикеты, которые не может решить, от работников, которые не могут думать.
Чтобы LLM продолжали совершенствоваться, нам нужно одно из трёх: больше данных, больше мощностей или прорывное открытие.
Данные находить становится всё сложнее. Правовые нормы, вопросы этики и мнение общества эволюционируют гораздо медленнее, чем технологии. Вероятно, ИИ-компании где-то в 2026–2032 годах исчерпают все источники высококачественных текстовых данных, а синтетические данные (использование LLM для генерации новых данных) вызывают коллапс моделей и усиление перекосов.
Мощности тоже не безграничны. Дата-центры сконцентрированы в определённых регионах. У нас нет инфраструктуры электросетей, способных обеспечивать мощность в нужных им масштабах. За мощности электросетей конкурируют другие энергозатратные технологии, например электротранспорт. А если взять более крупную картину, например, соответствие нашим целям в сфере климата, то перенаправление ещё больших мощностей на GPU вряд ли будет самым главным приоритетом политики.
Прорывные открытия происходят редко. Современные LLM основаны на научных статьях Google: «Attention Is All You Need» (2017 год) и BERT (2018 год). Они написаны почти десяток лет назад. С тех пор рост идёт благодаря масштабам, а не новым архитектурам. Каждый новый релиз становится всё менее впечатляющим, потому что трансформеры сталкиваются с фундаментальными ограничениями, которые не способны устранить инкрементальные улучшения.
Можно надеяться на открытия, но они по природе своей непредсказуемы. С большей вероятностью мы будем наблюдать расширение возможностей маленьких моделей, чем существенное улучшение более мощных.
Отрасль ИИ построена на субсидируемых ресурсах и сжигает деньги венчурного капитала, не предлагая чёткого способа заработка. Дата-центры получают землю со скидкой, налоговые послабления и обновления инфраструктуры, за которые платит общество.
ИИ-компании обобществляют убытки, приватизируют доходы, но всё равно очень далеки от прибыльности.
Они утверждают, что могут сделать каждого продуктивнее в десять, даже в сотню раз, но не могут найти способа получать прибыль. Почему они сами не способны воспользоваться этой продуктивностью?
Когда появилась Google, она имела более совершенные алгоритмы. Yahoo и AltaVista, несмотря на свои гораздо более существенные ресурсы, не могли с ней тягаться. Когда Apple выпустила iPhone, это был настолько замечательный продукт, что Blackberry и Nokia просто постепенно умерли.
Сегодня у каждого миллиардера есть собственный домашний ИИ. Ни один из них существенно не лучше другого. Каждый релиз немного обгоняет другие в произвольных бенчмарках, не очень отрываясь вперёд от похожих опенсорсных моделей. Так не может продолжаться вечно.
Я читаю в новостях: ИИ побеждает, и скоро все мы лишимся работы. Поэтому мне нужно решать: удвоить усилия по освоению разработки ПО, перейти на вайб-кодинг или попробовать что-то совершенно иное?
Я пришёл к выводу, что сегодня вайб-кодинг и близко не стоит по полезности к компетентному разработчику ПО. Но я проверю его ещё через полгода. Сегодня у опытных разработчиков ПО всё ещё много пространства для манёвра, поэтому я делаю ставку на то, чтобы совершенствоваться в этом, с ИИ или без него.
Если ИИ скоро станет настолько хорош, что сможет самостоятельно создавать программы, то разработка ПО в современном понимании умрёт. Если ИИ меня заменит, я опечалюсь. Но мне неинтересно становиться проджект-менеджером, весь рабочий день руководящим ИИ-агентами. Если такое произойдёт, то я буду конкурировать со всеми, кто способен составить промпт. Я не буду ставить на кон свою карьеру, чтобы стать чуть лучше в промптинге, чем миллионы других.
Так как я не вижу чётких признаков того, что это произойдёт в обозримом будущем, то делаю ставку на то, что на самом деле мы гораздо дальше от этого, чем нас пытаются убедить ИИ-компании, и что они продолжают делать громкие утверждения, чтобы собрать ещё больше финансирования.
Если я прав, то я не потрачу своё время на изучение временных навыков вместо накопления реального опыта.
Will we run out of data? Limits of LLM scaling based on human-generated data
What drives progress in AI? Trends in Data (MIT)
Best Practices and Lessons Learned on Synthetic Data
The rising costs of training frontier AI models
On The Computational Complexity of Self-Attention
Lawsuit Developments in 2024: A Year in Review
AI's energy impact is still small—but how we handle it is huge
We did the math on AI's energy footprint. Here's the story you haven't heard.
AI Tools in Society: Impacts on Cognitive Offloading and the Future of Critical Thinking (MDPI)
Your Brain on ChatGPT (MIT)
The impact of ChatGPT on student performance in higher education