Skip to the content.

:robot: C++ разработчик и искусственный интеллект

С появлением моделей, уверенно пишущих код, у многих начинающих разработчиков возник закономерный вопрос: а стоит ли вообще заходить в профессию? Вопрос честный, и отмахиваться от него «да ерунда, всё будет как раньше» неправильно. Давайте разберёмся, что происходит на самом деле.

Короткий ответ: инженеры нужны, но планка сместилась. Ниже - почему.

:dna: ИИ воспроизводит то, чему его учили

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

Ровно отсюда растут и её ограничения:

:warning: Почему в C++ цена ошибки выше

В языках с управляемой памятью неверный код обычно падает громко и сразу. В C++ это не так.

Вывод простой: принимать можно только тот код, который вы способны проверить. А чтобы проверить код на C++, нужно знать C++ не хуже, чем при написании вручную. Инструменты в помощь - санитайзеры, статические анализаторы, фаззинг - описаны в статье Инструментарий для С++.

:bulb: Узкое место разработки - не скорость набора кода

Это самое важное. Работа инженера никогда не сводилась к печатанию символов. Она состоит из:

Ни одну из этих задач нельзя делегировать модели - не потому, что она «недостаточно умная», а потому, что это вопросы про людей, деньги и ответственность. Если приложение навредит пользователю, отвечать будет компания и конкретные инженеры, а не инструмент. В областях, где ПО сертифицируется - медицина, авионика, автомобили (см. Стандарты и регуляторные требования) - это уже не философия, а буквальное требование: под результатом стоит подпись человека.

Ещё одно наблюдение, известное задолго до нейросетей: читать чужой код труднее, чем писать свой. Когда кода становится больше, а пишется он быстрее, узким местом становится не написание, а понимание и ревью. Это работа для инженера, и её объём скорее растёт.

:chart_with_upwards_trend: Что действительно меняется

Было бы нечестно сказать, что ничего не происходит. Происходит, и вот что видно уже сейчас:

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

:hourglass: Ловушка для тех, кто только учится

Самый серьёзный риск ИИ для начинающего разработчика - не «отнимет работу», а помешает научиться.

Навык вырастает из борьбы с задачей: вы пробуете, ошибаетесь, разбираетесь почему, и в голове остаётся модель происходящего. Если на каждом затруднении сразу спрашивать у ассистента, задача решится, а модель в голове - нет. Через год такой практики окажется, что проверить ответ ассистента нечем.

Что с этим делать:

:handshake: Как пользоваться с пользой

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

:telescope: Чего никто не знает

Честно: как будет выглядеть профессия через десять лет, не знает никто - ни авторы этой карты, ни авторы самих моделей. Любой, кто уверенно предсказывает и «всех заменят», и «ничего не изменится», выдаёт желаемое за факт.

Что можно сказать с уверенностью: спрос на людей, которые понимают, как работают системы, и способны отвечать за результат, пока никуда не делся. Инструменты в разработке менялись всегда - ассемблер, компиляторы, IDE, автодополнение, поиск в интернете. Каждый раз звучало «теперь программировать сможет кто угодно», и каждый раз работы становилось больше, а не меньше, потому что дешевеющая разработка открывала новые задачи. Нынешний виток может оказаться и другим - но ставить на то, что глубокие знания вдруг обесценятся, пока оснований нет.


На главную страницу