Люди иногда просят меня порекомендовать книги, которые помогут на их профессиональном пути. Обычно в моменте я могу придумать пару рекомендаций, но мне всегда кажется, что я забываю гораздо больше хорошей литературы, чем советую. В надежде дать лучший ответ в будущем я выписал несколько полезных пособий об общих целях, лидерстве и менеджменте, которые прочитал.
Не все из них являются классикой или замечательными книгами – некоторые даже немного скучноваты, – но они существенно изменили мое мышление. Список отсортирован по порядку, на мой взгляд, от самых полезных до наименее ценных.
1. «Азбука системного мышления» Донеллы Х. Медоуз[26]. Для меня системное мышление было самым эффективным универсальным инструментом для решения сложных проблем, и эта книга – отличное мощное введение.
2. «Не думай о слоне! Знай свои ценности и руководи спором» (Don’t Think of an Elephant! Know Your Values and Frame the Debate) Джорджа Лакоффа. Хотя книга написана с политической точки зрения, которая некоторым может показаться слишком сложной, она полностью изменила мое понимание о представлении идей. У вас может возникнуть соблазн вместо этого прочитать научные работы Лакоффа, но я бы рекомендовал начать с этой книги, поскольку она гораздо короче и более легка для восприятия.
3. «Кадровое обеспечение: Продуктивные проекты и команды» (People ware: Productive Projects and Teams) Тимоти Листера и Тома Демарко. Она дала поколениям разработчиков разрешение говорить о проблемах пространства и офисов с открытой планировкой. Книга особенно эффективна в обосновании обсуждения данными.
4. «Свободные производственные мощности: Преодоление эмоционального выгорания, загруженности работой и мифа о полной эффективности» (Slack: Getting Past Burn out, Busy work, and the Myth of Total Efficiency) Тома Демарко. Книга показывает убедительные аргументы в пользу менеджеров среднего звена как критически важного уровня, на котором покоится организационная память и происходит обучение. Размышление о разрыве между эффективностью и результативностью.
5. «Мифический человеко-месяц, или Как создаются программные системы» Фредерика Брукса[27]. Первая профессиональная книга, которую я когда-либо читал. Она открыла мне глаза на богатство литературы по программированию, ожидающей меня.
6. «Хорошая стратегия, плохая стратегия. В чем отличие и почему это важно» Ричарда Румельта[28]. Эта книга позволила мне признать, что многие стратегии, с которыми я сталкивался в профессиональном плане, не очень хороши. Румельт также предлагает структурированный подход к созданию хороших стратегий.
7. «Цель. Процесс непрерывного улучшения» Элияху М. Голдратта[29]. Исследование того, как теория ограничений может быть использована для оптимизации процесса.
8. «Пять пороков команды. Бизнес-роман» Патрика Ленсиони[30].
9. «Три признака унылой работы: История со смыслом для менеджеров (и их подчиненных)» Патрика Ленсиони[31]. Еще одна книга Ленсиони, в которой объясняется трехточечная модель того, что делает работу полезной.
10. «Конечные и бесконечные игры» Джеймса П. Карса[32]. Успех в большинстве жизненных ситуаций заключается в том, чтобы позволить всем продолжать играть, а не в результатах типа «пан или пропал». Эта мысль кажется довольно очевидной, но мне она помогла понять, зачем я вообще работаю.
11. «Вдохновленные. Все, что нужно знать продакт-менеджеру» Марти Кагана[33]. Вдумчивый подход к управлению продуктами.
12. «Дилемма инноватора: Как из-за новых технологий погибают сильные компании» Клейтона М. Кристенсена[34]. Взгляд на то, как чрезмерная рациональность в краткосрочной перспективе привела многие великие компании к краху. В наши дни, когда я занимаюсь стратегическим планированием – постоянно думаю об этом.
13. «Малый бизнес. От иллюзий к успеху. Как создать компанию и удержать ее» Майкла Э. Гербера[35]. Идея о том, что руководство обычно работает «над» бизнесом, а не «в» бизнесе. Поработайте «в» бизнесе, чтобы узнать, как он функционирует. Детально опишите систему, а затем передайте этот документ другим.
14. «Разговор по существу. Искусство общения для тех, кто хочет добиваться своего» Сьюзан Скотт[36]. Книга о том, как сказать то, что вам нужно. Это особенно эффективно в создании структуры для преодоления неприятия конфликтов.
15. «Как стать техническим лидером: Органичный подход к решению проблем» (Becoming a Technical Leader: An Organic Problem-Solving Approach) Джеральда М. Вайнберга. Автор советует быть лидером, руководствуясь сильными сторонами, а не какой-либо моделью, в которую, по мнению людей, вы должны вписываться.
16. «Умный дизайн: Простые приемы разработки пользовательских интерфейсов» Джеффа Джонсона[37]. Введение в юзабилити и дизайн, основанное на том, как работает мозг.
17. «Конвейер лидерства: Как построить компанию, основанную на лидерстве» (The Leadership Pipeline: How to Build the Leadership Powered Company) Рама Чарана, Стива Дроттера и Джима Ноэля. Эта книга открыла мне глаза на то, насколько вдумчиво многие компании намеренно выращивают новых лидеров.
18. «От разработчика до руководителя. Менеджмент для IT-специалистов» Камиля Фурнье[38].
19. «Управление высокой производительностью» (High Output Management) Энди С. Гроува.
20. «Первые 90 дней: Проверенные стратегии быстрого и умного освоения скорости, обновленные и дополненные» (The First 90 Days: Proven Strategies for Getting Up to Speed Faster and Smarter, Updated and Expanded) Майкла Д. Уоткинса.
21. «Эффективный руководитель» Питера Ф. Друкера[39].
22. «Не заставляйте меня думать. Веб-юзабилити и здравый смысл» Стива Круга[40].
23. «Deadline. Роман об управлении проектами» Тома Демарко[41]. Книга об управлении проектами.
24. «Психология компьютерного программирования» (The Psychology of Computer Programming) Джеральда М. Вайнберга.
25. «Адреналиновые наркоманы и шаблонные зомби: Понимание моделей проектного поведения» (Adrenaline Junkies and Template Zombies: Understanding Patterns of Project Behavior) Тома Демарко, Питера Грушки, Тима Листера, Стива Макменамина, Сюзанны Робертсон и Джеймса Робертсона.
26. «Секреты консультирования: Руководство по успешному предоставлению и получению консультаций» (The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully) Джеральда М. Вайнберга.
27. «Смерть от совещаний. Бизнес-роман» Патрика Ленсиони[42].
28. «Сердце компании. Почему организационная культура значит больше, чем стратегия или финансы» Патрик Ленсиони[43].
29. «Рост: Три практических шага для продвижения по карьерной лестнице, становления лидером и любви к своей жизни» (Rise: 3 Practical Steps for Advancing Your Career, Standing Outas a Leader, and Liking Your Life) Пэтти Аззарелло.
30. «Решение проблемы инноваций в бизнесе. Как создать растущий бизнес и успешно поддерживать его рост» Клейтона М. Кристенсена и Майкла Э. Рейнора[44].
31. «Проект “Феникс”. Как DevOps устраняет хаос и ускоряет развитие компании» Джина Кима, Кевина Бера и Джорджа Спаффорда[45].
32. «Ускорение: Наука бережливого программного обеспечения и DevOps: Создание и масштабирование высокопроизводительных технологических организаций» (Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations) Николь Форсгрен, доктора философии, ДжезаХамбла и Джина Кима.
7.3. Статьи, которые я нашел очень полезными
Я давно являюсь поклонником проведения кружков по чтению статей (2), когда группа людей садится и обсуждает интересные материалы на технические темы. Одним из первых шагов к этому стало определение некоторых тем, о которых стоит говорить. Вот список некоторых публикаций, которые, как я видел, привели к отличным дискуссиям:
1. «Dynamo: Высокодоступная система хранения ключевых значений Amazon» (Dynamo: Amazon’s Highly Available Key-Value Store).
Если вы прочитаете только аннотацию, вряд ли статья о Dynamo вас сильно заинтересует. В этой публикации представлена разработка и внедрение Dynamo, высокодоступной системы хранения ключевых значений, которую некоторые из основных сервисов Amazon используют для обеспечения постоянной работы. Чтобы достичь такого уровня доступности, Dynamo жертвует согласованностью при определенных сценариях сбоев. В системе широко используются управление версиями объектов и разрешение конфликтов с помощью приложений таким образом, чтобы разработчики могли использовать новый интерфейс.
Тем не менее, это в некотором смысле классическая статья о современных системах. Не раз случалось, что инженер, с которым я встречался, за всю свою карьеру прочитал только одну статью о системах, и это была именно статья о Dynamo. Она представляет собой феноменальное ведение в окончательную согласованность, координацию состояния распределенного хранилища, согласование данных по мере их расхождения между версиями и многое другое.