
Если полистать вакансии на хедхантере или в линкедине, рано или поздно натыкаешься на объявления, где ищут человека с опытом от пяти лет, который умеет читать чужой код без комментариев, разбирается в многопоточке и готов работать с большим объемом кода, написанного без участия людей, причем иногда такие объявления вывешивают те же компании, которые год-два назад рассказывали в пресс-релизах, как заменили агентами и пайплайнами генерации половину джунов и почти весь ручной QA. Над последней строчкой в требованиях зависаешь примерно с тем же выражением лица, с каким читают инструкцию к лекарству, где в побочных эффектах указана сама болезнь.
Год назад над таким объявлением посмеялись бы в курилке, а сейчас похожие вакансии висят в каждой второй ленте, называются по-разному, от вежливого «AI code reviewer» до «разгребатель вайб-кода», и за ними почти всегда стоит одна и та же история, когда компания сначала заплатила за то, чтобы убрать людей из процесса, а потом заплатила еще раз и уже дороже, чтобы вернуть их обратно, только теперь на роль уборщиков после банкета, на который их самих не позвали.
Волн технологий, которые должны были отменить программистов, за последние десятилетия было несколько, от визуальных редакторов скриптов до no-code конструкторов, и каждая из них откатывалась примерно по одной траектории, разве что нынешняя делает это заметно быстрее, потому что денег в нее влили столько, что считать убытки начали раньше обычного.
Первыми вернулись операторы
Нагляднее всего откат виден в поддержке, потому что там цена ошибки считается в деньгах и отписках почти в реальном времени, и никакой красивый отчет про сэкономленные ставки не переживет графика оттока клиентов. Klarna в двадцать четвертом году громко рассказывала, что чат-бот делает работу семисот операторов, а весной двадцать пятого их CEO признал, что упор на экономию обернулся просевшим качеством, и компания снова начала набирать живых людей на поддержку, причем подали это как продуманную стратегию, будто так и задумывалось с самого начала.
Летом того же года австралийский Commonwealth Bank сократил сорок пять ставок в колл-центре и посадил на их место голосового бота, после чего звонков стало только больше, оставшихся сотрудников начали гонять на сверхурочные, тимлиды сами садились на линию, и примерно через месяц, когда за историю взялся профсоюз, банк публично извинился и предложил уволенным вернуться на свои места.
Механика у обеих историй одинаковая, и она хорошо знакома любому, кто хоть раз выпускал игру в софт-лонч: метрика, которую оптимизировали, послушно улучшилась, зато соседняя, на которую никто не смотрел, тихо развалилась, и когда ее наконец заметили, оказалось, что дешевле вернуть людей, чем объяснять клиентам, почему бот третий раз подряд предлагает им сбросить пароль.
Код, который пишется быстрее, чем читается
С кодом история тоньше, потому что откат там почти не попадает в новости и тихо происходит внутри команд, в ревью, в съехавших сроках и в том, кто сидит над краш-дампом в два часа ночи. Летом двадцать пятого ребята из METR посадили опытных open-source разработчиков решать задачи в их собственных репозиториях, и выяснилось, что с ИИ-инструментами задачи закрывались примерно на девятнадцать процентов медленнее, хотя сами участники после эксперимента были уверены, что ускорились где-то на двадцать, и вот этот разрыв между ощущением и секундомером мне кажется самой важной цифрой во всей истории.
Похожие истории регулярно всплывают в комментариях на Хабре и в тредах на реддите, где разработчики описывают одну и ту же картину, когда генерация дает очень быстрый первый результат, пулл-реквесты летят пачками, а через месяц выясняется, что в проекте живут несколько почти одинаковых решений одной и той же задачи, написанных в разное время под разные промпты, и разбирать этот клубок приходится тем немногим людям в команде, которые еще помнят, как система задумывалась изначально.
У сгенерированного кода есть неприятное свойство, он выглядит правильным ровно до того момента, пока его не запустишь на реальном железе с реальными данными, и проверять его могут только те люди, которых им собирались заменить, потому что джун гонку в коде, который внешне аккуратнее его собственного, скорее всего пропустит, а синьору на поиск нужно время, которое раньше уходило на то, чтобы написать этот код самому и сразу без гонки.
Поэтому агентов из пайплайнов, судя по вакансиям и по тому, что пишут сами разработчики, никто выкидывать не стал, зато вокруг них наросли целые слои людей, от ревьюеров и владельцев модулей, которые отвечают за каждую правку в своей зоне, до отдельных специалистов, которые чистят то, что уже успело уехать в мастер, и если сложить их зарплаты, экономия от сокращения джунов начинает подозрительно напоминать кредит, взятый под очень неприятный процент.
Игроки тоже научились считать
В геймдеве откат толкают снизу игроки, которые за пару лет научились узнавать сгенерированный контент быстрее любого детектора, по лишним пальцам на постере, по вывескам, где буквы плывут, словно их рисовали в трясущейся маршрутке, и по озвучке, в которой персонаж кричит «граната» с интонацией прогноза погоды на выходные.
Steam еще в начале двадцать четвертого года обязал разработчиков раскрывать использование генеративного контента, и эта плашка на странице игры довольно быстро превратилась из формальности в фильтр, по которому заметная часть аудитории просто пролистывает игру дальше, а в конце двадцать пятого, если я правильно помню, Clair Obscur лишилась наград Indie Game Awards после того, как всплыло, что в релизную сборку уехали сгенерированные текстуры-заглушки, которые разработчики потом сами же и вычистили патчем.
Для студии это превращается во вполне конкретную арифметику, когда сэкономленные на концепт-художнике деньги приходится сравнивать с ценой скандала на релизе, с рефандами и с отзывами, которые потом годами висят на странице в Steam, и после такого сравнения неудивительно, что все больше студий отдельно подчеркивают в описаниях игр и в интервью, что арт, звук и тексты сделаны людьми, а в вакансиях снова появляются художники и актеры озвучки, которых еще недавно сокращали первыми.
Забавно, что сама индустрия генерацию при этом продолжает использовать, просто ее спрятали поглубже в пайплайн, на прототипы, ресерч и черновую расстановку, туда, где игрок ее никогда не увидит, и все, что игрок видит и слышит в релизе, снова делает человек, которого для этого пришлось нанимать обратно, иногда в ту же самую студию и иногда за большие деньги, чем он получал до сокращения.
Генерация дешевая, проверка дорогая
Если свести все эти истории в одну формулу, получится довольно скучная экономика, которую почему-то мало кто посчитал заранее: сгенерировать текст, код, картинку или ответ клиенту стоит почти ноль, зато проверить результат стоит столько же, сколько раньше стоило его сделать, а иногда и больше, потому что свою ошибку человек ищет там, где сомневался, а в чужой сомневается сразу везде.
Если прикинуть на одной типичной фиче, раньше джун писал ее три дня, а синьор тратил на ревью пару часов, теперь агент пишет ее за двадцать минут, синьор полтора дня выясняет, где именно она врет, потом еще день переписывает найденное, и в итоге та же фича стоит компании дороже, причем платит за нее самый дорогой человек в команде, у которого и без того очередь задач тянется до следующего майлстоуна.
И есть еще одна статья расходов, которую в квартальных отчетах вообще не видно, потому что джуны, которых убрали из процесса, были тем самым местом, где через три-четыре года вырастали синьоры, и компании, которые первыми перестали набирать младших, сейчас первыми же обнаруживают, что ревьюить генерацию скоро будет некому, а готовый синьор на рынке стоит столько, что вся экономия первого года уходит на одного-двух человек.
Куда переезжает ИИ
Любопытно, что модели при этом остаются в тех же компаниях и в тех же пайплайнах, их просто пересаживают с тех мест, куда их поставили вместо людей, обратно в инструменты, на ту же полку, где лежат автокомплит, статический анализатор и профайлер, то есть в разряд вещей, которыми человек пользуется в работе и которые при этом никогда не числились в штатном расписании.
Получается, что замена действительно произошла, просто в обратную сторону от той, которую обещали в презентациях, и на каждой позиции, где модель поставили вместо человека и оставили без присмотра, через год-полтора снова сидит человек, обычно опытнее и дороже того, кого убрали, и делает он ту же работу плюс уборку за моделью, которая занимала его стул до него.
Я думаю, через пару лет фраза «нас заменит ИИ» будет звучать примерно так же, как сейчас звучит «нас заменит аутсорс в другом часовом поясе», то есть как воспоминание о временах, когда кто-то очень хотел сэкономить на людях и в итоге заплатил тем же людям, только втридорога и с опозданием на один релизный цикл.
Автор: Claritas


