ИИ может ликвидировать рабочие места разработчиков, а может и не ликвидировать, но он определенно изменит методы работы разработчиков и, возможно, поменяет названия должностей, отмечают опрошенные порталом The New Stack эксперты.

Дарио Амодей, генеральный директор компании Anthropic, заявил в марте, что через три-шесть месяцев ИИ будет писать 90% кода, который пишут разработчики ПО. Хотя сроки могут быть фантастическими, реальность такова, что ИИ меняет то, как выглядит разработка, и может изменить распределение обязанностей разработчиков — объединить фронтенд и бэкенд и, возможно, вызвать другие изменения в нашем представлении о том, кто чем занимается в ИТ.

Например, один из разработчиков фронтенда, ставший разработчиком бэкенда, рассказал, что недавно использовал ИИ, чтобы за считанные минуты создать полный фронтенд для разработанного им приложения. Он просто выбрал систему дизайна и сказал ИИ, что нужно создать, — и готово. «Мне не пришлось беспокоиться о библиотеках», — добавил он. По всей видимости, он получил много комплиментов по этому поводу.

Это реально: беспокойство разработчиков по поводу ИИ

Ли Робинсон общается со многими фронтенд-разработчиками в качестве вице-президента по работе с разработчиками компании Vercel, которая курирует фреймворк Next.js и является хостинг-провайдером. «Существует много беспокойства по поводу ИИ и создания ПО в целом, не обязательно только фронтенда или бэкенда, но люди справедливо пытаются понять, что это значит для их карьеры, — говорит он. — Если нынешние темпы развития ИИ сохранятся, то как все будет выглядеть через 1, 2, 3, 4 года? Изменения могут быть довольно значительными. Так что многие люди сейчас переоценивают, что для них важно в карьере, на чем они хотят сосредоточиться».

Армандо Франко также видит беспокойство относительно ИИ. Он является, директором по модернизации технологий TEKsystems Global Services, в которой работает более 3000 человек и которая является частью TEKsystems, крупной международной компании по управлению ИТ-услугами, в которой работают 80 000 ИТ-специалистов.

Франко предполагает, что разработчики, которые больше всего обеспокоены, возможно, не полностью осведомлены о том, в каком состоянии находится эта технология. «Нам нравится держать наших сотрудников как можно теснее связанными с технологиями, — говорит он. — Мы хотим, чтобы у них было ощущение того, что мы называем непрерывным инжинирингом или непрерывным экспериментированием, чтобы они чувствовали себя уверенно, если появится новая технология, новый инструмент, чтобы они могли освоить его, а мы окажем им в этом поддержку».

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

Отделяя страх от реальности

Джош Комо, независимый фронтенд-разработчик и тренер, утверждает, что даже если ИИ генерирует некоторое количество кода, это не означает, что он заменит разработчиков. Он обращает внимание на заголовок статьи в Forbes «ИИ пишет более 25% кода в Google — каким видится будущее инженеров-программистов?». «Заголовок статьи звучит так, будто ИИ выполняет 25% работы, а человеческие разработчики — остальные 75%, но на самом деле это не так. На мой взгляд, этот заголовок вводит в заблуждение, — отмечает Комо. — ИИ, возможно, генерирует 25% кода, который фиксируется в Google, но он не действует независимо». Насколько ему известно, на самом деле 100% кода в Google по-прежнему создается разработчиками, хотя ИИ может быть одним из инструментов, который они используют для этого.

Это не первый случай в истории, когда люди беспокоятся о новых технологиях, отмечает Шрея Дешпанде, старший аналитик исследовательской компании Everest Group, специализирующийся на данных и ИИ. «Опасения, что ИИ заменит разработчиков, отражают исторические тревоги, наблюдавшиеся во время смены технологий в прошлом, и, как показывает история, эти опасения часто оказываются неуместными, — говорит она. — ИИ будет все больше автоматизировать повторяющиеся задачи разработки, но роль разработчика будет скорее развиваться, чем исчезать — она сместится в сторону таких видов деятельности, как оркестровка ИИ, системное мышление и внедрение механизмов управления и безопасности в рабочие процессы, основанные на ИИ».

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

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

Но понравится ли такая роль разработчикам? Учитывая, как сильно жалуются многие разработчики корпоративного ПО, когда им приходится исправлять код, созданный кем-то другим, скорее всего не понравится.

К счастью, Дешпанде и другие считают более перспективным мир, в котором разработчики повышают квалификацию и находят новые специализации. Она указывает на аналогичную адаптацию, которая произошла с облачными технологиями и low-code. Мы уже наблюдаем нечто подобное в тенденции вайб-кодинга.

«Организациям следует признать, что узким местом на пути реализации всего потенциала ИИ будет грамотность в области ИИ и гибкость персонала, а не нехватка людей-разработчиков, — говорит Дешпанде. — Успех будет зависеть от переосмысления ролей разработчиков и инвестирования в динамичные стратегии повышения квалификации, а не от сокращения штата».

Франко также оптимистичен в отношении того, что ИИ и большие языковые модели (LLM) заменят заучивание кода, оставив разработчикам возможность сосредоточиться на более творческих задачах. «LLM не являются всезнающими. Они не всемогущи. Наша обязанность — помочь им понять, в чем заключается требование, а затем доработать его, — говорит он. — Ответственность за формирование решения по-прежнему лежит на разработчиках, и это просто поможет им развиваться немного быстрее».

Как разработчики могут подготовиться к ИИ

Во-первых, не паникуйте и не уходите из ИТ, советует Франко. «Если вернуться на 20 лет назад, то раньше были инженеры по инфраструктуре, инженеры по базам данных, сетевые инженеры. По мере того как мир развивался или переходил к DevOps и облачным вычислениям, они становились инженерами DevOps, а теперь они становятся инженерами платформ, — говорит он. — Поэтому я бы сказал всем, кто работает в сфере технологий: „Нет, не уходите“».

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

Рекомендации Робинсона просты: перестаньте зацикливаться на том, как вы разрабатываете, и сосредоточьтесь на создании продуктов и обеспечении ценности для бизнеса.

«Если ИИ будет писать за нас все больше и больше кода, а люди перейдут на роли архитекторов и рецензентов, мы все равно будем писать код, — говорит он. — И в этом мире будет все меньше вопросов о том, могу ли я сделать CSS, могу ли я создать API, могу ли я сделать фронтенд, могу ли я сделать бэкенд? Речь будет идти скорее о том, какую функциональность я хочу добавить в продукт, чтобы сделать его успешным, увеличить доход бизнеса, решить болевую точку клиента. Вот где происходит создание ценности».

По словам Франко, не помешает также изучить безопасность, поскольку ИИ приведет к тому, что обеспечение безопасности «сдвинется влево» — то есть переместится в область разработки — еще больше, чем это уже произошло.

Разработчикам также придется обучать ИИ, знакомя его с лучшими практиками и мандатами организации, добавляет он. Он рекомендует разработчикам практиковаться в работе с ИИ в качестве «второго пилота», а также в выдаче подсказок для выполнения повседневных задач и просто в общении с ним.

«Я думаю, что ошибка номер один, которую совершают люди, обращаясь к ИИ, независимо от того, нужен ли он для разработки кода или для проведения исследований, — это то, как вы обращаетесь к нему, — говорит Франко. — Многие люди думают, что им нужно изменить манеру речи и говорить с LLM в какой-то структурированной манере, чтобы она поняла. На самом деле, это совершенно неверный подход». Будьте конкретны, но понимайте, что LLM может обучаться тому, как вы говорите, советует он. По его словам, результаты будут лучше, если модель будет подстраиваться под вас, а не вы будете менять то, как вы с ней разговариваете.

И прежде всего не оставайтесь в стороне, добавляет Франко. «Это просто новый инструмент в вашем арсенале, — говорит он. — Привяжитесь к нему и научитесь им пользоваться, и это сделает вас лучшим технологом».