Как применение нейросетей в разработке усугубляет дефицит кадров

Логотип компании
Как применение нейросетей в разработке усугубляет дефицит кадров

Изображение создано нейросетью на shutterstock.com

Когда ИИ в программировании — благо, а когда — вред, разбирался IT-World.

Как показало свежее исследование GitHub, 97% программистов в мире применяют в работе нейросети. Действительно, искусственный интеллект (ИИ) упрощает и ускоряет процесс создания новых решений. Но есть и обратная сторона медали — привыкание к нейросетям катастрофически снижает компетенции разработчиков и увеличивает расходы бизнеса при использовании результатов совместного труда человека и машины. Когда ИИ в программировании — благо, а когда — вред, рассказывает Кирилл Семион, генеральный директор АНО «Национальный центр компетенций по информационным системам управления холдингом» (НЦК ИСУ).

Специалисты разных профессий применяют нейросети для автоматизации простых операций. Главное, что получают люди от использования ИИ, — это ускорение выполнения многих задач. Именно для этого технологию используют и в ИТ-разработке. Есть даже специализированные нейросети и ИИ-помощники, такие как Copilot от GitHub, которые нацелены на написание кода.

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

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

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

Сэкономив на этапе проектирования и запуска, разработав решение быстрее и меньшими силами, компания соглашается на заведомо завышенные расходы при его эксплуатации. Потому что софт становится более «тяжелым» и требует более мощного «железа». У него больше точек уязвимости и, как следствие, его дороже обслуживать.

Как применение нейросетей в разработке усугубляет дефицит кадров. Рис. 1

Можно сделать наоборот. Пожертвовать сроком разработки и вложить средства в привлечение опытных программистов, получив более эффективное решение в эксплуатации.

Единственно верного выбора здесь не существует — каждый раз нужно расставлять приоритеты.

Эффект Lego

Еще одно последствие использования нейросетей при разработке ИТ-решений — интеллектуальная деградация специалистов, которые становятся неспособны самостоятельно решать задачи. В частности, об этом говорит Рашад Филизер в своем исследовании влияния Copilot на компетенции разработчиков.

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

Но сегодня никто не покупает кубики Lego, в магазинах продается набор для готовой инструкции. Следуя описанным шагам, можно собрать, например, самолет. Но если выбросить инструкцию, а самолет случайно упадет и рассыпется на части, мало кто сможет самостоятельно вновь собрать его.

Проблема дефицита кадров в ИТ за счет автоматизации разработки с помощью нейросетей не решается, она может даже усугубиться. Нейросети упрощают процессы на начальном уровне программирования. Это стандартные операции, которые часто поручают «джунам» (молодым неопытным кадрам). А их на рынке сегодня более чем достаточно.

Например, такой эксперимент провела Google: по итогам собеседования ChatGPT мог претендовать на работу программиста начального уровня.

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

Концепция второго пилота

Искусственный интеллект не может заменить человека еще и потому, что он не является субъектом права, а только его объектом. Он не способен брать на себя ответственность за решения и результат. Более того, ее не готовы брать на себя и производители ИИ.

В пользовательском соглашении большинства ИИ-сервисов есть оговорка, что вся ответственность за последствия применения искусственного интеллекта лежит на пользователях. Это касается, например, автопилотов в автомобилях. Человек по договору обязан сидеть в водительском кресле, держать руки на руле и в случае ошибки автопилота скорректировать машину. ИИ-помощники для программистов также далеки от совершенства.

Читайте также
IT-World расскажет о комплексном подходе к мотивации сотрудников, который позволяет удерживать ценных специалистов и создавать условия, в которых они могут развиваться и приносить максимум пользы для себя и компании.

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

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

Что дальше

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

Как применение нейросетей в разработке усугубляет дефицит кадров. Рис. 2

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

А те программисты, которые не будут регулярно перекладывать работу на нейросети, будут стремиться развиваться и выполнять самостоятельно сложную работу, смогут стать востребованными и высокооплачиваемыми профессионалами. И нейросети им в этом помогут, забирая на себя рутинные простые операции. Здесь дело во внутренней мотивации и должном образовании.

ИИ в разработке не заменяет человека (как и в большинстве других отраслей), а только помогает сделать то, что специалист умеет. Если относиться к технологии с такой позиции, можно избежать кадровой «ловушки» и получить максимально возможный эффект от ее применения.

Опубликовано 11.10.2024

Похожие статьи