У меня есть опыт работы с MongoDB. Если эту систему использовать для выполнения не слишком сложных транзакций, она обеспечивает быструю разработку приложений и проста в применении. Я полагаю, что контролирующая служба реализует этот сценарий на основе нашего текущего понимания проекта. Я чувствую, что мы должны синхронизироваться с менеджером проекта, чтобы достичь исчерпывающего понимания наших ожиданий. Нам также следует включить эксплуатационную команду, которая будет предоставлять нам отчеты о затратах на управление программным обеспечением. У меня есть немного времени, чтобы выполнять необходимые экспертные оценки.
Джози чувствует себя более комфортно, излагая свои мысли в автономном режиме, с последующей отправкой в письменном формате средствами электронной почты. Как и многие интроверты, она рассылает письма членам команды, ставя их в известность о своих планах. В соответствии с культурой «отвечать всем», принятой в Sparkle Corp, Элис и Джорди вступили в дискуссию, а Элис добавила эксплуатационную команду в обсуждение.
ВыводыВ конце концов, большая часть того, что делает инициативу devops успешной, заключается в организации плодотворной групповой работы. Существует несколько способов, посредством которых люди, имеющие разные приоритеты и рабочие стили, могут выполнять работу вместе. Но чтобы получить от людей максимальную отдачу, нужно найти ключевую точку, по достижении которой возможна наиболее эффективная совместная работа. Если нужно резко повысить производительность организации, следует овладеть навыками общения, основанными на общих целях и сопереживании, встроенных в культуру сотрудничества.
Отношения между отдельными членами команды формируют большую часть связей между сообществами и увеличивают степень их полезности. Эти отношения требуют доверия, сопереживания и взаимности. Эффективные сообщества намного реже возникают там, где выстроены строгие иерархии между сотрудниками. В то время как люди имеют и будут иметь разные уровни знаний и опыта, каждый сотрудник обладает качествами, которые могут принести пользу организации.
Хотя следующее утверждение может показаться нелогичным для людей, у которых создается впечатление о высокотехнологичной природе devops, но все же именно оно заложено в основу концепции devops. Изначально цель движения devops заключалась в формировании двух разных команд, которые свободно общались бы между собой. В качестве способа начать этот диалог, который продолжается и развивается в наши дни, использовались события devopsdays. В части III мы генерализуем эти идеи с отдельных сотрудников на команды, а затем – на организации в целом.
Глава 8. Сотрудничество: заблуждения и устранение проблем
Разные личные и профессиональные качества людей при определенных обстоятельствах приводят к трениям. И если эти трения не устранять, они начинают мешать эффективному сотрудничеству. Независимо от того, занимаете вы должность менеджера или являетесь неформальным лидером, от вас потребуются определенные качества. Чтобы вести людей за собой, нужно быть в состоянии помочь им идентифицировать и сформулировать разные мотивации и цели, а потом активно работать в направлении их достижения.
Мы рекомендуем всем менеджерам, особенно новичкам, которые раньше работали инженерами, регулярно поддерживать и улучшать навыки менеджера. Имейте в виду, что должность менеджера – это не повышение вашей нынешней должности, а совершенно новая профессия. Подобно любым другим навыкам, требующим получения образования, обучения и практики, навыки менеджера нужно развивать по максимуму. Выдающийся лидер не тот, кто сосредоточивается на себе любимом либо на некоторых «рок-звездах» в своем окружении, а тот, кто может взять лучшее от окружающих его людей. Именно эти качества лидера могут отличать эффективные и неэффективные организации.
Заблуждения, связанные с сотрудничествомВ конечном счете многие заблуждения, связанные с сотрудничеством, сводятся к вопросу о том, насколько люди готовы или способны учиться и расти в рамках своих ролей или на уровне организации в целом.
Невозможно научить старого сисадмина новым трюкам
Считается, что люди, привыкшие к изоляции, никогда не смогут работать в более открытой или кросс-функциональной среде. Ярким примером может служить карикатурный образ угрюмого системного администратора, так называемого «чертова ублюдка» (Bastard Operator From Hell; BOFH), упомянутого в главе 3. С другой стороны, среди практиков с большим опытом работы, например представителей «старой школы» UNIX, часто возникает стремление стать разработчиком, чтобы не потерять работу. Весьма часто люди испытывают опасение, что при переходе в коллаборативную среду devops от них могут потребоваться новые навыки.
На самом деле освоение новых навыков доступно практически каждому человеку, причем независимо от того, идет речь о новых технологиях или о более «мягких» навыках, например наставничестве или сопереживании коллегам. Конечно, освоение новых навыков потребует времени и усилий, – вряд ли вы сможете научиться чему-либо мгновенно.
Освоение новых навыков требует времени и практики от каждого. Даже и не думайте, что кто-то, кто старше вас, отличается от вас или обладает худшим образованием, не способен к обучению.
Если же вы сами ищете работу и переживаете о том, что ваш набор навыков вскоре устареет, примите к сведению, что, несмотря на появление новых облачных технологий и повсеместное распространение контейнеризации, работодатели по-прежнему ищут сотрудников с обширным набором навыков. В данном случае ключ к успеху заключается в поиске подходящей команды или позиции. Человек, владеющий навыками администратора выделенного сервера UNIX или сетевого инженера, вряд ли найдет место в только что созданном стартапе, планирующем выпустить свой первый продукт, поскольку подобная компания обычно использует веб-службу хостинга Amazon EC2. Но когда идет речь о более крупной и зрелой компании или центре обработки данных, подобную вакансию найти вполне реально. Тем более что, несмотря на все разговоры, крупные компании не собираются исчезать в ближайшее время.
Чтобы обеспечить быстрый рост, нужно нанять «звезд»
Многие соучредители стартапов при наборе персонала во главу угла ставят высокий уровень программистских навыков. Это делается для максимально быстрого получения нужного программного продукта, позволяющего ускорить формирование базы пользователей либо получить финансирование, необходимое для роста компании. Этот подход неплох, но не следует на нем зацикливаться. Для обеспечения устойчивого роста компании нужно позаботиться о росте всей команды. Но, к сожалению, стартапы не располагают бюджетом, требуемым для конкурирования с более крупными и зрелыми компаниями, которые могут заманивать людей высокими зарплатами. Поэтому стартапы ориентируются на привлечение талантливых программистов в надежде быстро получить требуемый программный продукт.
Подобный подход полезен в краткосрочной перспективе. Но когда идет речь о длительном сроке, то ранее принятые сотрудники начинают задавать тон в компании, хотите вы этого или нет. И вам придется мириться с этим, особенно если вы не сможете нанять нужных вам людей либо если в вашей компании «выживают» индивидуалисты-эгоисты. Конечно, можно избавиться от застарелых привычек и приобрести новые навыки, но на практике все происходит немного иначе. Слишком часто мы видим команды, состоящие из эгоцентричных инженеров, плохих коммуникаторов и людей, не умеющих поддерживать беседу. Обычно такой коллектив формируется там, где к подобному поведению относятся