Долгое время по коду было видно, кто его написал. Как названы переменные, где проведены границы между модулями, как обработан путь с ошибкой — на ревью или на собеседовании это читалось за минуту. Сейчас этого почти не осталось. Тот же код мог за десять секунд выдать агент, и по диффу уже не отличишь. Всё, чем сильный разработчик отличался от среднего — знание синтаксиса назубок, API в мышечной памяти, быстрый набор, — стало бесплатным, и есть теперь у всех.
Но сам рычаг никуда не делся. Он просто сместился с кода на то, что вокруг: историю коммитов, устройство репозитория, тесты, привычку и правда читать изменения. Это то, что всегда срезали первым, когда поджимал дедлайн, — необязательная гигиена, до которой руки дойдут потом. С агентами в контуре это перестало быть гигиеной. Это интерфейс, через который агент видит вашу систему, и заодно самый честный способ отличить сильного инженера от того, кто просто быстро жмёт Tab.
TL;DR
- Код перестал быть тем, что отличает: его пишет агент, и у всех он одинаковый. Отличает теперь то, что агент читает как контекст.
- Дело не в том, чтобы быстрее сгенерировать, а в том, чтобы система была устроена так, что в ней быстры и человек, и агент. Дисциплина умножается на каждый запуск агента — а их сотни в день.
- METR: опытные разработчики на зрелых репозиториях с AI стали на 19% медленнее — и не заметили этого. DORA: «AI не чинит команду; он усиливает то, что уже есть».
- Три сигнала, которые теперь важнее самого кода: чистая история коммитов (память, вынесенная наружу), декомпозиция (контекст, а не эстетика) и ревью чужого диффа (основная работа, а не формальность).
Рычаг сместился, а не исчез
Саймон Уиллисон формулирует прямо: «AI-инструменты усиливают имеющийся опыт. Чем больше у вас навыков и опыта как у инженера, тем быстрее и лучше результат от работы с LLM и агентами». Ключевое слово тут — «усиливают». Агент не разгребает ваш бардак, он просто быстрее движется через то, что вы ему дали, — вместе с бардаком.
И этому есть неприятное подтверждение. METR провёл рандомизированный эксперимент (2025) с опытными open-source разработчиками, которые годами вели свои репозитории. С разрешённым AI они стали справляться с задачами на 19% медленнее. Самое странное — они этого не почувствовали: до начала прогнозировали ускорение на 24%, а после, уже прожив это замедление, всё равно были уверены, что AI ускорил их примерно на 20%. METR объясняет это через контекст. Провал был сильнее всего там, где «очень высокие стандарты качества и много неявных требований» — документация, покрытие тестами, линтинг. То есть ровно там, где дисциплина живёт в головах, а не записана в репозитории.
Отчёт DORA за 2025 переносит ту же мысль на уровень целых организаций: «AI не чинит команду; он усиливает то, что уже есть. Сильные команды становятся с ним ещё сильнее и эффективнее. Слабые обнаружат, что AI лишь подсвечивает и усугубляет их проблемы». И тут же называет механику: выигрывают команды со слабо связанной архитектурой и быстрыми петлями обратной связи; те, кто зажат в сильно связанных системах и медленных процессах, «не получают почти никакой выгоды». Как устроен код и как ведёт себя ваш CI — вот что в итоге решает, окупится агент или навредит.
Вот это и усиливается. Дальше — по сигналам.
Сигнал 1. История коммитов — это память, вынесенная наружу
Биргитта Бёкелер из Thoughtworks точно называет, чего агенту не хватает: «ни социальной ответственности, ни эстетического отвращения к функции на 300 строк, ни интуиции „у нас так не принято”, ни организационной памяти». Организационная память — то, почему код именно такой, — живёт у человека в голове и в полузабытых разговорах у доски. У агента нет доступа ни к тому, ни к другому. Единственное место, где эта память записана так, что её может прочитать машина, — история коммитов.
И агенты её действительно читают. В best practices по Claude Code Anthropic советует направлять агента прямо в историю: вместо «почему у ExecutionFactory такой странный API» — «пройдись по git history ExecutionFactory и опиши, как этот API таким стал». Чистая история из атомарных коммитов с внятными сообщениями — это контекст, который можно запросить в любой момент. Лог из «wip», «fix» и «asdf» — это контекст, которого просто нет.
Поэтому Уиллисон и считает, что с AI контроль версий становится важнее, а не наоборот: «Уметь откатывать ошибки и понимать, когда и как что-то изменилось, тем важнее, когда изменения мог внести агент». Раньше аккуратная история окупалась во время редкого git bisect. Теперь она подаёт контекст в каждую сессию с агентом.
Сигнал 2. Декомпозиция — это контекст, а не эстетика
«Чистый код» годами продавали как вопрос вкуса. С агентами он стал вопросом производительности — и таким, который можно измерить. Армин Ронахер: «Простой код значительно превосходит сложный в агентных сценариях». Не «приятнее на вид», а именно работает лучше. Бёкелер объясняет почему: в запутанной кодовой базе агент «ищет существующую реализацию не там, создаёт рассогласования, потому что не заметил дубликат, и вынужден грузить больше контекста, чем нужно для задачи». Плохое внутреннее качество бьёт по агенту так же, как по человеку, — только агент натыкается на него в каждой задаче, а не время от времени.
Отсюда вывод, который переворачивает привычный спор: «само проектирование кода — огромная часть контекста». Разбить систему на модули с предсказуемыми границами — это не про красоту, это способ удержать агента в пределах той части, которая важна. Anthropic говорит то же с другой стороны: «Claude работает лучше всего, когда ограничен той частью кодовой базы, которая реально относится к задаче». God-класс на 2000 строк тяжёл не только людям — он вынуждает агента затаскивать в контекст всё целиком, чтобы поменять одну строчку.
Что происходит без этой дисциплины, видно по цифрам. GitClear зафиксировал рост дублированных блоков кода на 81% с 2023 по 2026 — впервые copy-paste обогнал перенос кода. Агент, которого оставили работать без структуры и ревью, «накапливает непреднамеренный технический долг» — так это назвала сама Бёкелер после эксперимента, в котором отложила ревью модульности «на потом».
Сигнал 3. Ревью диффа — это основная работа, а не формальность
Когда генерация фактически бесплатна, узким местом становится проверка. Уиллисон не смягчает: «Культура code review. Тут всё очевидно. Если вы быстры и продуктивны в ревью — работать с LLM вам будет намного комфортнее». Раньше ревью было финальной любезностью коллеге. Теперь это та часть работы, которую человек оставляет себе, отдав генерацию машине.
Данные сходятся со всех сторон. В опросе Stack Overflow 2025 главная претензия к AI-коду — что он «почти правильный, но не совсем»: так ответили 66% разработчиков; 46% прямо не доверяют его точности, и чем опытнее разработчик, тем он скептичнее. Это не луддизм. «Почти правильно» ловит только человек, который умеет читать дифф и знает, где остановиться. И сами руководства по best practices это признают: Anthropic советует ревьюить AI-код из свежей сессии, потому что «модель не будет предвзята к коду, который сама только что написала» — по той же причине, по которой автор не апрувит собственный PR.
Митчелл Хашимото, при всей его глубине в агентной разработке, держит одну жёсткую линию: «Я не отгружаю код, который не понимаю». Вот, собственно, и весь сигнал. Не сколько кода ты выдал, а сколько из того, что выдал агент, ты сам сел и разобрал.
Как это проверять — у себя и у кандидата
Литкод-задача теперь проверяет навык, который отдан машине. Есть упражнение полезнее. Дайте кандидату сгенерированный агентом дифф на 200 строк и попросите отревьюить вслух. Там проявляется всё: замечает ли он тихий дубликат, видит ли пропущенный кейс, отличает ли «работает» от «правильно». В разборе про найм на Built In это сказано лучше всего: «Сигнал — не сам код. Сигнал — это заминка. Мне важно увидеть, где человек останавливается». Там же — про смену эпохи: «Генерация дёшева. Верификация дорога… Это ядро инженерного суждения senior-уровня».
С собой всё так же просто. Откройте git log за последнюю неделю — по нему понятно, что вы делали, или это стена из «wip»? Сможет ли новый человек — или агент — понять, где начинается и заканчивается модуль, не читая его целиком? Проходит ли код, написанный агентом, то же ревью, что и ваш? Три «да» — и вы построили среду, где рычаг от AI только растёт. Три «нет» — и вы воспроизвели условия из исследования METR, где агент замедляет вас, а вы этого не чувствуете.
Итог: сильный инженер — тот, за кем остаётся система
Для меня это личное. Я делаю платёжно-биллинговую платформу на Go, где цена ошибки — двойное списание с клиента, и агенты давно часть моего рабочего дня. Быстрее всего я двигаюсь не когда агент выдаёт больше строк, а когда репозиторий устроен так, что агент с первого раза попадает в нужное место: чистая история, модули с ясными границами, тесты, по которым он сам себя проверяет.
В этом весь сдвиг, от начала до конца. Раньше дисциплина умножала только твою личную скорость — те двадцать процентов, которые всегда можно срезать под дедлайн. Теперь она умножается на каждый запуск агента, а их сотни в день. «Мелочь» стала рычагом. Сильный инженер сегодня — не тот, кто быстрее печатает, и даже не тот, кто ловчее промптит. Это тот, за кем остаётся система, в которой быстры все — и люди, и агенты. Код теперь все пишут одинаково. Разница — во всём, что вокруг него.