С самого начала каждый новый человек, присоединившийся к нам, терял те же сорок минут на того же призрака. Они следовали нашим письменным инструкциям до мелочей, вводили точно тот адрес, который мы им сказали, и получали стену ничегонеделания. Они дважды проверяли, винили себя и сидели, переживая, пока кто-то не наклонился к ним и не произнес волшебные слова: «О, не обращайте внимания на инструкции, настоящая дверь вот здесь». Инструкции были неправильными. Они были неправильными столько, сколько кто-либо мог помнить. А сама авторизация продолжала зависать на пороге, потому что одна деталь, от которой все зависело, никогда не включалась при запуске. Два незаметно горящих пожарчика, оба тихо пылающие на виду.
Очевидный инстинкт, когда что-то работает некорректно, — это оставить структуру в покое и просто прихлопнуть ошибку. Исправить неправильный адрес. Добавить недостающий элемент в список запуска. Продолжить. Вместо этого мы сделали противоположное тому, чему учат каждый архитектурный доклад в интернете. Мы взяли два элемента, которые мы классифицировали как опциональные и периферийные, и перетащили их прямо в самый центр продукта. Больше нагрузки на критический путь. Больше вещей, которые обязательно должны быть живыми, чтобы продукт казался живым. Большая яма, если что-то из этого упадет. Весь интернет говорит вам выталкивать вещи к краям и держать центр крошечным. Так почему же мы втянули их внутрь?
Потому что опциональный ярлык уже был ложью. Поиск никогда не был опциональным. То, что упорядочивает все на вашем экране, никогда не было опциональным. Если что-то из этого погаснет, клиент увидит сломанную страницу и захочет позвонить. Называть их опциональными просто означало, что они получали опциональное обслуживание: более тонкие сети безопасности, размытая ответственность, отсутствие забронированного места в Routine запуска. Отсутствующий элемент авторизации страдал от той же болезни. Он был услугой, а не тем, без чего ничего не работает, поэтому его было легко забыть включить. Неправильный адрес в мануале на самом деле не был опечаткой. Это то, что происходит, когда никто не уверен, какая дверь имеет значение, потому что никто не уверен, какая деталь имеет значение.
Итак, мы провели новую линию. Мы втянули эти два элемента в ядро, где они теперь живут и дышат в одном ритме, с теми же сетями безопасности и тем же грубым статусом, что и само авторизация: если это не работает, продукт не работает. Забытый элемент получил постоянное место в запуске, поэтому он просыпается вместе со всем остальным. Адрес был привязан к одному истинному ответу в одном месте, и все вокруг него было переписано, чтобы предполагать эту одну истину. Одно сердце. Один запуск. Одна дверь. Один честный ответ.
Вот урок, и он актуален как для тех, кто управляет командой разработчиков, так и для автосервиса. Инструменты, которые вы называете основными, должны быть именно теми инструментами, отсутствие которых остановит бизнес. Не теми, которые ваш поставщик называет премиум. Не теми, которые были дорогими. Не теми, которые вы случайно настроили первыми. Теми, которые, если кто-то тихо выключит их в девять утра, заставят ваш телефон звенеть к десяти. У большинства операторов этот список неправильный хотя бы на один пункт, обычно на два. Скромный инструмент планирования рассматривается как опциональный, потому что он находится в вкладке браузера, в то время как дорогая система считается основной из-за своей стоимости. Затем вкладка планирования зависает, и весь день останавливается, и никто не может объяснить, почему опциональная вещь разрушила бизнес.
Пройдитесь по своему стэку и задайте один вопрос по каждому инструменту. Если это исчезнет в начале завтрашнего дня, заметит ли ресепшн это в течение часа? Если да, это основное, и он заслуживает основного обращения: назначенный владелец, проверенный резервный план, известный доступ, строка в утреннем контрольном списке. Если нет, это действительно периферийное и может жить в длинном хвосте. Ярлыки, которые вы унаследовали от своих поставщиков или в зависимости от порядка, в котором вы купили вещи, почти никогда не являются правильными. Мы научились перестать доверять ярлыкам и начать доверять симптомам. Адреса лгут. Ярлыки лгут. Счета лгут. Только звонящий телефон говорит правду.