Написание кода вручную уже уходит в прошлое
Ландшафт разработки программного обеспечения меняется стремительно, прямо сейчас.
Я более 15 лет занимаюсь инженерной работой в ИТ. Я ежедневно и активно использую ИИ-инструменты в работе: для разработки внутренних инструментов, автоматизации, аналитики и управления инфраструктурой.
Состав и интенсивность части моей работы связанной с написанием кода значительно изменилась за последний год.
Очень скоро мы будем относиться к написанию кода руками, как к приятным воспоминаниям из прошлого и нам будем этого не хватать.
Изменение состава и когнитивной сложности работы
Теперь инженерам всё чаще приходится становиться операторами: они уже не просто пишут код, а управляют целыми виртуальными командами инженеров, способных параллельно выполнять задачи с недоступной человеку степенью многозадачности. Это сильно меняет состав работы и повышает ее когнитивную сложность.
На прошлой неделе я поймал себя на том, что у меня одновременно открыто несколько активных агентских сессий с ИИ — каждая в разных проектах, с разными задачами, потоком и инструментами. В целом это нормальный режим для технического или проектного менеджера: им часто приходится одновременно управлять несколькими командами и проектами. Но это может быть в новинку для многих инженеров которым потребуется время и ресурсы на адаптацию.
Петля обратной связи
Думаю, многие, кто серьезно увлекался решением задач с помощью ИИ, сталкивались с такой ситуацией: вот еще чуть-чуть, еще пара исправлений, еще один вопрос, еще один ответ — и оно точно заработает как надо. Хотя, казалось бы, уже и так почти работает. Но еще совсем немного… и вот уже два часа ночи.
Почему так происходит? Примерно по той же причине, по которой затягивает лента в одном известном приложении с фотографиями и короткими видео. За короткий промежуток времени мы успеваем несколько раз разочароваться, обрадоваться, откатить изменения, начать заново — и пройти через несколько таких итераций подряд.
Многие из нас не привыкли работать в таком ритме обратной связи. Обычно результаты решения сложных задач приходят гораздо медленнее — через дни, недели, а иногда и месяцы. Это может ломать привычный цикл вознаграждения: сделал задачу — получил дофамин — молодец. Мы не привыкли получать настолько быстрые результаты по задачам, которые теперь способен решать ИИ. Со временем мы, конечно, адаптируемся, но прямо сейчас ситуация такова.
Командная и личная эффективность
Одно из ключевых преимуществ использования ИИ-агентских систем в разработке заключается в том, что весь проект или большую часть архитектуры потенциально может делать один инженер. Из процесса убирается самое дорогое и сложное — коммуникация.
Преимущества одиночной разработки с ИИ сложно перенести и на командную разработку.
Оценка результатов
Оценка в ИТ — тема для отдельной библиотеки. Но как теперь вообще понимать, что долго, что сложно и почему?
Теперь нам приходится формировать новую систему координат и заново переосмысливать сложность.
Заключение
Мы уже живем в таком будущем мире разработки программного обеспечения.
Эти изменения уже здесь.
Меня крайне вдохновляют современные инструменты и возможности последних генеративных моделей — это действительно что-то новое. Думаю, уже в ближайшее время процесс создания ИТ-проектов, даже в самых консервативных областях, ждут серьезные перемены.