[ направления ] [ журнал ] [ опыт и цифры ] [ автор ] t.me/directorandmachine ↗
журнал практика · цифры настоящие

директор и машина · операционное управление · запись № 004 · · Давид Герштейн

«Если бы я не пришёл, ничего бы не произошло»: автоматизация, требующая надзора

Коротко · суть разбора

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

У меня есть личный тест на настоящую автоматизацию, и я собираюсь им поделиться, потому что он экономит деньги ещё на этапе постановки задачи. Тест звучит так: что произойдёт, если про этот процесс все забудут на две недели?

Если ответ «будет работать, а при сбое сам перезапустится или громко позовёт» — это автоматизация. Если ответ «надо будет поглядывать» — это не автоматизация. Это вторая работа, которую вы добавили к первой.

Как я к этому пришёл

История, после которой тест появился. Автоматическая публикация контента: процесс собирает материалы, готовит посты, выкладывает по расписанию. Работал прекрасно — пока однажды не упёрся в ошибку и молча не встал. Утром выясняется: ничего не вышло. Запускаю руками, чиню. Через неделю — то же самое, по другой причине.

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

Арифметика, которую никто не считает

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

Именно поэтому «мы автоматизировали двадцать процессов» так часто соседствует с «почему-то никто не почувствовал облегчения».

Три свойства процесса, который можно оставить одного

1. Сам перезапускается

Большинство сбоев — временные: сеть моргнула, сервис не ответил, файл пришёл битый. Процесс обязан уметь повторить попытку сам — с паузой, несколько раз, по одному конкретному упавшему элементу, а не всей пачке. Это решается при постановке задачи одной фразой в ТЗ и почти ничего не стоит. Добавленное потом — стоит дорого.

2. Громко зовёт, когда не справился

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

3. Отвечает на вопрос «ты живой?»

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

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

Куда это масштабируется

С ростом числа автоматических процессов появляется следующий уровень той же задачи: сторож сторожей — один ежедневный отчёт, который сводит состояние всех процессов в одну картину. У меня он приходит вечером в мессенджер: что отработало, что нет, что требует взгляда. Это снимает последнюю форму надзора — необходимость помнить, за чем следить.

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