Влияние ИИ на производительность разработчиков

Это одно из первых исследований на эту тему, в котором приняли участие почти 5 тыс. разработчиков из трех ведущих IT компаний. Важно, что это не лабораторное исследование, а в живых "полевых" условиях. Поэтому стоит обратить внимание на его результаты.

** Еще больше интересного в моем канале продуктовые штучки**

Какого эффекта ожидать от использования ИИ?

Ожидания в целом большие. Так, одни экономисты подсчитали, что генеративный ИИ может выполнять задачи более чем 80% рабочих мест в США, и вопреки представлениям, в первую очередь - высококвалифицированных профессий. Другие, однако, менее оптимистичны в отношении такого роста производительности.

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

Как проводилось исследование?

Методика

Проведено три рандомизированных контролируемых исследования (что важно!): в Microsoft, Accenture и IT компании из списка Fortune-100.

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

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

Участники

В случае Microsoft и Accenture тестовой группе разработчиков случайным образом был предоставлен доступ к GitHub Copilot, тогда как другая группа (контрольная группа) не имела доступа к инструменту в течение семи (Microsoft) или четырех (Accenture) месяцев. В эксперименте компании из списка Fortune 100 все пользователи получили доступ к инструменту в течение двух месяцев, но даты доступа были рандомизированы, и некоторые команды получили доступ на шесть недель раньше других.

В эксперименте в Microsoft (стартовал в сентябре 2022 года) приняли участие 1 746 разработчиков. Из них 50,4% были случайным образом выбраны для получения доступа к Github Copilot. Участники тестовой группы были проинформированы по электронной почте о возможности зарегистрироваться в GitHub Copilot. Помимо этого письма, участники, прошедшие лечение, не получили никаких дополнительных инструкций. Эксперимент завершился 3 мая 2023 года, поскольку растущая осведомленность об инструментах кодирования с использованием ИИ заставила участников контрольной группы искать доступ к Copilot.

Эксперимент в Accenture начался в июле 2023 года и проходил в Юго-Восточной Азии. Рандомизация происходила на уровне разработчиков, и 61,3% из 320 разработчиков попали в тестовую группу. Участники тестовой группы были проинформированы по электронной почте о возможности зарегистрироваться в GitHub Copilot. Они также приняли участие в обучающем тренинге. Контрольной группе был предоставлен доступ к Copilot в декабре 2023 года.

В компании из списка Fortune-100 эксперимент начался в октябре 2023 года. В нем приняли участие 3 054 разработчика, которые были приглашены использовать Copilot. Даты приглашений были рандомизированы, новые приглашения рассылались еженедельно в период с сентября 2023 года по октябрь 2023 года

Как оценивалась производительность

В этом исследовании изучается эффект одного из известных (наряду с Amazon CodeWhisperer и Replit Ghostwriter) ИИ инструментов — GitHub Copilot.

GitHub Copilot был разработан GitHub в партнерстве с OpenAI, значительный объем кода из публичных репозиториев GitHub использовался для обучения Copilot.

Когда разработчики пишут код или комментарии, Copilot анализирует контекст и генерирует соответствующие фрагменты кода, комментарии и документацию. Он может автоматически дополнять код или предлагать фрагменты, которые им в противном случае пришлось бы искать в Интернете. Это может сэкономить время разработчиков и потенциально улучшить качество кода. Однако, как и все инструменты на основе LLM, Copilot может совершать ошибки. Если разработчики будут полагаться на него без проверки, он может потенциально привносить ошибки и снижать качество кода.

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

Также используются три дополнительных параметра:

  • commit’ы” - процесс сохранения внесенных в код изменений в системе контроля версий.
  • build” / сборки кода- периодически разработчик будет собирать код, и можем наблюдать, как он собран.
  • успешная сборка как мера качества кода.

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

Для эксперимента Microsoft также был доступ к данным о дате найма и грейда в компании, что позволило провести анализ по опыту и стажу работы в компании.

РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ

Производительность разработчиков

Использование ИИ помощника при написании кода приводит к увеличению:

- выполненных задач на 26,1%

- обновлений кода (коммитов) на 13,6%,

- сборок кода на 38,4%.

Показатели в контрольной и тестовой группах: средняя параметра (mean), среднее отклонение (SD), разница между тестовой и контрольной группами и критерий значимости (p-value). <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник</a><br />
Показатели в контрольной и тестовой группах: средняя параметра (mean), среднее отклонение (SD), разница между тестовой и контрольной группами и критерий значимости (p-value). Источник

Примечание к таблице. Для каждого параметра представляется ее среднее значение и стандартное отклонение (SD) в контрольной группе и в тестовой группе. Также показывается разница средних значений в этих группах и p-value, характеризующее разницу в средних значениях. Чем меньше p-value, тем меньше вероятность получить реально наблюдаемые вами данные при условии, что искомого эффекта нет

Таблица 2 показывает, что для всех параметров во всех компаниях (за исключением комитов в Accenture) показатели тестовой группы превосходят среднее значения до эксперимента, иногда — существенно.

Результаты исследования отдельно по компаниям, взвешенные. <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник </a><br />
Результаты исследования отдельно по компаниям, взвешенные. Источник

Принятие Copilot

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

На рисунке 1 представлены показатели принятия Copilot в трех компаниях.

Уровень принятия Copilot в трех компаниях. <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник</a>.<br />
Уровень принятия Copilot в трех компаниях. Источник.

В течение первых двух недель эксперимента в Microsoft только 8,5% разработчиков тестовой группы зарегистрировались на GitHub Copilot. Такой низкий показатель внедрения мог быть обусловлен невнимательностью к анонсу по электронной почте. Microsoft отправил два напоминания, и эти письма увеличили принятие до 42,5%.

Первоначальное принятие в контрольной группе также не было идеальным: 0,5%. По завершении эксперимента в апреле 2023 года, когда контрольной группе был предоставлен доступ к Copilot, наблюдался быстрый темп принятия в контрольной группе. Однако к январю 2024 года принятие в контрольной группе оставалось ниже принятия в экспериментальной группе.

Принятие Copilot в Accenture шло быстрыми темпами в начале эксперимента (график (b)), но через 1-2 месяца достигла плато в 60%. Когда контрольной группе предоставили доступ в декабре 2023 года, то был виден более медленный, но устойчивый рост принятия. К апрелю 2024 года скорость принятия в экспериментальной группе составила 69,4%, в то время как уровень принятия в контрольной группе был 24,4%.

График (c) показывает поэтапное приглашение к Copilot и уровень принятия среди всех участников исследования в компании из Fortune-100. Все разработчики получили доступ к Copilot в течение шести недель. После завершения рассылки приглашений уровень принятия вышел на плато, показав небольшой рост в течение оставшегося срока эксперимента.

Уровень принятия Copilot удивительно схож во всех трех компаниях и существенно ниже 100%; при этом около 30-40% инженеров даже не пробовали инструмент.

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

В Microsoft видно положительное влияние Copilot на количество пул реквестов, коммитов и сборок кода. Однако только влияние на количество пул реквестов статистически значимо.

В Accenture и компании из Fortune-100 исследователи находят сопоставимые размеры эффекта, но эти эффекты не имеют статистической значимости.

Использование Copilot в зависимости от стажа и опыта работы

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

Принятие Copilot в зависимости от стажа работы в компании (а) и опыта разработчика (b). <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник</a><br />
Принятие Copilot в зависимости от стажа работы в компании (а) и опыта разработчика (b). Источник

Разработчики-новички в компании на 9,5 процентных пунктов (84,3% против 74,8%) более склонны использовать Copilot, что согласуется с предыдущими исследованиями. Тот же эффект имеет место для разработчиков с небольшим опытом работы, которые на 5,3 процентных пункта (82,1% против 76,8%) чаще склонны использовать, хотя разница в принятии немного меньше в этом случае.

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

Использование Copilot после принятия в зависимости от стажа работы в компании (а) и опыта разработчика (b). <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник</a>
Использование Copilot после принятия в зависимости от стажа работы в компании (а) и опыта разработчика (b). Источник

Старожилы примерно на 4,3% (или на 1,0 процентный пункт) менее склонны принимать предложенный Copilot код.

При сравнении разработчиков на младших и старших позициях в компании эта разница в показателях принятия Copilot намного меньше и составляет 1,8% (или 0,5 процентных пункта), хотя тренд тот же: опытные разработчики с меньшей вероятностью принимают предложения ИИ по коду.

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

Разработчики-новички в компании увеличивают свою производительность на 27–39%, в то время как разработчики-старожилы - с 8% до 13%.

Принятие предложений от в в зависимости от стажа работы в компании (слева) и опыта разработчика (справа). Новички / неопытные разработчики - синим, старожилы / опытные разработчики - красным. <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fpapers.ssrn.com%2Fsol3%2Fpapers.cfm%3Fabstract_id%3D4945566&postId=1463379" rel="nofollow noreferrer noopener" target="_blank">Источник</a>
Принятие предложений от в в зависимости от стажа работы в компании (слева) и опыта разработчика (справа). Новички / неопытные разработчики - синим, старожилы / опытные разработчики - красным. Источник

Младшие разработчики увеличивают свою производительность на 21–40%, в то время как опытные разработчики получают более скромную выгоду: их производительность растет с 7% до 16%.

Пожалуйста, поддержите меня, поставьте лайк!

33
1 комментарий

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