Брайан Фитцпатрик - Идеальная IT-компания. Как из гиков собрать команду программистов
- Название:Идеальная IT-компания. Как из гиков собрать команду программистов
- Автор:
- Жанр:
- Издательство:Array Издательство «Питер»
- Год:2014
- Город:Санкт-Петербург
- ISBN:978-5-496-00949-2
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Брайан Фитцпатрик - Идеальная IT-компания. Как из гиков собрать команду программистов краткое содержание
Идеальная IT-компания. Как из гиков собрать команду программистов - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:

Благодаря хорошей закваске новички усваивают вашу культуру
Культура вашей команды очень похожа на хорошую буханку хлеба: закваска (основатели команды) прививает культуру тесту (новичкам), и с ростом дрожжей и бактерий (участников вашей команды) получается отличная буханка хлеба (ваша команда). Если у вас сильная закваска, то, скорее всего, она победит нежелательные «дикие сорта» культур, которые привносит с собой новый участник команды. [6] Разумеется, сильная культура всегда может и интегрировать в себя подходящие «дикие сорта», которые появляются вместе с новичком.
Если же закваска слабая, то ваша команда уязвима для неизвестных штаммов культур, приносимых новичками. Неизвестные культуры приводят к непредсказуемым результатам, поэтому проще начинать с закваски, которую вы знаете.
Культура команды – это не просто методы создания программного кода и общения друг с другом, которыми пользуются участники команды; это набор знаний, ценностей и целей, уникальных для каждой команды инженеров. Основатели команды или компании определяют наибольшую часть командной культуры, однако культура продолжает изменяться и развиваться на протяжении всего времени существования команды.
Элементы, составляющие командную культуру, очень разнообразны. Некоторые из них непосредственно касаются написания ПО – например, рецензирование программного кода, разработка на основе тестирования и создание хорошей проектной документации перед началом создания больших объемов кода. Некоторые элементы ориентированы на людей: например, выходы на ланч в определенный ресторан по четвергам или выпивка в любимом баре по пятницам. Какие-то элементы могут показаться глупыми или нелепыми внешнему наблюдателю: например, технический офис Google в Питтсбурге находился рядом с железнодорожными путями, по которым ходили товарные поезда, и каждый раз, когда поезд проходил мимо (а это, как вы знаете, сопровождается сильным шумом), все сотрудники вскакивали с мест и кидались друг в друга дротиками. [7] Это чертовски напугало Фитца, когда он впервые оказался в питтсбургском офисе Google.
Все эти вещи образуют командную культуру и влияют на ее продуктивность и способность привлекать и удерживать хороших участников.
Посмотрите на любую компанию, достигшую больших успехов в разработке ПО – Google, Apple, Microsoft, Oracle, – и вы увидите, что у каждой из них есть особая культура с корнями, которые создали ее основатели и первые сотрудники. По мере роста и развития культуры этих компаний изменялись, но продолжали сохранять уникальность, которая воплощалась почти во всем, что касалось разработки продуктов, отношения к сотрудникам и конкуренции с другими компаниями.
Зачем заботиться о культуре?
Говоря кратко, вам следует заботиться о культуре потому, что если вы не станете прилагать усилия к ее формированию и поддержке, то вашей командой завладеет сильная личность, которая посеет в ней свою культуру. Возможно, эта культура окажется продуктивной, здоровой и приведет к созданию огромного количества отличного кода, но, скорее всего, вы в один прекрасный момент обнаружите, что значительное количество вашей энергии, которое раньше тратилось на проектирование и написание кода, будет уходить на споры и внутреннюю борьбу. Более того, важно иметь культуру, которую ваша команда будет ценить и защищать. Если команда не ценит культуру, то становится сложно формировать единство команды и коллективное чувство гордости за работу; кроме того, новичок сможет с легкостью превратить вашу культуру в нечто непотребное.
Первая ошибка, которую делает большинство инженеров, – считать, что руководитель команды курирует командную культуру. Это очень большое заблуждение: несмотря на то что основатели и лидеры обычно поддерживают культуру команды в здоровом виде, каждый ее участник интегрирован в культуру и несет ответственность за ее определение, поддержку и защиту. Когда в команду приходит новый участник, он перенимает культуру не только от руководителя команды, но и от всех ее участников, с которыми он взаимодействует. Например, если вы внимательно изучаете код, написанный новичком, и объясняете ему, почему ваша команда разрабатывает код определенными способами, то он быстро начинает понимать, что именно в базе кода представляет ценность для команды. Он также постигает вашу культуру, наблюдая за тем, как остальная часть команды работает, взаимодействует и разрешает конфликты.
Сильная культура – это культура, открытая для изменений, улучшающих ее, но при этом устойчивая к радикальным изменениям, наносящим ей вред. В самых успешных культурах основные усилия команды сконцентрированы на создании высококлассного ПО. Если ваша команда сфокусирована на чем-либо другом (например, на вечеринках, посещении мероприятий или конкуренции), то ее участники, возможно, будут тесно сплочены, но в результате вы не достигнете успеха в разработке ПО. Если вам больше всего нравится создавать код и выпускать продукты, то, безусловно, в ваших интересах найти команду, которая ценит это, и работать над поддержанием такой среды. Конечно, нельзя утверждать, что вы не можете создать продукт без сильной и продуктивной культуры, но без такой культуры выпуск продукта будет стоить вам значительно больше времени и энергии. Сильная культура формирует концентрацию, эффективность и мощь – элементы, из которых состоит удовлетворенная команда.
Интересный аспект командной культуры в том, что сильная культура начинает сама осуществлять отбор людей. В области открытых исходных кодов проекты, основанные на скромности, уважении и доверии и сконцентрированные на написании понятного, элегантного и удобного в сопровождении кода, привлекают инженеров, заинтересованных в (сюрприз!) работе с теми, к кому они испытывают уважение и доверие, а также в написании понятного, элегантного и удобного в сопровождении кода. Если же ваша команда строится на культуре агрессии, дедовщины и личностных атак, то вы привлечете больше людей с соответствующими качествами.
Мы многократно наблюдали культуры с самоотбором в организации Apache Software Foundation. Множество команд разработчиков, работающих в ней, объединены в сообщества и сотрудничают на принципах консолидации. Множество новичков появлялись в списке рассылки и своим безразличным или агрессивным поведением нарушали правила, принятые в командной культуре. Участники сообщества обычно пытались обучить их (иногда деликатно, иногда не вполне), и если они не переставали игнорировать принципы работы ASF, то, как правило, отправлялись восвояси в поисках более подходящего проекта.
Читать дальшеИнтервал:
Закладка: