Важно отметить, что в то время как в этом разделе будут рассмотрены аспекты найма и удержания команд, которые являются специфическими для devops-сред, не рассматривайте его в качестве руководства по найму какого-то мифического «10-кратного devops-инженера». Как отмечалось в главе 13, devops не всегда является названием определенной работы.
Помимо найма людей, которые знают об автоматизации инфраструктуры, облачном хранилище или контейнерах, в организациях и командах следует сосредоточиваться на оценке своих конкретных потребностей, а также на решении межличностных и культурных аспектов найма. Все это является ключевым для создания и поддержания devops-культуры.
Одна из проблем, которая часто возникает в процессе роста команд, – стоимость обучения сотрудников. Эта проблема рассматривается в разрезе повышения квалификации новичков или выпускников колледжа до уровня, позволяющего им вносить вклад в общее дело независимо друг от друга. Также рассматривается предоставление возможностей непрерывного роста и поддержки для штатных сотрудников. Если не тратить время и деньги на создание возможностей по обучению и развитию, низкоквалифицированным членам команды придется делать только тяжелую работу. Им придется выполнять только те задачи, на которые нет ни времени, ни желания у других членов команды. Также они не смогут подниматься по карьерной лестнице.
Если в организациях такие сферы, как ИТ, рассматриваются просто как центры затрат, а не области создания ценностей, вряд ли будет выделяться бюджет для найма сотрудников в ИТ-отдел. Руководство этих организаций заявляет, что вместо найма людей на работу нужно просто автоматизировать соответствующие области. В этом высказывании присутствует лишь доля истины, поскольку в ближайшее время автоматизация не в состоянии полностью заменить человека. Далеко не всю работу можно или нужно автоматизировать, и зачастую более сложная автоматизация приводит к росту масштаба вмешательства человека в случае возникновения каких-либо проблем. Как упоминалось в части IV, ни одна из методик автоматизации либо автоматизированных технологий не может заменить человеческие компоненты разработки. Также не следует рассматривать автоматизацию в качестве еще одного способа уменьшения затрат.
Во многих организациях избегают приема на работу большого числа новичков, поскольку беспокоятся, что пройдет слишком много времени, прежде чем они начнут выполнять «реальную» работу. Также опасения связаны с тем, что более опытным членам команды придется тратить слишком много времени на обучение и наставничество новичков. Но нежелание инвестировать средства в обучение и рост новичков, вероятно, приведет к формированию более однородной команды, а также к созданию условий, менее способствующих росту и развитию в целом. Также не забывайте о законе Брукса : «Если проект не укладывается в сроки, то привлечение дополнительной рабочей силы задержит его еще больше» (Adding manpower to a late software project makes it later). Этот закон сформулировал инженер-программист Фред Брукс в своей книге «Мифический человеко-месяц» ( Mythical Man-Month ). Эта идея, которую сам Брукс признает упрощением [55], аккуратно подводит нас к мысли о том, что затраты и накладные расходы, связанные с наймом дополнительного персонала, следует рассматривать на ранних стадиях проекта.
Новым членам команды понадобится дополнительное время, чтобы «влиться» в коллектив. Даже самому опытному либо знающему инженеру потребуется некоторое время, чтобы привыкнуть к новому проекту и к новой кодовой базе. Также опытным членам команды понадобится потратить рабочее время, чтобы помочь новичкам выйти на рабочий режим. Это время будет потрачено в ущерб основным обязанностям. По мере роста размера команды быстро возрастают накладные расходы на общение между членами этой команды. Далеко не каждая задача может быть разделена между различными людьми, которые будут одновременно работать над ней. Учитывайте эти ограничения, когда соберетесь привлечь дополнительные человеческие ресурсы на выполнение существующего проекта. Также рассмотрите вопросы о необходимости и полезности привлечения дополнительного персонала.
Работа с подрядчиками
Обычно в крупных организациях часть работы отдают на субподряд (так называемый аутсорсинг ). Исторически сложилось так, что организации, стремящиеся сократить расходы, отдают на аутсорсинг такие затратные области, как ИТ или техобслуживание.
Читать дальше
Конец ознакомительного отрывка
Купить книгу