Назад к блогу

Машины 1:0, люди: что победы ИИ на ICPC говорят о будущем разработки

Машины 1:0, люди: что победы ИИ на ICPC говорят о будущем разработки

Финал ICPC — Международной студенческой олимпиады по программированию, главного командного соревнования среди будущих инженеров — в 2025 году впервые по-настоящему расколол индустрию на спокойных и встревоженных. В состязании, где двенадцать задач нужно решить точнее и быстрее сотен сильнейших студенческих команд, золотые медали завоевали не только люди. Сразу три системы искусственного интеллекта — Google Gemini 2.5 Deep Think, OpenAI GPT-5 и ещё одна экспериментальная модель — повторили результат, который в тот год показали лишь четыре из 139 команд-людей. OpenAI при этом решил все 12 задач, Gemini — 10 из 12: такого счёта хватило бы, чтобы занять второе место среди людей.

Табло финала читалось как «машины 1:0, люди». Новость облетела профессиональные чаты и осела там тревожным вопросом: если искусственный интеллект уже обыгрывает людей в их собственной профессии, то что делает здесь разработчик? Не стал ли он следующим после машиниста поезда — специалистом, чья работа исчезнет быстрее, чем он успеет переучиться?

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

Почему олимпиадная задача — это не реальная разработка

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

Такая среда — идеальная для больших языковых моделей (large language models, LLM): искусственных нейросетей, обученных предсказывать текст и код по гигантским массивам данных. Модель видела тысячи похожих задач во время обучения, условие не требует домысливать, критерий успеха однозначен, а проверка мгновенна. По сути олимпиада проверяет то, что нейросети умеют лучше всего: быстро производить код для чётко очерченной проблемы.

Реальная разработка — другой вид спорта. Её называют «грязной» не в осуждение, а по сути: она состоит из неоднозначностей, невысказанных требований и постоянно меняющихся приоритетов. Задача «подтверждение email-адреса» звучит просто, пока вы не узнаете, что продукт продаётся в двадцати странах, у каждой свой регулятор, у части пользователей нет смартфонов, а маркетинг уже пообещал клиентам мгновенную регистрацию. Требование «ускорьте оплату» означает не «напишите быстрее», а «разберитесь, где сейчас узкое место, и не сломайте то, что работает». Правильного ответа здесь нет — есть решения с последствиями, и последствия наступают не сразу.

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

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

Усилитель: сильным — сверхрезультаты, слабым — очаги продуктивности

Чтобы увидеть, как устроен этот второй слой, обратимся к данным. DORA — многолетняя исследовательская программа (DevOps Research and Assessment), которая измеряет, как практики команд связаны с их результатами. В 2025 году вышла её отдельная работа — отчёт «State of AI-assisted Software Development», посвящённый тому, как ассистирующий ИИ влияет на поставку программного обеспечения.

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

Downstream здесь — всё, что происходит с кодом после того, как он написан: интеграция с другими сервисами, сборка, тесты, выкат в продакшен и эксплуатация. Представьте две команды, которые одновременно включили ИИ-ассистента. В первой есть код-ревью, автоматические тесты, понятные конвенции и практика небольших изменений: код от ассистента проходит проверку, попадает в маленьких партиях в основную ветку и едет до продакшена без сюрпризов. Во второй всё держится на героизме нескольких старожилов, тесты пишутся «потом», а ветки расходятся на недели. Здесь ассистент начинает штамповать в разы больше кода, чем команда успевает проверять и интегрировать. Конфликты слияния растут как снежный ком, сборки падают, и старожилы тонут в разгребании чужих изменений вместо разработки. Через месяц вторая команда работает медленнее, чем до внедрения ИИ, — хотя каждый отдельный разработчик честно стал писать быстрее.

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

Скорость без стабильности: то, чего не видит ИИ

Усиление сказывается и на ключевых метриках поставки. DORA традиционно измеряет две стороны медали: throughput — скорость, с которой команда доводит изменения до пользователя, и стабильность поставки — способность делать это, не ломая прод и не откатывая релизы. Авторы отчёта 2025 года фиксируют тревожную комбинацию: рост throughput, который приносит использование ИИ, сопровождается ростом нестабильности поставки. Команды стали выпускать больше, но чаще ломать.

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

Именно здесь прячется то, чего модель не видит. Код, который безупречно выглядит в изоляции, может внести уязвимость — потому что модель не знает ваших границ доверия и потоков данных. Он может сломать систему — потому что модель не знает вашей инфраструктуры, контрактов между сервисами и прошлых инцидентов. Он может незаметно накапливать технический долг — потому что модель не платит по счетам за поддержку этого кода через год. Для модели каждая задача — новая и самостоятельная; для вас она — часть растущей, взаимосвязанной и живой системы, где нет изолированных решений.

Поэтому вывод авторов исследования звучит не как приговор инструменту, а как предупреждение о дисциплине: скорость ИИ имеет смысл только в паре со стабильностью поставки, и стабильность теперь — не опция, а вторая половина сделки. Лозунг этой сделки давно известен в инженерии: trust but verify — «доверяй, но проверяй».

Семь практик из DORA 2025: как раскрыть потенциал ИИ

Хорошая новость в том, что рецепт не требует изобретать ничего нового. Авторы DORA формулируют семь практик, которые позволяют команде получить от усилителя максимум. Любопытно, что все семь — это знакомые основы качественной инженерии; меняется не их состав, а цена ошибки. Раньше пренебрежение дисциплиной стоило вам недель задержки, теперь оно стоит вам контроля над собственной скоростью.

  1. Ясная и доведённая до команды AI-политика. В компании должно быть понятно, где использовать ассистирующий ИИ можно, где нельзя и почему: можно ли отправлять код в публичные инструменты, можно ли давать модели внутренние данные, кто отвечает за результат. Политика, о которой команда узнаёт из слухов, хуже отсутствия политики: она порождает страх и подпольное использование.
  1. Здоровые экосистемы данных. Модели обучаются и работают на данных, и качество их подсказок не бывает выше качества этих данных. Битые источники, устаревшая документация, противоречивые справочники — всё это усилитель превратит в уверенные, но неверные советы. Данные нужно чистить, поддерживать и считать частью инженерной инфраструктуры.
  1. Доступ ИИ к внутренним данным. Ассистент, который отвечает только по общим знаниям, будет предлагать вам решения «в среднем по больнице». Доступ к вашим внутренним документам, коду, ранбукам и постмортемам делает его подсказки конкретными: модель начинает говорить на языке вашей системы, а не абстрактного учебника.
  1. Сильный version control. Контроль версий — система, хранящая всю историю изменений кода, — становится единственной точкой правды в мире, где код генерируется машиной в промышленных масштабах. Только через него можно отследить, что именно предложил ИИ, кто это проверил и что ушло в прод. Без надёжного контроля версий ускорение превращается в неконтролируемый поток изменений.
  1. Работа мелкими партиями (small batches). Небольшие, часто выпускаемые изменения легче проверять, легче понимать и легче откатывать, если что-то пошло не так. В эпоху, когда код производится в разы быстрее, мелкими партиями — единственный способ удержать ревью и тестирование в темпе генерации. Огромный диф от ИИ, выкаченный разом, проверить невозможно в принципе.
  1. Ориентация на пользователя и эмпатия. Быстрее писать код — не значит лучше понимать, что нужно пользователю. Эмпатия — способность встать на место того, кто будет пользоваться продуктом, — остаётся человеческим качеством, которое не ускоряется генерацией кода. Именно она подсказывает, какую задачу вообще стоит решать и что для пользователя важно, а что — технический восторг.
  1. Качественные внутренние платформы. Внутренние платформы и готовые инфраструктурные пути выступают гардрейлами — направляющими, которые не дают усиленному потоку кода сойти с рельсов. Шаблоны сервисов, автоматические проверки безопасности, окружения без доступа к проду, стандартные процессы выката — всё это позволяет ИИ-коду двигаться по безопасной колее, а не прокладывать собственную через прод.

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

Доверять скептикам: 30% против 95%

Отдельного внимания заслуживают цифры DORA о человеческом отношении к инструменту. Согласно отчёту, около 30% разработчиков слабо доверяют коду, который генерирует ИИ, — и при этом около 95% им пользуются. Противоречие кажущееся, и в нём спрятан главный урок о будущем профессии.

Люди пользуются инструментом, которому не до конца доверяют, не из-за слабости, а из рационального расчёта. Модель мгновенно даёт черновик: каркас решения, заготовку теста, объяснение незнакомого кода, первый вариант миграции. Черновик экономит часы, даже если вы собираетесь переписать его целиком. Но раз вы не доверяете ему полностью, вы не отправите его в прод без проверки — и в этом вся разница между использованием и слепым доверием. Скепсис здесь — не сопротивление прогрессу, а профессиональный фильтр, и именно он превращает скорость ИИ из угрозы в преимущество.

Доверие и проверка работают в паре. Доверие без проверки — это выкат кода, который «выглядит правильно» и ломает прод в пятницу вечером. Проверка без доверия — это паралич, при котором команда не использует инструмент, способный убрать рутину. Продуктивная команда живёт в промежуточной зоне: она активно пользуется ассистентом для черновиков, рутины и исследований и так же активно пропускает результат через код-ревью, тесты и здравый смысл — trust but verify.

Важнее всего культура вокруг этой проверки. В команде должно быть безопасно сказать «мне это не нравится» и «я этому не доверяю» — без риска прослыть ретроградом. Когда энтузиазм по поводу ИИ давит на тех, кто сомневается, проверка превращается в формальность, а формальность рано или поздно пропускает поломку. Скептик, который готов разобрать сгенерированный код и объяснить, почему он здесь опасен, в эпоху усилителей — не балласт, а ключевой актив. Именно его суждение — вместе с эмпатией и опытом — заполняет пробел между тем, что модель может написать, и тем, что системе действительно можно отдать.

Вывод: человек ведёт, ИИ ускоряет

Вернёмся к табло ICPC. Да, машины выиграли — но выиграли они в закрытом мире, где задача сформулирована, ответ единственный, а проверка мгновенна. Реальная разработка не такая: она про людей, невысказанные требования, компромиссы, риски и ответственность за то, что будет работать годы. В этом мире ИИ не замена инженера, а усилитель — инструмент, который делает быстрее и сильнее ровно то, что организация уже умеет делать хорошо.

Данные DORA 2025 показывают это на практике: скорость ИИ приносит пользу только в связке со стабильностью поставки, а стабильность обеспечивают не модели, а зрелые практики и люди, которые за ними стоят. Семь практик из отчёта — политика, данные, доступ к внутренним знаниям, контроль версий, мелкие партии, эмпатия и платформы — не новомодные техники, а фундамент, цена которого в эпоху усилителей выросла в разы.

Сама профессия при этом не исчезает — она смещается. Роль разработчика меняется от «пишу код строка за строкой» к «веду разработку, направляю, сужу и отвечаю за результат». Машина берёт на себя исполнение, человек остаётся с тем, что исполнением не является: пониманием задачи, эмпатией к пользователю, суждением о рисках и ответственностью за последствия. Это связка, которую авторы исследования описывают как human-led, AI-accelerated — человек ведёт, ИИ ускоряет.

Соревнование по программированию машины выиграли. Но соревнование по созданию программного обеспечения, которое приносит людям пользу, всё ещё в самом разгаре — и в нём человек не соперник машины, а её ведущий. Профессия меняется, но не заканчивается: тем, кто строит крепкий фундамент, учится проверять и не боится доверять своей команде, ИИ даёт не замену, а суперсилу.

Похожее