При решении этого вопроса необходимо помнить, что участник команды это не «винтик», как думают некоторые CEO, который можно легко заменить, купив на рынке аналогичный. Я не утверждаю, что программисты незаменимы. Заменимы и еще как. На сегодняшний день средняя текучесть кадров в ИТ составляет по моим оценкам 20–30% в год, однако, отрасль не только не рухнула, но и успешно развивается.
Итак, сколько же надо платить программисту? Как правило рыночная «вилка» вознаграждения для данной квалификации известна, допустим от X до 1.5*X. Можно рискнуть и платить по нижней планке X. Однако, возможность получать в 1.5 раза больше за ту же работу, скорее всего перевесит все остальные стимулы, для удержания специалиста в данной компании. Эта ситуация усугубляется еще и тем, что «охотники за головами» делают разрыв в вилке еще больше, чтобы побыстрее перекупить квалифицированные кадры. Надо ли платить по верхней планке, тем более, если она завышена? А, может быть, следует платить еще больше?
Заранее, приношу свои извинения, за занудность и излишнюю подробность нижеследующего изложения в стиле «как для домохозяек». Сколько раз я не пытался объяснить свое видение подхода к решению этого вопроса людям, которые должны были принимать решение о повышении оклада, они с трудом понимали меня. Может, просто, не хотели?
Программисты заменимы, но у этой замены есть вполне определенная цена (Рисунок 2).
Рисунок 2. Цена замены программиста В.Пупкина на программиста И.Иванова
Определим цену замены программиста В.Пупкина на программиста И.Иванова. Предположим, что Василий успешно работает в вашей компании уже длительное время. Квалификация, опыт и продуктивность его работы постоянно растут, а зарплата, остается на прежнем уровне 2000 у.е. Наконец, Василий оставил вашу компанию в момент Т1, но ваша доблестная кадровая служба в тот же момент (!) на ту же зарплату (!!) нашла ему замену в лице И.Иванова, равнозначную по опыту и квалификации (!!!). Замечу, что это весьма и весьма оптимистичный сценарий.
Начнет ли Иван приносить с первого дня ту же прибыль компании, что и В.Пупкин? Не начнет. Более того, прежде чем он начнет приносить хоть какую-то прибыль, от него будут одни убытки: затраты на внутренне обучение, затраты рабочего времени других участников проекта на консультации и введение его в контекст. И вот, наконец, в момент времени Т2 И.Иванов начнет приносить ту же прибыль, что и В.Пупкин. В результате такой замены компания понесет убытки равные площади заштрихованного участка.
Выполним, приближенную оценку для величины этих потерь. Для этого заменим вычисление площади криволинейной фигуры на вычисление площади прямоугольного треугольника ABC. Найдем катет AB. Сначала найдем величину отрезка между точками Т1 и B. Учтем, что себестоимость единицы рабочего времени программиста складывается из его оклада и накладных расходов (зарплата руководства, уборка, аренда, плата за электроэнергию и проч.). Пусть накладные расходы составляют 200% от зарплаты В.Пупкина. Тогда себестоимость рабочего месяца В.Пупкина составит 6000 у.е. Поскольку, мы рассуждаем об успешном бизнесе, то вправе предположить, что его доходность составляет 25%. Следовательно, компания была должна получать ежемесячный доход от работы Василия, где-то, 7500 у.е. Это е есть искомая длина отрезка между точками Т1 и B. Для того чтобы оценить отрезок между точками А и Т1, предположим, что на начальном этапе адаптации нового сотрудника его коллега с равной зарплатой тратил на помощь ему 20% своего рабочего времени, следовательно компания дополнительно недополучила доход равный 0.2 * 7500 у.е. Таким образом, длина искомого отрезка между точками А и Т1 составляет 1500 у.е. Следовательно, суммарная длина отрезка AB будет равна 9000 у.е.
Величина катета BC = Т2 — Т1, время адаптации зависит от сложности работы, которую делал В. Пупкин и, той роли, которую он играл в проектной команде. Возьмем среднюю величину равную 6 месяцам. Таким образом, по нашей оценке, суммарные потери компании в результате замены Василия составят величину 9000 * 6 / 2 = 27000 у.е., равную площади нашего аппроксимирующего треугольника. И это еще при реализации самого оптимистичного сценария.
Так, сколько же платить? Пусть текущая стоимость квалификации и опыта В.Пупкина на рынке рабочей силы ИТ оценивается вознаграждением от 2000 до 3000 у.е. Очевидно, что при прочих равных условиях вероятность ухода В.Пупкина к конкуренту обратно пропорциональна его доходу, и изменяется от 1.0 до 0.0 в диапазоне рыночных предложений. Если мы не поднимаем Василию зарплату, то с вероятностью, равной 1, компания в ближайшие 6 месяцев недополучит доход на 27000 у.е. Если мы инвестируем в Васю — наш человеческий капитал, и поднимем ему месячную зарплату до 3000 у.е., то он гарантировано останется работать в нашей компании. При этом мы за ближайшие 6 месяцев потеряем только 6000 у.е.
А что дальше? А дальше очередная аттестация и новый пересмотр договора о найме.
Не следует описанное выше принимать как руководство к действию, как алгоритм расчета конкурентоспособной зарплаты ваших разработчиков ПО. Жизнь гораздо сложнее и многообразнее любой модели. Все сказанное выше, следует воспринимать лишь, как подход к тому, как надо думать над вопросом: «Повышать или не повышать зарплату В. Пупкину?»
Институт технологий разработки программного обеспечения, SEI долгое время работал над совершенствованием процессов разработки ПО. Результатом этой работы явилось создание модели зрелости процессов (Capability Maturity Model, CMM). В качестве дальнейшего развития этой модели институт предлагает модель оценки уровня персонала компании (People Capability Maturity Model, P-CMM), которая может служить основой стратегического совершенствования в управлении человеческим капиталом в организации.
Билл Кёртис один из авторов модели P-CMM в свое время проводил исследование среди разработчиков и выяснил, что соотношение в уровне квалификации между лучшими сотрудниками и специалистами среднего уровня составляет 20:1. Однако, не стоит рассчитывать в коммерческой разработке ПО на команды из суперзвезд. Приходится работать с коллективом людей средних способностей. Но выбор правильной технологии и развитие квалификаций сотрудников позволяет создать команду, которая оказывается очень производительной и добивается прекрасных результатов. Мы собираем людей с коэффициентом мастерства, равным единице, а не 20, но организуем их так, что они обеспечивают очень высокий уровень эффективности работы.
Базовый подход модели P-CMM — это осознание ценности каждого работника как личности и необходимости его дальнейшего развития, что полностью соответствует принципам, изложенными в данной книге.
Подобно CMM, модель P-CMM определяет 5 уровней зрелости компании в части организационного развития и управления персоналом [48].
Стратегическими целями разработанной модели P-CMM являются:
Внедрение данной модели в полном объеме, а, тем более, получение формального сертификата, на мой взгляд, относятся к области маркетинговой стратегии и потребуют достаточно больших временных и материальных затраты. Если отвлечься от маркетинга, то большинство организаций используют эту модель для грамотного руководства улучшениями в области развития кадров, а не для сертификации. Примером может служить корпорация Boeing [49], где благодаря внедрению практик People CMM уровня 2 удалось существенно снизить текучесть кадров, улучшить процессы управления производительностью персонала и повысить уровень удовлетворенности сотрудников своей работой.
Программист устроен просто. Он состоит из четырех компонентов: тело, сердце, разум и душа.
Предоставьте все это вашим сотрудникам, и эффективность их труда возрастет многократно. В противном случае профессионалы найдут все это в другой компании, а в вашей останутся только посредственности.
Работа менеджера проекта подобна труду садовника.
Подобно тому, как садовник любовно отбирает наиболее подходящие растения для своего будущего сада, менеджер набирает людей в команду, наиболее соответствующих целям проекта.
Подобно тому, как садовник ищет лучшую почву для каждого растения с учетом его особенностей, менеджер для каждого участника проектной команды ищет наиболее подходящую для него задачу.
Подобно тому, как садовник тщательно лелеет своих питомцев, оберегает их от вредных воздействий, следит за тем, чтобы ни одно растение не затеняло другое, а только дополняло его и способствовало его росту, менеджер проекта терпеливо работает с каждым участником проектной команды, способствуя его правильному развитию, охраняя от внешних и внутренних потрясений, для того, чтобы максимально раскрыть его индивидуальные способности и увеличить отдачу от них, с удовлетворением отмечает каждое новое достижение.
«Что посеешь, то и пожнешь» — этот закон одинаково применим как к труду садовника, так и к труду менеджера проекта. Пренебрежительное отношение к людям породит лишь ответное пренебрежение. Вложите в людей часть своей души, и вам воздастся сторицей.
PS. Я ничего не сказал о том, что для успеха проекта надо еще составлять календарный план, управлять рисками, требованиями, конфигурацией, качеством, проектировать архитектуру, соблюдать стандарты кодирования, тестировать и документировать систему и много чего еще. Но, во-первых, все это вам, скорее всего, уже давно известно. Во-вторых, наличие детальных диаграмм Ганта пока еще не спасло от катастрофы ни один проект. И, наконец, в-третьих, «разруха не в клозетах, разруха в головах», как говорил профессор Преображенский.