От идеи до аварии: на каком мы свете с ИИ

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

Меня, как ты, возможно, прочитал выше, зовут Арсентий Гусев, и я занимаюсь управлением людьми, чаще в высокотехнологичных проектах.

Несколько вещей, которые беспокоят меня

Представь: делаем мы с тобой технологический проект, обрисовали, что хотим сделать, сформировали план на 2 года, защитили, получили ресурс. Наняли команду. Великолепного менеджера по продукту с огромным опытом, лида инженеров, наняли костяк команды инженеров, подготовили инфраструктуру и всё прочее. Настроили все процессы, спринты, ревью, научили людей общаться друг с другом. Везде, естественно, есть локальные проблемы. Но механизм работает, и люди прекрасно общаются, продукт развивается, обрастает пониманием и функционалом. Клиенты тоже довольны, поддержка работает как часы. Казалось бы, всё: мы представляем, как работают команды, ходим, читаем лекции, выступаем и делимся опытом. Продукт работает, но что-то идёт не так. Прошла презентация новой модели ChatGPT. Вроде бы изменений сильных нет. Но лично я перестал отправлять людей гуглить (или яндексить, но слова такого в обиходе — нет), всё чаще отправляю спросить у нейронки. Так ведь быстрее, не нужно ссылки искать, да и понятнее. И Stack Overflow тысячу лет не открывали.

Тогда я первый раз понял, что моя жизнь и повседневный быт — поменялись. Точно так же, как когда-то с появлением мобильного телефона.

Тогда я задумался: а где же мои задачи как руководителя и архитектора процессов изменились?

Разведка

Я стал присматриваться к своим сотрудникам более пристально. Мои глаза и разум — мои самые главные друзья. Как ты думаешь, что я увидел?

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

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

Наблюдение номер три. Директор на собрании сказал, что в целом не против оплатить всем, кто подал заявки, подписки на их новые ИИ-сервисы.

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

Наблюдение номер пять. Сеньоры, кстати, расстраивались. Они чувствовали себя ненужными. А после разговоров с парочкой из них за кофе я услышал две крамольные вещи, причём от них: «Да сейчас уже всё равно, лучше Rust или C++» и «Что-то заняться нечем, все свои пет-проекты я уже закончил…».

В целом, сеньоры всегда любят побурчать… А так показатели, кажется, только улучшились, значит, и смысла вмешиваться в этот процесс особенно нет. Я занял выжидательную позицию. Но вирус довольно быстро начал развиваться.

Наблюдение номер один. Вторая фаза. Мои продакты всё чаще приходили на встречу и просили нанять им вайбкодера в команду. Рассказывали, как сами они внезапно изучили Python и Ansible и за одну ночь смогли написать то, что уже год просят от нашей разработки. У них появились синяки под глазами. А когда их теперь спрашиваешь, какая стратегия продукта на 2 года вперёд и что у нас там с конкурентами и их планами, получаешь полное недоумение. Честно говоря, подумываю их уволить и поменять на других: они совсем забыли про продукт.

Наблюдение номер два. Вторая фаза. Мои разработчики разделились на два лагеря. Некоторые почуяли вкус жизни, захотели перевестись в тёплую страну на удалёнку и больше времени тратить на серфинг. Таких я сразу помечал к увольнению при первых звоночках (да, конечно, я им и завидовал тоже). Другие удивили меня тем, что стали больше спрашивать про продукт. «Какие у нас цели?», «Какой функционал планируем продавать в следующем году?», «Есть ли в проекте сейчас какие-то боли?». Приходили даже с наработками по смене стека. Я искренне поставил себе пометку взять разработчиков менеджерами по продукту, самых социально адаптированных, естественно.

Наблюдение номер три. Вторая фаза. Приходил директор и на собрании сказал, что нужно срочно внедрять ИИ. Так мы увеличим производительность втрое и сможем резко сократить число сотрудников. Но вот на мою просьбу показать опыт других компаний, где такое получили, ответа не последовало. Пара ссылок оказалась потолком роста конкретных продуктов. На мой вопрос, всем ли мы одобряем расширенные подписки (потому как обычных лимитов никому уже не хватает), мне рассказали, что денег в таком количестве у нас нет. А ещё пришли безопасники и задали вопрос: а не передают ли сотрудники наш код и личные данные за границу? Запрос на закупку локального сервера ИИ на 35 миллионов от отдела инфраструктуры финансовый директор тоже завернул. Директор также пожаловался, что его Opus и любимый VPN заблокировали.

Наблюдение номер четыре. Вторая фаза. Стажёры замкнулись в себе. Они больше не просили помощи, а их коммиты сеньоры всё чаще отвергали без объяснений. Я было решил, что это обида за утраченное внимание. Полез в код и увидел, что его качество сильно упало, а вот количество превысило все мыслимые барьеры. Стало понятнее. Я бы тоже не утруждал себя чтением 2000 строчек, если задача была — найти баг и поправить 2 строчки, поняв логику предыдущего разработчика. Количество циклов приёмки МР на автотестах тоже сильно выросло — такое чувство, что хотели взять итерациями.

Наблюдение номер пять. Вторая фаза. Сеньоры стали больше внимания уделять публичности. Или просмотру сериалов. Самых ценных сманили в компании AI-free. Разрабатывать то, куда нейронки пускать боятся. Kernel, Military, NFT, Market. Они даже перестали просить билеты на High Load, уж больно им надоело слушать про ИИ.

Оценка рисков

Увиденное сильно меня обеспокоило, ведь тенденция крайне негативная. И я полез в свои заметки по процессам. Первое, что я увидел, — это схема.

От идеи до аварии: на каком мы свете с ИИ - 1

Смотреть надо на весь процесс сразу. Для этой статьи я его сильно ужал.

Цикл

Что нарушилось

Риск

Последствие

Продукт

Продакты приносят исследования без тикета и наброски на стеках, которых у нас нет. Обругать и поставить в очередь больше нечего

За ночь сами пишут на Python то, что год просят у разработки, и клянчат вайбкодера. Код потом некому держать

Про стратегию на два года и про конкурентов — недоумение. Разработка лезет на место продакта

Инженер

Вместо отладки генерируют. Дифф на ревью уже не прочитать

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

Одни метят на удалёнку и серфинг. Другие приходят спросить, какие у нас цели и что продаём в следующем году

Поставка

На собрании вместо метрик и инцидентов — внедрить, сократить, запретить. Про людей, рост команды и безопасность там забыли

Обещают втрое меньшим составом. Ревью и дежурство режут вместе с людьми. Лимитов подписок уже не хватает, сервер за 35 миллионов финансы завернули, код сидит в личных аккаунтах

Опыта других компаний директор не показал. Инцидент разбирать некому, замены инструменту так и нет

Интеграция

Стажёры сеньоров больше не достают. Сеньоры отклоняют коммит и не пишут, почему. Читают меньше, объясняют отказ тоже

На баг в две строки приносят две тысячи. Приёмка гоняется по автотестам, пока не позеленеет

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

Память

Почему система устроена так, уже не записывают. Пет-проекты закрыты, билеты на High Load больше не просят: слушать про ИИ надоело

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

Мерж кто-то подписывает. Кто ещё помнит, как это устроено, — тех уже разбирают

Don’t Panic!

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

От идеи до аварии: на каком мы свете с ИИ - 2

Как вы можете заметить, картинка процесса в итоге радикальных изменений не претерпела. Циклов осталось то же самое количество. Но вот их названия и форма претерпели некоторые изменения.

Продукт

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

Код и первичные MVP, которые набросали менеджеры по продукту и аналитики, пусть лежат отдельным репозиторием и остаются без поддержки. Они нужны, только чтобы спецификация получилась точнее. Это и есть SDD, specification-driven development: сначала текст, о котором можно поспорить. Python с которым продукт упражняется по ночам, некому сопровождать в реальной жизни.

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

Разработчиков в продукт лучше не брать. Идут они туда за быстрым и очень нестабильным результатом. Продукт их интересует постольку-поскольку.

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

Агент

Разработчик сильно поменял вид деятельности. Ну по крайней мере рядовой. Руководитель команды разработки и технический лидер команды — не поменяли своей роли. Они всё так же устанавливают правила, архитектуру, формулируют задания, контролируют результат.

Просто результата стало в разы больше, и они стали отвечать за весь этот бессвязный поток. Им без помощи уже не справиться. Любой разработчик теперь микроменеджер и отвечает за своих покемонов (агентов).

Правки потеряли соразмерность задаче, и всем кажется, что команда стала быстрее. Эту проблему закрываем ограничением маленького диффа под спецификацию. Дифф сидит в том куске, который спецификация уже назвала, а не затрагивает код по всей системе. Так устроен DDD (domain-driven design), скилл агента держит эти границы, и запрос на проверку снаружи них нет смысла изучать. Метрику при этом стоит закрепить публично: закрытые задачи, возвраты задач на доработку и время до вливания кода. На реальных задачах опытные люди стали медленнее на 19% и после этого верили, что ускорились на 20%. Около трети почти не доверяет сгенерированному коду, а сэкономленное на письме возвращается налогом на проверку. Инженера, который пошёл заниматься продуктом за продакта, в продакты лучше не переводить. Он просто заполнил вакуум, пока продакт писал на Python. Быть разработчиком ему обычно нравится больше.

Поставка и директор

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

Но оглянитесь наверх. Люди этими штуками уже пользуются и срезают себе время. Догоняющие тут конкретно вы с директором. Вы ведь не поменяли ещё должностные инструкции? А набор обязанностей изменился.

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

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

Интеграция

Стиль, известные дыры, зависимости и упавшие тесты пусть смотрит машина. Человека оставляю на архитектуре, безопасности и на коде, в котором команда не уверена. Дифф не должен переписывать тесты, подгоняя их под новый нейрослоп. Отсюда TDD, test-driven development. Тест на то, что нельзя сломать, пишут раньше кода, и он обязан покраснеть, если агент соврал. Генерацию, тесты и ревью разношу по разным контурам, чтобы один ход мысли не поставил себе зачёт.

С человека здесь мы начинаем спрашивать другое: почему так решили и чем рискуем.

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

Память

А вот учить людей больше не требуется. Как не требуется и рассказывать много об устройстве системы и почему всё сделано именно так. Агент + LLM теперь гораздо быстрее, качественнее и уж точно куда терпеливее сможет на это ответить. Причём без пары-тройки укоризненных взглядов за незнание основ. Так что стажёров можно понять.

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

Есть, правда, и кое-что новенькое. За документацию теперь спрашиваю жёстче. Раньше с ней тоже была масса проблем. Но у людей контекст сильно шире, чем у нейронок, и, входя в команду, ваши разработчики много запоминали про систему. Теперь код за них пишут агенты. Отдать им то, что помнишь сам, можно двумя путями: оформить это в скилл или качественно вести архитектурную документацию и разборы инцидентов. Новый KPI я всё чаще привязываю к этим записям: собираю их в RAG и отдаю агенту через MCP. Для тебя это неизвестные слова? Можно почитать по этим двум ссылкам. Файл, который лежит в стороне от задачи, агент не откроет.

Вывод

Вот и все изменения для меня в новом мире AI-разработки.

Не успели мы ещё оправиться после Scrum и уволить оставшихся scrum-мастеров, как нас накрыло волной.

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

А сейчас мы с вами плохие руководители. Почему? Потому, что не все должностные инструкции сотрудников еще переписаны, а мир уже безвозвратно изменился. Интеллект и работу на которую мы раньше тратили кучу времени сотрудников, уже можно осязаемо покупать за оплату токенов. Но дешевле эта работа не стала. Быстрее? Может быть. Но если не хватает бюджетов, все еще придется довольствоваться снижением качества. Как работы сотрудников, так и качеством локальных LLM.

Про такие сдвиги в командах и процессах я пишу в The tough case.

Автор: xitren

Источник

Оставить комментарий