🤖 Разработка, усиленная AI-агентом
Меня спросили, как я использую AI в разработке. Решил поделиться в новом посте.
Где агент — отличный помощник:
- Поиск и исправление багов по логам с продакшена. Задача может быть буквально такой: «Вот ошибка, найди и исправь». Агент ищет по всему проекту, предлагает правки.
- Генерация тестов и обновление документации.
- Исследование кодовой базы, оценка масштаба изменений.
С новыми фичами сложнее. Агент может проанализировать код и предложить архитектуру, но без уточнений он выберет решение, которое разработчик посчитает ошибочным для данного проекта. Просто «сделай форму заказа» не работает.
Поэтому я делаю так: 1. Декомпозиция. Разбиваю задачу на маленькие шаги в виде чек-листа. При проработке исходного ТЗ (уточняю, преобразую в чек-лист) часто всплывают скрытые проблемы.
2. Выбор долгосрочного решения. На каждом шаге можно прикинуть, как лучше сделать для будущего. AI помогает быстро оценить масштаб изменений — отложить рефакторинг или сделать сейчас.
3. Пошаговая реализация. Агент делает один маленький шаг, я проверяю результат, прогоняю тесты и линтеры. Без такого контроля легко накопить технический долг.
4. Тесты и документация — тоже с помощью агента, параллельно с кодом, а не после. Тесты должны доказывать, что всё работает правильно.
Мой вывод: AI-агент хорош для маленьких итераций, но без контроля накапливает техдолг. Поэтому я не даю ему задач на неделю, а проверяю каждый шаг.
А как вы используете AI-агентов в своей работе? Делитесь опытом 👇
· 25.06
Для имплементации фичи для агента готовится спека. Спека после уточнений агента пилится на вертикалтные слайсы, по каждому слайсу предварительно готовятся тест-кейсы. К слайсу вяжется ишшу в гите. Потом берешь ишшу, берешь спеку, берешь tdd на основе подготовленных тесткейсов, и по кусочкам все это кормишь агенту. Потом просишь показать чего получилось протестить. Тестишь, правишь. В ходе работы следишь чего агент творит. Если фигню какую-то - корректируешь его и откатываешь последние изменения, но обычно, если ты хорошую спеку сделал, то он особо ерундой не занимается. Ну и все. Сидишь, удовольствие получаешь.
ответить
коммент удалён
· 26.06
Андрей, спасибо за подробное описание вашего процесса.
Очень близкая мне ваша логика про вертикальные слайсы и TDD. Полностью согласен: тщательно проработанное ТЗ и документация, которая хранится и меняется вместе с проектом в одном репозитории, задаёт архитектуру и позволяет двигаться быстро.
Декомпозиция по пользовательским сценариям — отличный вариант для быстрого запуска. А когда заказчик требует для релиза всю функциональность по ТЗ, появляется возможность уделить время проработке технических слоев, чтобы позднее они не стали препятствием.
ответить
ответ удалён