- PVSM.RU - https://www.pvsm.ru -
Disclaimer: в этой статье есть целый блок рассуждений о том, как считать показатели KPI для сотрудников-программистов и разработчиков — по многочисленным просьбам читателей.
KPI обсуждаются на конференциях, про KPI пишут сложные статьи в журналах, KPI ненавидят сотрудники и недолюбливают боссы. KPI своей медалькой и работой считают HR-специалисты. И почти всё это с KPI происходить не должно, потому что это обыденная метрика, показывающая результативность каждого сотрудника и обеспечивающая конвертацию результатов труда в некие баллы, а уже баллы при желании в деньги. Время идёт, проблемы не убывают, KPI в ИТ-сфере — так вообще притча во языцех. В этот раз мы решили разобрать три важных вопроса использования ключевых показателей в компаниях. Даёшь тянуть правильную морковку!
[1]
KPI должен быть правильным
1. Наверное, самый популярный способ — считать в Excel. Это удобный инструмент: можно прописать различные показатели в отдельных листах и затем рассчитать агрегированный показатель с помощью формул на главном листе.
Преимущества: просто, доступно, недорого (если не считать стоимость самого Excel).
Недостатки: сложности при сборе и агрегации показателей, приходится сперва собирать показатели с сотрудников, потом руководителю проверять данные, собирать их в один документ, передавать данные в бухгалтерию или топ-менеджеру. Дополнительные сложности возникают при работе с формулами и макросами — кто-то, да собьёт. KPI в Excel легче всего подделать.
2. Считать в специализированной программе. Существует программное обеспечение, которое позволяет рассчитать KPI исходя из особенностей данных и желаемого механизма расчёта. Это довольно сложные программы, которые либо полностью ориентированы на расчёт ключевых показателей, либо содержат ещё какую-то бизнес-функциональность.
Преимущества: мощный набор возможностей, простота сбора данных, безопасность.
Недостатки: первый — дороговизна решений, цены некоторых вендоров мы просто не можем объяснить. Второй — сложность и перегруженность интерфейса. Третий — необходимо приобретать очередное ПО в свой программный зоопарк, а это дополнительные расходы.
3. Считать в CRM-системе. Мы несколько лет апробировали, использовали и рефакторили модуль расчёта KPI в RegionSoft CRM [2]. В итоге получился продвинутый инструмент, предполагающий возможность вычисления как самых простых показателей, так и сложных составных, дочерних, в том числе требующих использования скриптинга, благодаря которому сложность расчетов показателей фактически становится безграничной. Таким образом, вместе с CRM вы получаете мощный софт для расчёта KPI.
Преимущества: первое — максимальная автоматизация. Вторая — не нужно вносить данные вручную, вы настраиваете правила расчёта показателей и они сами по мере заполнения данных в процессе оперативной работы «забирают» данные из CRM-системы, которая знает обо всех транзакциях и бизнес-процессах в бизнесе. Все работает онлайн, в единой информационной системе и полностью автоматически.
Недостатки: настройка некоторых сложных показателей требует навыков программирования.
Определите стратегические цели вашей компании — в целом и для каждого отдела в частности. Например, у нас есть компания RegionSoft Developer Studio и мы разрабатываем CRM. Как у любого разработчика, у нас есть стратегические цели: разрабатывать ПО, обновлять и рефакторить разработанное ПО, продавать своё ПО, поддерживать пул пользователей (а их тысячи). Соответственно, должны быть ключевые показатели (KPI) для продажников, для сотрудников технической поддержки и для… а программистов мы пока оставим в покое. Так вот, задайте цели и определите, какой вклад в них вносит каждое подразделение. При этом цели могут быть как финансовые, так и целевые, и смешанные.
И это единственный показатель производительности, который растёт. К сожалению, это моё кровяное давление.
Выберите измеримые, целесообразные и выполнимые показатели KPI (мы писали, какими именно они должны быть [3]). Задайте измерение: веса, денежное и количественное выражение. Задайте корректирующие коэффициенты и периоды для проведения анализа.
Например, вы хотите задать план продаж метизов на сумму 12 000 000 рублей за год силами трёх продажников, при этом вам приоритетно, чтобы дюбелей продалось не менее, чем на 30% от суммы. Прикидываем: в месяц надо продать на 1 000 000 рублей, из них на 300 000 руб. дюбелей. Ставим план менеджеру — 333 300 р., при этом за продажу дюбелей назначаем коэффициент сделки 0,02 — то есть менеджер получит 2% от суммы проданных дюбелей, а за остальные метизы 0,015 — 1,5%. Результат — менеджеры будут мотивированы продавать больше дюбелей, поскольку за равный объем реализации с продажи дюбелей они получат большую зарплату. Это и есть KPI.
При кажущейся простоте вычисление KPI вызывает у компаний сложности, и ответственные менеджеры либо просто делят доли между наименованиями, либо отходят в сторону матриц с оценкой лояльности коллегам, взаимовыручки и прочих способов получить законные "-2".
В своей новой RegionSoft CRM 7.0 [2] мы постарались исключить человеческий фактор и тщательно переработали прежний механизм KPI, о котором писали на Хабре [3]. Теперь вы можете воспользоваться мастером расчёта KPI или настроить систему показателей вручную. Как это работает?
В RegionSoft CRM KPI могут быть настроены для каждого сотрудника исходя из его персональных обязанностей и из целей его подразделения.
Первым делом проводится анализ данных, лежащих в базе расчёта KPI. Это могут быть любые сведения, зарегистрированные в системе:
Любой показатель может быть составным и включать несколько типов данных. Далее вы настраиваете профили планирования с набором показателей для каждого из сотрудников, для отделов или компании в целом. Планы могут быть заданы на день, неделю, месяц, квартал и год.
Вот как это делается:
По итогам начисления KPI в RegionSoft CRM [2] вы можете собрать несколько отчётов по достижению целей в разрезе показателей с детализацией или без неё. Кстати, каждый сотрудник в интерфейсе CRM видит свой личный KPI-монитор и может отслеживать, с какой скоростью он идёт к выполнению плановых показателей.
Также по итогам расчёта KPI в нашей CRM-системе можно рассчитать заработную плату:
Если вам необходимо настроить сложные KPI, то RegionSoft CRM умеет рассчитать абсолютно всё — было бы умение. Если для настройки вашей системы KPI вам требуется помощь, специалисты вендора всегда придут на помощь и готовы организовать учет «под ключ»., а если хочется разобраться самому — посмотрите это видео:
Если в компании есть KPI, его скорее всего недолюбливают. Это распространённая ситуация, несмотря на то что эти коэффициенты имеют изначально позитивную цель — заплатить сотруднику бонус за его работу, оценить достижения (напоминаем всем, что KPI может прибавлять деньги к окладу, но не может вычитать деньги из оклада!). Почему так происходит?
Немного работали, писали много отчётов — итак, где KPI, отражающие нашу эффективность?
Во многом KPI в CRM-системе (то есть автоматизированный продукт) хороши именно тем, что исключают подобные ситуации — можно легко проконтролировать все KPI по каждому сотруднику, просмотреть детализацию начислений, открыть и посмотреть, как именно рассчитываются показатели. Наконец, в CRM-системе можно установить одного-двух ответственных, компетентных и вместе с тем независимых людей, имеющих доступ к контролю за выполнением показателей.
Например, в одной компании в KPI, кроме выполнения плана, учитывались три поведенческих фактора: «общая контактность», «открытость новому», «количество обращений к коллегам» (если больше трёх — это плохо и понижающий коэффициент). Дополнительной проблемой в компании явилось то, что холдером процесса KPI был департамент HR, который дружил с маркетингом и ненавидел продажи. В итоге вся система показателей, которая должна быть завязана на коммерческом результате, была направлена против основной части коммерции. Не надо так.
Важный момент: сотрудники могут искать способы подделать коэффициенты или исправить их перед непосредственным расчётом вознаграждения. Вся их работа превратится в погоню за выполнением показателей. Производительность от этого не вырастет. Обязательно проконтролируйте права доступа сотрудников к файлу или системе подсчёта KPI, защитите ячейки и листы, если речь идёт об Excel. Не стесняйтесь перепроверить предоставленные данные, если у вас недостаточно настроена автоматизация. Нелишний совет: постарайтесь избегать работы с KPI в браузерных приложениях, где можно подменить ссылки, передать ложные данные и найти иные способы обхода.
Люди играют в игры и стремятся получить ачивки, часть которых превращается во внутриигровую валюту. Им это нравится и они азартно преследуют цели. По сути— тот же KPI. Но почему-то KPI (несущий реальные деньги!) не любят, а из-за ачивок ночей не спят. Кажется, есть над чем задуматься.
Мы не могли обойти эту тему стороной. Вопрос, который уже не один десяток раз поднимался на Хабре и других ресурсах, связанных с IT, может поставить в тупик кого угодно. Это вопрос о том, каким должен быть KPI разработчика программного обеспечения. Однозначного ответа тут точно не может быть: да, конечно, можно оценивать завершённые задачи, закрытые баги, объём кода (по функциональности, а не по строчкам кода, конечно), затраченное на разные проекты время, но это как-то… субъективно, что ли.
KPI по сути это мотивирующий инструмент. Например, за продажу продукта с большей маржой компания ставит коэффициент выше, и продажник стремится «сделать» план именно на этой продукции, а бизнес получает нужный объём продаж. На что мы можем мотивировать разработчика? Он создаёт интеллектуальный продукт и получает заработную плату (нередко выше менеджеров) за то, что закрывает рабочие задачи. Нельзя поставить ему план на рекурсивные функции, на циклы или на качество кода. Либо он сделал свою работу, либо нет. Поэтому KPI для программиста могут быть только не связанными с основной работой на уровне «помощь коллегам, наставничество, участие в митапах и статьи на Хабре». Но это же маразм, согласитесь, — направлять труд и время человека в нерабочее русло, чтобы он больше заработал.
Когда-то очень давно на глаза попадалась зарубежная статья о том, как делать KPI для web-программистов. Вот, что предлагалось оценивать: фактические рабочие часы против часов по ТЗ, количество ошибок, наличие документации (ну эти три пункта ещё куда ни шло), объяснения с заказчиком, энтузиазм разработчика, уровень освоения требований, уверенность в успешном завершении проекта, общение с членами команды, эффективность выбранных подходов к программированию… Всё это предлагалось оценить по шкале от 1 до 10. Представляется примерно так: если после общения с заказчиком разработчик пнул стол, стукнул клавиатуру и сказал «бл...», это 1 или 2, а если радостно налил кофе и выразил энтузиазм — 9 или 10. Короче, это не та история, которой нужно следовать.
А ещё попалось частное исследование [4], в котором 300 разработчиков ответили на вопрос, какие показатели они считают ключевыми:
Ты, как разработчик, что считаешь наиболее важной метрикой эффективности разработчика?
Вот как распределились ответы:
Тот случай, когда не нужен перевод, но нужно протереть глаза, чтобы поверить, что эти пункты обозначили сами разработчики, а не их тимлиды или менеджеры проектов. «Личность разработчика» с 12,6% и 10,8% «строчек кода» несколько даже пугают. А вот покрытие тестами и качество кода вполне ничего (тут, правда, встаёт очередной вопрос — что есть качество кода, как его оценивать?).
Но мы-то знаем, как оценивать качество, мы-то знаем :-)
Реакция на результаты вместо тысячи слов:
Итак, «быстрый и дружелюбный» победили? Идиотизм.
Если кроме шуток, всё же можно покопаться и найти те метрики, которые применимы для KPI в разработке. (Кстати, для тех, кому нужно, есть прекрасная дискуссия на Quora [5]).
Если у вас Agile (а он в какой-то мере сейчас у многих, просто не у всех с заморочками, ненужным персоналом и осознанием, что это Agile), то можно выбрать такие показатели как сокращение времени от идеи до запуска, изменение длительности цикла разработки, изменение качества и длительности спринта, закрытые задачи и разработанные фичи из бэклога. Но опять же, нужны интегрированные показатели, потому что в августе можно вытащить 7 задач из бэклога типа «добавить синий шрифт к интерфейсу», «сделать зелёную заливку у итоговых полей», а в сентябре это может быть 0,5 задачи, но из разряда «добавить функциональность пользовательских калькуляторов». Поэтому целевые показатели нужно обязательно соотносить с бизнес-целями. Например, в случае привязки коэффициента к разбору бэклога каждому типу задачи присваивать свои веса. В KPI можно включить степень отказоустойчивости программного обеспечения и количество багов (открытых и пофикшенных).
Однако каждый разработчик — это уникальный человек со своими подходами, скоростью работы, качеством, параллельными задачами и т.д. И даже фрагменты одного проекта не похожи один на другой. Поэтому привязывать программиста к KPI всё же очень плохая идея — во-первых, если он не работает, это видно и без показателей, во-вторых, зачастую можно на чём-то «застрять», решить важнейшую для ПО проблему, но остаться без премии, в-третьих, оценка всё же субъективна. Поэтому лучше выбрать постоянную премию по факту «выполнил в срок — выполнил до срока» и т.д. Иначе можно получить демотивацию и навредить самим себе.
Вот такой простой разговор о KPI у нас получился — без сложных формул, которые так любят приводить в бизнес-журналах. Все формулы можно сделать автоматизированно, с помощью мастера KPI, ручной настройки или скриптинга в RegionSoft CRM [2] (ну или другом софте). Это всё дело техники. Главное, понять, зачем вам нужны эти показатели, как они будут работать и соотноситься с целями бизнеса, и куда они вас приведут. Не относитесь к KPI как к чему-то сверх сложному, это всего лишь план, факт и оценка выполнения этого самого плана. Тогда и сотрудники воспримут KPI как ачивку. Конечно, не ту, из-за которой не спят ночь. Но как ту, ради которой приятно поработать.
И да, не внедряйте KPI там, где их не должно быть. В ИТ таких сфер хватает.
→ Потихоньку пишем видео с обзором функциональности [7]
→ Наш Telegram-канал [8]
Автор: Axelus
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/upravlenie-personalom/291553
Ссылки в тексте:
[1] Image: https://habr.com/company/regionsoft/blog/422241/
[2] RegionSoft CRM: http://www.regionsoft.ru/
[3] мы писали, какими именно они должны быть: https://habr.com/company/regionsoft/blog/308800/
[4] исследование: https://medium.com/@yupyork/the-best-developer-performance-metrics-6295ea8d87c0
[5] дискуссия на Quora: https://www.quora.com/What-are-good-KPIs-for-programmers
[6] Наша новая флагманская RegionSoft CRM 7.0 : http://www.regionsoft.ru
[7] Потихоньку пишем видео с обзором функциональности: https://www.youtube.com/watch?v=KtqzFNIde80&list=PLqlF-KSlcmZ3ot5t2F0T5ov3jwhUkazF1
[8] Наш Telegram-канал: https://t.me/bizbreeze
[9] Источник: https://habr.com/post/422241/?utm_campaign=422241
Нажмите здесь для печати.