К основному содержимому
#Management

Хватит гадать! Девять стратегий для решения любых проблем (Stop Guessing: The 9 Behaviors of Great Problem Solvers) (Рубрика Management)

#Management #Engineering #SRE #Interview #Processes #Postmortem #Software

Вчера прочитал эту интересную книгу Нэта Грина про решение проблем. По мере чтения книги я зацепился за несоответствие содержимого и названия, а дальше сравнил названия русского перевода и первоисточника. В оригинале акцент делается на поведенческих паттернах решателей проблем - это подчеркивает, что речь идет не о методологии, а о систематических поведенческих навыках. Русский перевод же говорит о стратегиях для решения любых проблем, что несколько упрощает концепцию, теряя важный акцент на том, что это именно поведенческие модели, а не просто алгоритмы.

Если же говорить про подход Нэта, то эффективные решатели проблем демонстрируют девять ключевых поведенческих паттернов: 1. Системный подход к проблеме Глава 1. Прекращают угадывать и переходят к структурированному анализу Глава 2. Изучают проблему в деталях, используя все доступные чувства и инструменты для понимания паттерна сбоя Глава 3. Принимают свое неведение вместо попыток защитить репутацию эксперта, задавая вопросы, которые другие могут считать "глупыми" 2. Точное определение проблемы: Глава 4. Определяют, какую именно проблему решают, избегая работы над неправильной задачей из-за ложных предположений Глава 5. Углубляются в основы, изучая как процесс работает, включая базовую науку за ним 3. Независимость от экспертного мнения: Глава 6. Не полагаются на экспертов как на спасителей, а рассматривают их как помощь Глава 7. Верят в простое решение, сохраняют упорство и не останавливаются, пока не дойдут до корня проблемы 4. Фактологический подход: Глава 8. Принимают решения на основе фактов, а не мнений, голосований или субъективных систем Глава 9. Остаются сфокусированными на цели, измеряя драйверы, которые наиболее непосредственно контролируют проблему

В десятой главе автор рассказывает про то, как выбрать свою методику решения проблем и предлагает свой подход через анализ переменных. Центральная идея его метода заключается в создании дерева переменных - систематическом разборе того, как устроен процесс, и разработке уровней вторичных переменных, влияющих на целевую проблему. Этот подход включает:

  • Определение проблемы - точное описание того, что именно не работает
  • Детальное изучение проблемы - сбор фактических данных о паттерне сбоя
  • Создание дерева переменных - структурированный анализ всех факторов, влияющих на проблему Грин подчеркивает, что когда у команды есть сотни потенциальных причин, это означает полное непонимание происходящего. Если переменных 200, то истинная первопричина, вероятно, даже не входит в этот список. Эффективные решатели проблем исключают переменные, и каждая исключенная переменная содержит множество подпеременных, которые теперь можно игнорировать.

Мне сама книга понравилась и идеи Грина неплохо так пересекаются с мышление "from first principles". Сходства я увидел такие

  • Оба подхода требуют разложения сложных проблем на фундаментальные компоненты
  • Отказ от аналогий и предыдущих решений в пользу глубокого понимания
  • Вызов существующим предположениям и поиск базовых истин Но есть и существенные различия, делающие подход Грина более практичным
  • First principles начинает с философских основ и фундаментальных законов природы
  • Подход Грина более прагматичен и фокусируется на поведенческих паттернах и анализе переменных конкретной проблемы
  • First principles больше подходит для инноваций и создания нового, тогда как метод Грина оптимизирован для решения существующих проблем

Если говорить про применение подхода в разработке софта, то кажется, что этот подход применим для траблшутинга проблем с производительностью (домен Брендана Грегга, вот пример его выступления, что я разбирал). В принципе, примерно также развивается решение проблемы при возникновении инцидентов - я рассказывал про наш этап интервью под названием troubleshooting для SRE инженеров, а также отдельно проводил публичное интервью

#Engineering #SRE #Interview #Processes #Postmortem #Management #Software