Не знаешь - спроси

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

В разработке до сих пор живёт странный миф: «хоть усрись, но разберись сам», будто хороший разработчик - это тот, кто может несколько часов или дней перелопачивать документацию, но ни в коем случае не подойти к коллеге с вопросом. А если спросил - значит недостаточно старался.

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

Есть ещё один момент: время разработчика - это деньги бизнеса. Если ты четыре часа героически разбираешься с проблемой, ответ на которую коллега мог дать за десять минут, компания не получила четыре часа твоего «самостоятельного развития». Она заплатила за четыре часа работы. Иногда эти четыре часа оправданы: ты исследуешь новую область, строишь понимание, и это знание пригодится дальше. А иногда заново открываешь то, что человек за соседним столом уже выяснил полгода назад.

Поэтому вместо «могу ли я разобраться сам?» полезнее спросить: «Как сейчас эффективнее получить нужное понимание и двинуть задачу дальше?»

Когда ты спрашиваешь другого разработчика: «Почему здесь сделали именно так?», можно узнать то, чего нет в коде:

- какие варианты уже пробовали и почему отказались от них - какие ограничения системы не очевидны со стороны - какие компромиссы команда считает приемлемыми - как другой инженер вообще рассуждает об этой проблеме.

ИИ отлично объясняет технологии, но он не сидел на созвоне полгода назад, когда команда выбирала между двумя архитектурными решениями и не помнит инцидент, после которого появилась «странная» проверка в коде.

Мне нравится такой цикл обучения:

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

Причём ИИ может помочь и сформулировать этот вопрос.

Не: У меня не работает, помоги

А: Я понял это так. Попробовал A и B. В A вижу такую проблему, в B - такую. Мне кажется, здесь выбрали B из-за X. Я правильно понимаю?

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

Не знаешь - спроси | Сетка — социальная сеть от hh.ru