Мало кто захочет нанимать младших разработчиков для проекта, который трещит по швам.
Однако они берут это.
И я заметил, что есть компании, которые боятся нанимать пожилых людей.
Компания предпочтет нанять нескольких младших сотрудников вместо одного старшего.
Идея взять одного старшего вместо среднего или юниора, можно сказать, даже не рассматривается.
Приведем возможные аргументы в пользу того, что кадровая политика строится на привлечении юниоров и их последующем росте.
Отказ от ответственности № 1 : Конечно, деление на младших-средних-старших, использованное в статье, крайне условно и мало связано со стажем работы, а градация и уровень зарплаты сильно зависят от компании, в которой выставляется оценка.
Однако мы живем в реальности, в которой подобная терминология используется в вакансиях ведущих ИТ-компаний, и все мы так или иначе понимаем, о чем идет речь, и примерно какой набор требований предъявляется в том или ином случае.
.
И предвосхищая дальнейший текст статьи, уверяю вас, что для сделанных выводов не столь важны абсолютные величины.
Отказ от ответственности № 2 : Рассуждения, по большому счету, идут не о топовых компаниях, у которых и так все в порядке, а об остальном большинстве.
Разговор идет и о технически сложных изделиях, хотя в возможность существования простых я в общем случае не очень верю.
Простые продукты (вспоминая Пола Грэма и его книгу «Хакеры и художники») вряд ли смогут успешно выжить на конкурентном рынке, иначе их было бы слишком легко скопировать и повторить.
В классическом варианте, конечно, есть желание сэкономить.
Вы можете заплатить юниору немного.
Их много на рынке, их легче достать.
Да, в первые месяцы это будет бесполезно, но через несколько месяцев оно начнет приносить пользу, а через год окупит все затраты.
Также можно немного сэкономить, а точнее потерять, если юниор не прошел испытательный срок.
Такая потеря не является особенно болезненной по сравнению с потерей более высокооплачиваемого специалиста.
Один старший может распараллелить работу, нагрузив троих младших задачами низкой сложности, взяв на себя задачи более высокого уровня и сложности.
Таким образом, мы сделаем продукт и заплатим меньше, хотя, возможно, не так идеально и быстро.
И нанимая джуниора за небольшую зарплату, мы не подрываем сложившийся уровень зарплат внутри компании.
Почти все аргументы несостоятельны.
Давайте по порядку.
Стоимость продукта у юниоров выше, чем у профессионалов.
Выплачивая зарплату джуниору, вы платите не за работу над продуктом, вы платите своего рода базовый минимум, чтобы ему было на что жить, и конечно за надежду, что когда-нибудь он сможет полноценно работать.
стоять у машины.
Дальнейшее повышение заработной платы с самого начала сильно непропорционально росту эффективности.
Те.
Стоимость работ, выполняемых низкоквалифицированным работником, выше, чем у более квалифицированного работника.
Давайте объясним это.
При оплате мидла половина комиссии уходит в упомянутый выше базовый комплект, а остальная часть уходит в продукт. Ведь средняя зарплата – это условно две зарплаты младшего, а старшая – это 3 зарплаты младшего.
Таким образом, вместо двух старших можно взять 6 юниоров или 3 середняков.
В случае 2-х пенсионеров 2/3 фонда оплаты труда уходит на продукт, а 1/3 – на базовый комплект. В случае 3-х мидлов 1/2 фонда оплаты труда уходит на создание продукта и 1/2 - на базовый комплект. Теперь вспомним о кривой роста эффективности.
График основан на моем опыте.
Принимаем предположение, что уровень программиста соответствует зарплате.
Конечно, это кажется несправедливым.
Фредерик Брукс, Пол Грэм и дядя Боб считали, что высококвалифицированные разработчики в пять-десять раз эффективнее других.
Таким образом, становится совершенно очевидно, что каждый рубль, вложенный в сениор, окупается гораздо быстрее, чем в джуниор.
«Мифический человеко-месяц»:
Менеджеры проектов по программированию уже давно осознали, насколько значительны различия в производительности между хорошими и плохими программистами.Тем не менее результаты точных измерений этой величины просто поражают. В одном из своих исследований Сакман, Риксон и Грант измеряли продуктивность группы опытных программистов.
Даже внутри этой группы соотношение максимальной и минимальной производительности в среднем составляло 10:1, а по времени выполнения программ и затратам памяти — 5:1. Короче говоря, программист, зарабатывающий 20 000 долларов в год, может быть в 10 раз более продуктивным, чем тот, кто зарабатывает 10 000 долларов.
Обратное также может быть правдой.
Статистика показывает, что нет никакой связи между опытом и производительностью.
(Однако я сомневаюсь, что это всегда будет правдой.
)
Общение является узким местом
Продолжая сравнивать 3-х юниоров против одного старшего, нельзя забывать, что общение и синхронизация 3-х юниоров займут около 10-20% общего времени.Чем больше людей, тем больше затраты.
Таким образом, набор джуниоров также противоречит стратегии сохранения наименьшего количества разработчиков, работающих над проектом.
О чем я говорил Келли Джонсон из Skunk Works и, конечно же, Брукс.
Джуниор — это инструмент, а не самодостаточная единица
Юниоры, как правило, совершенно не способны решать сверхсложные задачи.И есть иллюзия, что он может решить простые задачи.
Да, может, но если это задачи в вакууме.
Но в рамках сложного продукта простота задачи может быть не столь очевидной.
Здесь уже понадобится видение, которое есть только у лорда.
Моя практика говорит, что в сложных продуктах нет простых задач, есть только степень ответственности старшего.
Джуниор может не заметить, что «простая» проблема на самом деле требует сложного решения, и не увидеть необходимости в рефакторинге.
Зрение юниора достаточно узкое и неглубокое.
А это требует внимательного контроля, повышенного понимания старшими товарищами сути «простой» задачи, чтобы не упустить сложность.
И как правило, такое погружение и выполнение задания превышает время самостоятельного выполнения задания старшим.
На короткой дистанции юниор может показаться более эффективным, чем он есть на самом деле, но только если не учитывать общую эффективность в долгосрочной перспективе, учитывая, что она бумеранговая.
Похожи на подобные
Профессионал заинтересован в работе с профессионалами; их тянет друг к другу.Синергия их качеств рождает правильные решения.
Работа в интересной команде с интересным продуктом может быть так же привлекательна, как и высокая оплата.
Для роста юниорам нужны профессиональные разработчики.
Но большое количество средних и юниоров просто топят старших.
Талантливые юниоры вымываются в более интересные команды.
Вечные юниоры и середняки подолгу крутятся вокруг команды.
Профессиональные разработчики также теряют интерес и уходят или становятся скучными под количественным давлением некомпетентности.
При таких призывах, скорее всего, другие взгляды на разработку продуктов расходятся со взглядами талантливых юниоров, что еще больше подогревает их бегство в успешные компании.
Дальше начинается порочный круг.
Наем профессионала против юниора
Сеньору проверить несколько проще.Он знает, чего хочет, с ним можно поговорить и не снисходительно относиться к его молодости, к тому, что в человека не стреляли.
Его можно оценить гораздо точнее и не гадать по кофейной гуще, что в итоге вылупится из яйца.
За вашей спиной есть проекты, которые вы можете обсудить и оценить, посмотреть код на Github или провести сеанс парного программирования.
Величина ошибки при неудачном найме профессионала может быть выше, но вероятность ошибки значительно ниже.
Наем юниоров – это гораздо большая лотерея.
Какой процент юниоров вы превратили в пожилых людей? Конечно, мы не рассматриваем явные таланты из хороших вузов, которые в нашем случае не блещут. Наличие блеска в глазах, психологическая совместимость, умение писать алгоритмы и код почти всегда не являются признаком того, что из человека получится старший или даже хороший посредник.
Сколько раз вы сталкивались с тем, что все это есть, но возможность решать проблемы отсутствует. К счастью, для эффективного найма необходим поток молодых специалистов, ищущих золотые песчинки во время стажировок.
Общие затраты на весь этот процесс настолько высоки, что речь идет не о маленьких или бедных компаниях.
Юниоры крадут время у самых боеспособных подразделений
Когда к нам приходит новый разработчик, старший или другой опытный член команды будет тратить свое драгоценное время не на создание продукта, а на обучение и участие в проекте.Очевидно, что на джуниора придется потратить на порядок больше времени и умножить на 3, если джуниоров будет трое против одного возможного старшего.
Подводя итог: команда мечты
Получается, юниоров вообще следует избегать? Куда им тогда идти? Конечно, можно взять юниоров, но на «сдачу».Наем юниоров как стратегия на отдаленное будущее – это в некотором смысле рискованная инвестиция.
По моему опыту, для команды из 5 человек максимально допустимо — 1 младший и 1 средний.
И это не история о том, что джуниоры и мидлы — это тестировщики, девопы, технические специалисты.
Допустим, у нас есть бюджет 550-600 рублей на команду.
Вы можете пойти двумя путями и попытаться сформировать классическую команду из 7 человек или сосредоточиться на максимальном количестве профессиональных разработчиков.
Попробуем представить, как могла бы выглядеть первая команда:
Команда построена на базе юниоров
Для каждого разработчика в списке ниже мы оценим крайне среднюю производительность, исходя из того, что было сказано ранее.1) Старший ведущий - 150 руб.
(8x - 4x (Половина времени на обучение и организацию) = 4x) 2) Средний? — 110 тр.
(5x - 1x тренировка = 4x) 3) Средний? — 80 т.р.
(2x) 4) Средний? — 65 тр.
(1x) 5) Средний? — 60 тр.
(1x) 6) июнь - 55 т.р.
(0,2x) 7) Июнь - 50 т. р.
(0) Общая производительность без учета затрат на связь: 12,2x Принято считать, что добавление в команду каждого нового участника съедает до 5% общего времени общения.
Что.
общая производительность, включая потери связи: 12,2x * 0,7 = 8,54x КПД: 66 тр.
за 1х производительность.
Проблемы этого варианта, помимо низкой эффективности:
- Сложности в снижении текучести кадров.
Многие сотрудники находятся на этапе быстрого роста заработной платы.
Уровень заработной платы должен соответствовать навыкам и рынку, и это может быть сложно синхронизировать.
Легче уйти в другую компанию с увеличением зарплаты.
Кроме того, можно предположить, что такое стремление снизить затраты для людей негативно отразится на зарплатах ведущих разработчиков, заставив их чаще искать в другом месте.
- Трудности с ведением бюджета.
Зарплаты младших специалистов на начальных этапах растут быстрее инфляции и производительности труда.
Старшая команда
1) Старший руководитель - 170 (8х - 2х (Организационная деятельность) = 6х) 2) Старший - 160 (8х) 3) Старший – 160 (6х) 4) Средний – 100 (3х) Общая производительность без учета накладных расходов на связь: 23x Общая производительность, включая потери связи: 23x * 0,8 = 18,4x КПД: 32 тр.за 1х производительность.
Дополнительные преимущества, помимо высокой эффективности:
- Большой запас эффективности позволяет повысить зарплату, чтобы удержать сотрудников до того, как команда станет неэффективной по сравнению с младшим коллективом.
- Продукт более качественный (быстрее, эффективнее, удобнее, проще)
выводы
Стратегия набора персонала, основанная на младших сотрудниках, очевидно, вредна для тех, кто будет нанимать пожилых людей.Команда сеньоров экономически гораздо эффективнее, чем команда с большим количеством юниоров и середняков в любой момент времени.
Более тщательный расчет эффективности, хотя бы с учетом упомянутых выше факторов, только увеличит этот разрыв.
Поводом нанимать джуниоров и поднимать сеньоров может быть случай, когда сеньоров невозможно найти в принципе, или как способ перехватить суперталанты, но с учетом того, что после найма джуниора вернуться к прежней продуктивности уже не получится.
Теги: #Управление развитием #Управление персоналом #найм #версус #младший #старший
-
Бериллий
19 Oct, 24 -
Как Убить Ваш Принтер
19 Oct, 24 -
Зачем Нужны Флешки С Аппаратным Шифрованием?
19 Oct, 24 -
Исследование Тарифов Виртуального Хостинга
19 Oct, 24 -
Ультраэдит 13.00
19 Oct, 24