П. Толкачев
04Цифровая культура и трудоктябрь 20259 минут

Инженер как социальный тип

Что значит «писать код» в экономике платформ и кем эта работа исподволь делает человека.

Инженер привык думать о себе технически. Я решаю задачи, проектирую системы, пишу код. Все это правда. Но правда неполная: профессия — это еще и социальный тип, набор привычек и взглядов, которые складываются из самой работы и которых работник обычно не замечает, потому что они давно стали для него естественными, как дыхание.

Что код делает с мышлением

Кто долго пишет код, начинает видеть мир как систему, которую можно разложить на части. Любую проблему тянет декомпозировать: разбить на модули и убрать дублирование. Оптика сильная. И она не нейтральна.

Она хорошо работает там, где есть четкие границы, и буксует там, где важнее неоднозначность, история, живой контекст. Инженерный тип склонен переоценивать то, что поддается формализации, и не доверять тому, что ей сопротивляется. Я ловлю это на себе, когда в разговоре с продуктовыми людьми, а иногда и с женой, начинаю строить в голове «граф зависимостей» там, где человек просто хочет, чтобы его выслушали. Навык, который кормит, в такие моменты слегка мешает жить.

Автономия и ее пределы

Инженерный труд кажется автономным. Ты сам решаешь, как устроить код, тебя ценят за экспертизу, над тобой нет конвейера. Но автономия частичная. Что строить, для кого, на каких условиях — это почти всегда решает не инженер. За тобой остается «как», а «что» и «зачем» приходят сверху. Конструкция удобная: она дает чувство самостоятельности, не отдавая контроля над направлением.

Пример из практики. Пару лет назад мне досталась админка внутреннего инструмента, а в ней — экран управления доступами. Задача звучала сугубо технически: спроектировать матрицу ролей, кто какие действия может выполнять в проде. Я полдня возился с чекбоксами и наследованием прав и в какой-то момент осознал, что на самом деле решаю, кто из коллег в соседней команде вообще имеет право нажать на боевой рубильник, а кто должен идти и просить. Это уже не про код. Это маленькое политическое решение, аккуратно переодетое в форму технической задачи. И мне, честно говоря, было приятно его принимать: власть, спрятанная в интерфейсе, все равно ощущается как власть.

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

Платформа меняет тип

В экономике платформ этот тип заметно меняется. Работа все плотнее опосредована инструментами, которые сами устроены как платформы: трекеры задач, CI/CD, дашборды, метрики. Производительность теперь измеряется и рисуется на графиках. Инженер одновременно строит системы наблюдения и сам оказывается их объектом.

Несколько лет я развивал у нас Unleash — платформу фиче-флагов, вводил на ней A/B-тесты, подтягивал CI/CD. Флаг — это маленький рычаг: включил новую логику для пяти процентов пользователей, посмотрел на метрики, раскатил дальше или откатил. Удобно и почти незаметно. Один такой флаг мы завели под эксперимент. Эксперимент закончился, галочку выключить забыли. Он провисел включенным около года. Всплыл ночью, на дежурстве: странные ошибки у крошечной доли запросов, полчаса тихой паники, и в итоге тот самый забытый флаг, гонявший часть трафика в код, который все давно считали мертвым.

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

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

«Но ведь это просто хорошая инженерия»

Здесь легко возразить, и я сам себе не раз возражал. Все это, скажет трезвый коллега, красивое переусложнение. Декомпозиция — рабочий метод, он экономит время. Пределы автономии — банальность, так устроена любая организация, хоть пекарня. Дашборды нужны, чтобы не катить сломанное в прод. При чем тут «социальный тип»? Не выдумываю ли я драму на ровном месте?

Возражение честное, и часть его я принимаю. Метод правда работает, дашборды правда полезны, выкидывать я не собираюсь ни то, ни другое. Но «просто метод» перестает быть просто методом, когда применяешь его по восемь часов в день годами. Инструмент, которым долго пользуешься, потихоньку начинает пользоваться тобой: он задает, какие вопросы кажутся тебе осмысленными, а какие — фоновым шумом. И то, что ограничения автономии есть везде, не делает их невидимыми. Оно делает их привычными, а привычное как раз труднее всего разглядеть. В одном возражение мне помогает: оно не дает свалиться в позу жертвы. Никто меня не порабощал. Половину этих дашбордов я построил сам, с удовольствием, и до сих пор считаю их удачными.

Зачем это видеть

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

Не уверен, что с этим взглядом становится легче. Скорее наоборот. Раньше можно было честно спрятаться за формулой: мое дело — код, остальное решают продукт и начальство. Теперь так уже не скажешь, отговорка не держится. Зато появляется что-то вроде авторства. Код — социальная практика, и инженер оказывается участником того, как устроена общая жизнь, даже когда всего лишь двигает галочку в админке.

К индексу текстов© Петр Толкачев · MMXXVI