#ai #dev #amazon
На прошлой неделе видел классический пример того, как ИИ может навредить, если нет дизайна в голове.
Сервис не могли запустить в прод — проблемы с качеством. Два файла по полторы тысячи строк каждый. Тесты вроде есть, но только для галочки по покрытию. Никаких e2e, никаких интеграционных тестов, крайние случаи не учтены (out of order events, idempotency, race conditions). Методы-монолиты, жесткая связность, высокая цикломатическая сложность.
Проблема в том, что этот код было физически невозможно протестировать без полного рефакторинга.
Интересная деталь: код писали с ИИ. Но подход был "в лоб" — строчка за строчкой, наслаивая все больше и больше use-cases, без дизайна. Нейронка выдала ровно то, что просили: 1.5k строк кода. Просто быстрее, чем вручную.
Вот в чём беда:
Если ты не понимаешь, как выглядит тестируемый код, ты не сможешь попросить ИИ его написать. Ты попросишь то, что у тебя в голове — и получишь ровно это. Просто в десять раз быстрее.
Это не критика ИИ. ИИ отработал как надо. Это ловушка отсутствия фундаментальных знаний, которую ИИ только усугубляет.
Что важно:
Учите базу. Принципы проектирования. Паттерны. Тестирование. Что такое coupling и cohesion. В эру ИИ это важнее, чем когда-либо.
ИИ — это не замена инженерному мышлению. Это множитель. Он ускорит твой путь в любую сторону — правильную или нет.
Хорошая новость: если не спешить и сначала расскидать всё с ИИ на уровне дизайна и абстракций, обсудить тестируемость и подходы к тестам — из опыта результат будет куда лучше.
Post #571
493
- 👍 8
- 🔥 6