До тексту

Чи варто техліду вже готувати інструкції для AI в команді?

·4 хвилини

AI — вже не просто інструмент. Це помічник, якого можна підключити до щоденної розробки. Але як і будь-який новачок у команді — він ефективний лише тоді, коли має чіткі інструкції.


Навіщо це техліду? #

AI як новий учасник команди #

Уявіть: до вашої команди приходить новачок. Він швидкий, може працювати з великою кількістю контексту, але не знає, які у вас підходи до архітектури, де що лежить у проєкті та як виглядає “добрий код”. Без інструкцій він почне діяти хаотично.

Якість інструкцій = якість результату #

AI не вгадує наміри. Те, що ви йому скажете — те й отримаєте. Інструкції мають бути чіткими й структурованими. Прості приклади:

  • ❌ “Зроби обробку замовлення”

  • ✅ “Напиши функцію на Go, яка обробляє JSON-замовлення, зберігає його в Postgres і записує лог в Redis.”

  • ❌ “Перевір мій код”

  • ✅ “Проаналізуй цей JavaScript код на наявність потенційних витоків пам’яті та можливих помилок безпеки, особливо в функціях обробки даних користувача.”

  • ❌ “Зроби рефакторинг”

  • ✅ “Виконай рефакторинг цього React компонента, розділивши його на дрібніші підкомпоненти згідно з принципом єдиної відповідальності. Застосуй хуки замість класових компонентів і використай TypeScript для типізації властивостей.”

Команда змінює спосіб роботи #

Розробники переходять від “писати код” до “керувати процесом створення коду”. І AI — чудовий інструмент, якщо працювати з ним правильно.


Що має бути в AI-інструкції? #

  1. Шаблони промптів: Створюйте та зберігайте готові запити у Markdown-файлах. Це дозволяє швидко застосовувати перевірені шаблони з мінімальними змінами для різних завдань — написання тестів, рефакторингу, виправлення помилок.

  2. Визначення меж відповідальності AI: Чітко визначте, для яких задач можна використовувати AI, а для яких ні. Критичний код, особливо пов’язаний з безпекою та фінансовими операціями, завжди повинен перевірятися людиною.

  3. Інтеграція в робочий процес: Документуйте використані промпти в описі Pull Request. Це допоможе колегам зрозуміти, як був згенерований код, та використати подібний підхід у майбутньому. Зберігайте успішні промпти як частину документації проєкту.

  4. Навчання команди: Організовуйте регулярні сесії, де розробники можуть ділитися ефективними практиками роботи з AI та показувати, які підходи працюють найкраще для вашого проєкту.

Приклади промптів які зрозуміє не кожен AI-агент #

Напиши функцію на Go, яка перетворює звичайні числа на заклинання успіху для вашого спринту. Без сторонніх бібліотек, але з екстра-порцією гумору.

Перепиши цю функцію так, щоб навіть сонний джуніор о 6 ранку зміг зрозуміти, що тут відбувається. І нехай код засяє, як зірка на новорічній ялинці!

Створи юніт-тести, які перевірять цю функцію з такою ретельністю, наче вона керує запуском космічної ракети. Використай testify, але додай смішні коментарі про кожен тест-кейс.


Цикл розробки з AI #

AI не просто допомагає писати код. Він змінює сам підхід до розробки. Ось як може виглядати сучасний цикл розробки, коли AI — це частина щоденної роботи.

graph TD A[Формування задачі] --> B[AI: Створення промпту] B --> C[AI: Генерація коду] C --> D[Ручний код-рев'ю] D --> E[Тестування] %% Циклічні процеси E -->|Знайдені проблеми| B D -->|Знайдені проблеми| B E -->|Пройдено| F[AI: Рефакторинг або оптимізація] F --> G[Code Review з описом промпту] %% Інший потенційний цикл G -->|Потребує змін| F G -->|Підтверджено| H[Мерж та деплой]

Пояснення етапів: #

  • Формування задачі — чітке визначення вимог для AI. Детальні технічні описи завдання дають кращі результати.
  • AI: Створення промпту — розробник складає структуровані інструкції, які максимально точно передають необхідні вимоги до коду.
  • AI: Генерація коду — процес, коли AI на основі промпту створює код, який має відповідати поставленим вимогам.
  • Ручний код-рев’ю — важливий етап перевірки згенерованого коду на відповідність стандартам та вимогам проєкту.
  • Тестування — перевірка працездатності коду через автоматичні та ручні тести. Ретельне тестування допомагає виявити приховані помилки.
  • AI: Рефакторинг або оптимізація — покращення початкового варіанту коду з урахуванням конкретніших вимог та контексту.
  • Code Review з описом промпту — командне обговорення не лише коду, але й підходу до формулювання завдання для AI.
  • Мерж та деплой — фінальний етап, коли перевірений код інтегрується в проєкт і розгортається в робочому середовищі.

Що отримає команда? #

  • Прискорення розробки (до +30% на типових задачах і +200% на придумуванні відмазок для менеджера)
  • Менше помилок у простих частинах коду (і більше креативних помилок у складних)
  • Більше фокусу на креативних рішеннях (і на scroll у Reddit, поки AI працює)