Конец программной инженерии?
Полвека индустрия жила по понятному правилу: человек разбирает задачу на части, пишет код, потом чинит и переписывает его по мере изменений. В статье Чжэньфэна Цао звучит другой тезис: эпоха, где код был главным носителем логики, заканчивается. На первый план выходит ИИ-агент — система, где LLM не просто помогает писать программу, а сама рассуждает, планирует шаги, вызывает инструменты, генерирует код по ходу работы и тут же его выбрасывает, если он больше не нужен.
Если раньше цепочка была такой: человек или ИИ пишет софт, софт даёт результат , то теперь всё чаще работает другая схема: агент получает намерение и сразу ведёт вас к результату. Код в этой схеме — временный инструмент.
Это меняет не только инструменты разработчика. Это меняет саму единицу поставки. Вместо “мы отдали вам программу” — “мы решили вашу задачу”.
Что именно меняется
Автор предлагает разделить два мира.
В традиционной программной инженерии логика заранее зашита в исходный код. Все важные решения человек должен предусмотреть до запуска: как система обработает ввод, что сделает в редких кейсах, как поведёт себя при сбое. Если требования меняются, человек снова идёт в код и вручную правит систему.
В агентной схеме центр тяжести переносится в модель. Она получает задачу, смотрит на текущее состояние, достаёт нужный контекст из памяти, строит план, вызывает инструменты, пишет нужные фрагменты кода, запускает их, проверяет результат и идёт дальше.
Иными словами, в старом мире код хранил решение, в новом мире решение рождается во время исполнения.
Отсюда вытекает смена роли почти всего вокруг:
🟠 Главный артефакт — уже не репозиторий со статическим кодом, а агент с памятью, инструментами и обвязкой.
🟠 Центр управления — уже не разработчик, который вручную проводит систему по пайплайну, а LLM, которая принимает локальные решения по ходу задачи.
🟠 Роль человека — уже не “автор каждой строчки”, а тот, кто задаёт цель, ограничения, критерии качества и проверяет итог.
🟠 Единица ценности — уже не “готовое приложение”, а результат: исправленный баг, собранный отчёт, настроенный сервис, закрытая задача.
У статьи есть историческая рамка. Сначала был локальный софт: пользователь сам ставил систему, обновлял её и разбирался с инфраструктурой. Потом пришёл SaaS и забрал часть этой сложности на сторону поставщика. Теперь, по мысли автора, начинается следующий шаг: сложность уходит ещё дальше — от пользователя скрывается уже не только инфраструктура, но и сама внутренняя логика решения.
Почему старый подход упирается в потолок
Самая интересная часть статьи — попытка объяснить это через рост сложности.
Классическая проблема программной инженерии давно известна: чем больше система, тем больше в ней взаимосвязей. Новый модуль влияет на старые. Исправление одного бага создаёт два новых. Тесты разрастаются. Документация устаревает. Архитектура обрастает компромиссами.
Автор опирается на старую мысль Фреда Брукса: есть случайная сложность — её можно снижать лучшими языками, фреймворками и инструментами, — а есть сущностная сложность , которая заложена в самой задаче. От неё не уйти.
Логика статьи такая: в традиционном софте человек должен явно закодировать дерево решений. Но пространство возможных состояний и взаимодействий растёт слишком быстро. А человеческая способность удерживать всё это в голове почти не растёт. В какой-то момент вы упираетесь в потолок не из-за плохой команды, а из-за природы задачи.
ИИ-агент обещает другой путь. Он не кодирует все варианты заранее. Он строит решение по месту: берёт текущую подзадачу, планирует шаг, вызывает инструмент, сверяет результат, при необходимости меняет курс. То есть работает не через полный ручной перебор заранее написанной логики, а через динамическое рассуждение во время исполнения.
Коротко:
🟣 Традиционный софт пытается заранее описать мир в коде.
🟣 ИИ-агент пытается разбираться с миром по ходу работы.
🟣 Традиционный софт плохо переносит изменения без участия человека.
🟣 ИИ-агент может адаптироваться на лету, если у него хватает контекста, памяти и инструментов.
Вот почему автор настаивает: речь идёт не об ускорении программирования на 10–20%, а о смене самой вычислительной модели.
Что такое агентная инженерия
Для этого сдвига в статье вводится термин агентная инженерия. По сути, это новая дисциплина вокруг проектирования систем, где задачу решает не один скрипт и не один разработчик, а один или несколько ИИ-агентов с общей памятью, ролями и наблюдаемостью.
Важно, что здесь речь не только об агентах для программирования, которые чинят баг в репозитории. Речь о более широком слое: агент получает бизнес-цель, сам переводит её в технические шаги, координирует инструменты и людей, а затем возвращает результат.
Автор отдельно описывает архитектуру такого агента. Она выглядит довольно стандартно для сегодняшнего рынка:
🟠 Модуль восприятия — принимает текст, файлы, иногда изображения и другие входы.
🟠 Память — хранит факты, прошлые эпизоды, процедуры и рабочий контекст.
🟠 Модуль действий — вызывает API, запускает код, ходит в базы, правит файлы.
🟠 LLM как ядро рассуждения — связывает всё это в единый цикл принятия решений.
На практике именно обвязка вокруг модели начинает значить не меньше самой модели. Память, наблюдаемость, общий контекст между агентами, история решений, критерии проверки — всё это становится частью продукта.
Отсюда и новая роль человека. Автор описывает её так:
🟣 Архитектор намерения — формулирует цель и ограничения.
🟣 Координатор агентов — настраивает роли, память и взаимодействие.
🟣 Аудитор результата — проверяет не только “работает или нет”, но и качество, риски, соответствие правилам.
Это уже заметно в реальных командах. Самый продуктивный инженер будущих двух-трёх лет — не обязательно тот, кто лучше всех пишет код руками. Чаще это тот, кто лучше всех умеет собирать рабочий пайплайн из агентов, тестов, памяти и проверок.
Что показывают бенчмарки
Здесь статья переходит от общих тезисов к нескольким эмпирическим сигналам.
Первый — SWE-bench Verified. Это один из главных бенчмарков для задач по программированию на реальных задачах из GitHub. Автор приводит результаты модели Lingma SWE-GPT 72B: она закрывает 30,2% задач. Это уже рядом с GPT-4o, у которого 31,8%. Ещё интереснее, что версия на 7B параметров решает 18,2% задач — заметно меньше, но всё ещё на полезном уровне.
На практике это значит следующее: хорошо дообученная модель, заточенная под процесс разработки, может быть полезнее просто очень большой общей модели. Для бизнеса это важно: не всегда нужен самый дорогой универсальный вариант.
🟠 Lingma SWE-GPT 72B — 30,2% в SWE-bench Verified.
🟠 GPT-4o — 31,8%.
🟠 Lingma SWE-GPT 7B — 18,2%.
🟠 Вывод — специализация и дообучение могут быть важнее одного только масштаба модели.
Второй сигнал — мультиагентная координация. В пилотах LangChain, которые цитирует автор, координированные группы агентов сократили время поиска первопричины проблем на 93% и сэкономили более 200 инженерных часов за месяц. Здесь фокус не в том, что один агент стал умнее. Несколько специализированных агентов с общим контекстом умеют параллельно исследовать проблему и сверять выводы.
🟠 Снижение времени поиска первопричины — 93%.
🟠 Экономия инженерного времени — более 200 часов в месяц.
🟠 Вывод — координация нескольких агентов даёт отдельный выигрыш поверх качества одной модели.
Третий сигнал — самоулучшение. В качестве примера приводится Hermes Agent от Nous Research. Идея простая: после сложной задачи агент не просто завершает сессию, а сохраняет полезную процедуру в виде навыка. Потом использует этот навык снова. Если он сработал плохо, агент исправляет его сам. Получается цикл: сделал задачу → выделил процедуру → переиспользовал → заметил слабое место → поправил.
Это уже похоже не на разовую переписку с моделью, а на накопление операционного опыта.
Короткая выжимка по результатам:
🟠 Одиночные задачи по программированию агенты уже решают на уровне, который нельзя игнорировать.
🟠 Координация нескольких агентов даёт отдельный выигрыш поверх качества одной модели.
🟠 Память и повторное использование навыков становятся важной частью систем, а не исследовательской экзотикой.
Где всё пока проваливается
Самое честное место в статье — обсуждение ограничений. И здесь главный герой не SWE-bench, а EvoClaw.
Этот бенчмарк проверяет не разовые правки, а непрерывную эволюцию программной системы. То есть агент должен не просто закрыть одну задачу, а вести проект через серию изменений, коммит за коммитом, сохраняя целостность системы. И тут картина резко меняется.
Автор приводит ключевую цифру: если на изолированных задачах успех у передовых систем бывает выше 80%, то в режиме длительной непрерывной работы он падает максимум до 38%.
Это важно.
🟣 Изолированные задачи — успех выше 80%.
🟣 Длительная непрерывная работа — максимум 38%.
🟣 Разрыв — длинный горизонт работы остаётся главным ограничением.
Агенты хороши в аккуратных демках и коротких автономных эпизодах. В длинной разработке у них начинаются старые знакомые проблемы:
🟣 Дрейф контекста — агент перестаёт держать в голове инварианты большой системы.
🟣 Накопление ошибок — небольшая ранняя ошибка тянет за собой следующие.
🟣 Слабое понимание технического долга — агент оптимизирует локальный успех, а не долговременную поддерживаемость.
🟣 Неполная проверка — тесты могут проходить, а смысловая ошибка остаётся внутри.
Именно здесь видно, что “агент вместо программы” пока не готов полностью заменить длинный инженерный цикл. Он может быстро исправить тикет, собрать прототип, написать миграцию, провести расследование, но устойчиво вести большую кодовую базу месяцами — пока нет.
Что делать компаниям уже сейчас
Из статьи вытекает практичный план. Не ждать полного автономного будущего, а перестраивать процессы по частям.
Если вы строите команды и продукты сегодня, логика примерно такая:
🟠 Выбирайте задачи с ясным критерием успеха — исправление дефекта, генерация тестов, миграция, поиск причины инцидента.
🟠 Стройте проверку вокруг агента — тесты, наблюдаемость, трассировка шагов, история решений.
🟠 Давайте агенту право вести исполнение, а человеку — право задавать рамки и принимать итог.
🟠 Учите людей работать с намерением, а не только с кодом — хороший системный промт, набор ограничений и критериев качества здесь значат очень много.
Автор также рисует дорожную карту из четырёх этапов: от инструментов-помощников, через автономное выполнение одной задачи, к мультиагентным командам и дальше — к самоизменяющимся экосистемам. Сроки там, конечно, спорные. Но направление выглядит правдоподобно: сначала агенты помогают, потом закрывают отдельные куски работы, потом начинают координироваться между собой.
Вывод
Код перестаёт быть единственным местом, где живёт логика системы. Всё больше логики переезжает в цикл: понять задачу, составить план, вызвать инструмент, проверить результат, скорректировать действие. Это и есть ядро агентной инженерии.
Главный сдвиг — от поставки программ к поставке результатов. Для пользователя это проще. Для компаний это меняет модель продукта. Для инженеров — роль в команде.
Ближайшее будущее — не полностью автономная разработка, а гибридный режим. ИИ-агент ведёт исполнение, человек задаёт цель, ограничения и принимает решение в спорных местах.
Главный барьер сейчас — длинный горизонт работы. Разовые задачи агенты уже тянут. Непрерывную эволюцию больших систем — пока нет. Значит, весь рынок упрётся в память, проверку, наблюдаемость и координацию нескольких агентов.
Если коротко: программная инженерия не исчезает. Исчезает представление, что код — это и есть конечный продукт. Всё чаще продуктом становится способность агента довести вас до нужного результата.
ИИ-обзоры простыми словами
Каждый день читаем свежие статьи об ИИ и пересказываем главное естественным языком — без хайпа и воды. Если хотите понимать, куда движутся ИИ-агенты раньше остальных, — подписывайтесь.
Новые обзоры — каждый день
В Telegram