Россия+7 (495) 960-65-87

Как мы строили систему обучения и мотивации программистов. Опыт одной студии

Россия+7 (495) 960-65-87
Шрифт:
5 13140

В моей студии 15 человек, половина из которых – программисты. Студия специализируется на разработке интернет-магазинов, так что программисты для нас – основной ресурс.

Есть три вещи, которые всегда требуются от программистов:

  • Быстрее сдавать проекты.
  • Укладываться в собственную оценку трудозатрат.
  • Расти и развиваться

Но по разным причинам они не всегда к этому готовы.

Как мы мотивировали программистов на улучшения по всем трем направлениям, с какими сложностями столкнулись и что из этого вышло, расскажу в статье.

Как начать быстрее сдавать проекты

Сразу проговорим, почему это важно: если программист быстрее сдает проект, компания быстрее зарабатывает на запуске, и в конечном счете быстрее зарабатывает сам программист. Так как он быстрее переходит к следующему проекту, а предыдущий уходит на поддержку и продвижение. Казалось бы, все очевидно. Тем не менее мы видели, что программисты выполняют задачи и сдают проекты не настолько быстро, насколько могли, и решили помочь им ускориться.

Как мотивировали

Первый этап

Первым вариантом было составить зарплату программиста наполовину из оклада и наполовину из бонусов за выполнение проекта. В результате компания и разработчик будут «в одной лодке», и успешность одного будет прямо влиять на успешность второго. Казалось бы, все логично, остается только ускориться.

Что нужно, чтобы быстрее выполнить проект?

Очевидно, нужно быстрее программировать. Как это сделать? Меньше отвлекаться и все хорошо делать сразу, чтобы не пришлось переделывать.

Но здесь мы уперлись в другую проблему: программисты не всегда отвлекаются по своей вине или по своему желанию. Например, менеджер может перевести программиста на решение задач по поддержке его же более ранних проектов.

К тому же между разработкой и сдачей проекта находится длительный и проблемный процесс интеграции. Так что программист получал бонусы за разработку еще не сданного проекта. Это казалось не очень логичным, поэтому мы продолжили искать варианты.

Второй этап

Вторым решением было выплачивать бонусы по факту сдачи проекта, а не по факту его выполнения.

Теперь программистам стало еще хуже: на получение ими бонусов влияли не только сопутствующие задачи, но и, например, скорость предоставления заказчиком доступов для интеграции с оплатой и доставкой (а иногда это несколько месяцев), и скорость работы его 1С-специалистов (для интеграции с 1С).

Также на этапе программирования вскрываются все ошибки предыдущих шагов: планирования, проектирования, дизайна. И программисту приходится их исправлять фактически за голый оклад (а он в рамках этой системы был очень мал). Получается, что программист остается без бонусов (а они существенны) не по своей вине.

Такой расклад был недопустим, и эксперимент с бонусами за проекты пришлось свернуть.

Здесь пришло время извиниться перед командой разработчиков за такие эксперименты. До сих пор поражаюсь, как они все тогда не разбежались.

Результатом эксперимента стало понимание того, что программисты достаточно сильно мотивированы делать задачу быстро и хорошо, если им при этом не мешать. И в дополнительных стимулах в нашем случае не нуждаются.

Так нужна ли в этом случае материальная мотивация?

Нужна. Небольшая премия по факту сдачи проекта мотивирует программиста не «лучше работать» (для этого, по нашему опыту, ему не нужен стимул), а вникать в смежные области. Например, программист вместе с менеджером проекта изучает дизайн-макеты до показа их клиенту, ищет в них нестыковки и проблемные места. В итоге проекты намного легче программируются и сдаются заказчику.

Соотношение оклада и премии при этом на уровне 80/20%.

Мотивируем укладываться в свою оценку трудозатрат

Если невозможно сдавать проекты быстрее за счет материальной мотивации разработчиков, то, может быть, стоит мотивировать программистов укладываться в собственные оценки сроков по задачам?

О чем речь: на основе оценок трудоемкости задач планируется работа программистов – расставляются задачи на краткосрочную (неделя) и долгосрочную (1–2 месяца) перспективу. Соответственно, если программист не уложится в указанный срок, то посыплется весь план-график работ, сдвинутся дедлайны по зависимым от него проектам И так далее.

Как помочь программисту укладываться в запланированные сроки?

Можно премировать, если уложился в оценку. Можно депремировать, если не уложился.

Однако и первое, и второе решение предполагают, что дело тут исключительно в мотивации, а не во внешних причинах. Мы же уже выяснили, что программисты, если им не мешать, работают настолько хорошо, насколько это вообще возможно.

Мы начали проводить ретроспективы, чтобы выяснять, почему конкретная задача заняла больше времени, чем планировалось, с целью найти «узкие места» либо в самой задаче, либо в контексте ее исполнения, либо в знаниях программиста.

Это помогло, задачи стали чаще делаться за отведенный срок. Стало очевидно, что нужно узнавать о затянувшихся задачах раньше, чем они выпадут из дедлайна.

Для этого мы придумали «предварительные ретроспективы». Когда прошло более половины отведенного на задачу времени, а задача еще не близка к половине, то программист сообщает об этом менеджеру, и они вместе ищут причины.

Итак, из-за чего можно не уложиться в срок по задаче

Задача изначально была неверно оценена

Либо неверно оценили сложность, либо выбранное при оценке решение, в итоге не подошло. Это значит, что у программиста есть пробел в знаниях в конкретной области. Важно! Эта информация используется для обучения, а не для наказания программиста.

Задача обросла деталями по ходу

Если детали пришли от заказчика и на старте они не были очевидны, то программист корректирует оценку, а менеджер продает недостающие часы работы и сдвигает дедлайн.

Если детали были очевидны, но менеджер их упустил

То это уже говорит о пробелах в знаниях менеджера. Мы понимаем, что должен изучить менеджер, чтобы аналогичные проблемы более не возникали.

А все же нужна ли здесь финансовая мотивация?

Нужна. Мы считаем премию по количеству часов, проданных заказчику и отработанных программистом. Цель остается той же: будучи мотивирован дать точную оценку, программист глубже вникает в задачу, иногда направляя ее на уточнение, иногда предлагая свои версии.

Обучение программистов и мотивация к развитию

На этапе ретроспектив мы находим пробелы в знаниях программистов. Но как подтолкнуть их к тому, чтобы учиться и закрывать эти пробелы?

Мы находимся в Краснодаре, и тут в общем одна ecommerce-студия (собственно, мы). Это значит, что готовые кадры взять особо неоткуда. И всех нужно либо выращивать с нуля, либо «доращивать» с того уровня, который у них был в других студиях.

Что должен знать программист

  • Фронтенд
  • Бэкенд
  • Движок
  • Интеграции (1С и так далее)
  • Linux, Nginx, Apache

Таким образом, у нас есть 5 направлений компетенций. В каждом из них есть определенный набор навыков, из которых формируется карта компетенций программиста. Она определяет деление разработчиков на уровни (Стажер, Джуниор, Мидл, Сеньор).

С повышением уровня растет оклад.

Как мы растили разработчиков

Гипотеза 1

Первой идеей было выдать разработчикам карту компетенций и методические материалы и предложить самим развиваться по ним.

В Битрикс24 мы завели автоматические задачи, в которых каждый должен был отчитываться о прогрессе в обучении.

И тут я столкнулся с первой проблемой. Программисты почему-то не хотели учиться и не хотели расти по карте компетенций. 

После пары месяцев тщетных попыток, я догадался спросить их: а что не так? Оказалось, что слишком большая разница в компетенциях между разными уровнями. И она не мотивирует обучаться.

Гипотеза 2

Тогда я решил разбить уровни на несколько ступеней (в процентах от изученной карты компетенций). И за каждый уровень давать небольшую прибавку к окладу.

Стало несколько лучше. Программисты потянулись учиться и сдавать экзамены. Но все же слишком медленно.

Выяснилась следующая проблема: изучать материалы дома нет ни сил, ни времени, а на работе программисты загружены задачами. Так что те, у кого есть свободные полдня на самообразование, продвигались по карте компетенций, а те, у кого нет – так и оставались на прежнем уровне, что здорово их демотивировало.

Гипотеза 3

Выдать свободное время. Между задачами программистам стали оставлять несколько часов в неделю на обучение.

И вот это сработало. Программисты стали заниматься саморазвитием, сдавать тесты и расти в зарплатах. Тех, кто не готов учиться при условии выделенного времени и перспектив роста, стоит просто оставить в покое. Есть люди, которым комфортно на их уровне, и если они при этом могут закрывать какие-то задачи, то почему нет?

Выводы

  • По нашему опыту, программистам достаточно внутренней мотивации, и, если им не мешать, они работают настолько хорошо, насколько это возможно.
  • Премии служат дополнительным мотиватором не столько для повышения качества работы, сколько для погружения в работу смежных специалистов (поиск проблемных мест в дизайне и ТЗ до того, как оно будет окончательно согласовано).
  • Все инструменты обучения бессмысленны, если нет двух важных вещей. Ощущения прогресса (в том числе достижимого вознаграждения) и выделенного для этого времени. Поверьте, когда программист, едва успев закрыть таски за день, час добирается от работы до дома, ему после этого уже абсолютно не до вашего «плана развития». И рассуждения о том, что «Ты сейчас выучишься, и у тебя появится свободное время», будут рождать лишь одну молчаливую реакцию – «Не верю».

(Голосов: 9, Рейтинг: 5)
Читайте нас в Telegram - digital_bar

Есть о чем рассказать? Тогда присылайте свои материалы Даше Калинской


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • Дмитрий Юрьевич
    2
    комментария
    0
    читателей
    Дмитрий Юрьевич
    3 недели назад
    Хорошая статья.
    -
    2
    +
    Ответить
  • Екатерина Рассказова
    1
    комментарий
    0
    читателей
    Меня прям зацепило)
    Так прониклась судьбой Краснодарских программистов! Очень интересно - как в кино)
    -
    3
    +
    Ответить
  • Максим Боровой
    9
    комментариев
    0
    читателей
    Максим Боровой
    3 недели назад
    Спасибо за опыт, не пробовали вообще уходить от системы каких то KPI, выдавая человеку окладом всю его зарплату? Чтобы он мог делать, то что хорошо умеет, точно зная, что свои деньги за хорошую работу он получит точно?
    -
    1
    +
    Ответить
  • Сергей Г
    3
    комментария
    0
    читателей
    Сергей Г
    3 недели назад
    Спасибо за честную статью
    -
    3
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Google Data Studio: делаем красивые отчеты по контекстной рекламе для клиентов
Светлана Зубрицкая
1
комментарий
0
читателей
Полный профиль
Светлана Зубрицкая - Нужно убрать пробелы между строк и заменить кавычки на вот такие "
#SEOnews14: мы празднуем – вы получаете подарки!
Rizat Sundetov
1
комментарий
0
читателей
Полный профиль
Rizat Sundetov - 14
Как ускорить сайт на WordPress, чтобы получить 100/100 в Google PageSpeed Insights
Георгий
1
комментарий
0
читателей
Полный профиль
Георгий - Все что рекомендуется в этой статье есть у w.tools. Ни разу не пожалел что подключился. Своя CDN сеть, кеш статики и динамики, минификация js\css и кешируемого html, оптимизация всех типов картинок и еще куча всего полезного. Сайт летает и я не знаю проблем. Могу рекомендовать от души.
Война с дубликатами. Как нужно и как не нужно канонизировать URL
Ann Yaroshenko
5
комментариев
0
читателей
Полный профиль
Ann Yaroshenko - Дмитрий, добрый день! Если вы проставили на странице с автозапчастями rel=canonical ( а я вижу в коде, что не проставили) или в HTTP хедере, то бот, как правило: выберит ту страницу главной, которую вы указали в rel=canonical ссылке. Eсли же вы этого не сделали, то бот сам выберит оригинал (алгоритмы, по которым бот это делает, скрыты Googl-ом)
«Аудит, чтобы ты заплакала…», или Что делать, когда получил сторонний аудит сайта
TehotdelSamara@gmail.com
4
комментария
0
читателей
Полный профиль
TehotdelSamara@gmail.com - Артур! Задели своим комментарием "за живое") Абсолютно,... целиком.... и полностью согласны с вами! А именно, с тем, что продажи клиента зависят в первую очередь от клиента, перечисленных вами выше и других факторов! А ещё с тем, что чистое SEO в классическом его понимании зачастую уже не даёт результата в виде роста продаж. Если хотим увеличить продажи - нужно бить по всем фронтам, SEO - только один из них, об этом клиент должен знать и быть предупреждён... Касательно нашей рекомендации смотреть на эффективность по тому, увеличилось ли число и качество заказов или нет - в контексте данной статьи говорится о том, что SEO бывает разное. По большому счёту, результат SEO — это именно привлекаемый поисковый трафик. И этот трафик может быть качественным, целевым или нет. Кроме того, трафик должен расти. Мы говорим о том, что если специалист хорошо проработал семантику, изучил бизнес клиента, исключил фразы с околонулевым спросом и проч., то трафик должен быть целевым, растущим, что значит рост обращений в отдел продаж клиента !при условии! , что само предложение и сайт располагают к тому, чтобы обратиться в отдел продаж клиента. Действительно, современное SEO предполагает учёт значительного количества факторов, в том числе и коммерческих. Без этого и трафика зачастую не будет. Нужно доносить всё это до клиента, включать подобные работы в стоимость по SEO или отдельно. А с "хочу все подряд за 25к в месяц" мы сталкиваемся тоже. Тут только пояснять и подсказывать, давать рекомендации заранее, чтобы клиент заранее был предупреждён о том, что ему требуется сделать параллельно с нашими работами по SEO. И в итоге вся эта деятельность должна привести к росту целевого трафика как на сайт, так и в отдел продаж.
BDD 2019: Как перестать убивать время на сбор и обработку тонны данных для SEO-аудита
Feth
1
комментарий
0
читателей
Полный профиль
Feth - Тот момент, когда от статьи в интернете получаешь больше полезных знаний и навыков, чем от своего начальства. По статьям нетпиковцев можно учебник про SEO уже сшивать, ребята молодцы. Спасибо, что делитесь информацией.
Как вывести сайт в ТОП 10 Google в 2019 году
Анна Макарова
356
комментариев
0
читателей
Полный профиль
Анна Макарова - Сергей, в нашей отрасли много заимствований из английского, иногда с ними быстрее, проще .Но будем стараться ))
Как построить качественный ссылочный профиль на основе конкурентов
Ирина
7
комментариев
0
читателей
Полный профиль
Ирина - Давно сотрудничаю с megaindex.com и считаю данный сервис одним из лучших в сео сегменте рунета да и не только рунета. Пользуюсь их инструментами для аналитики своих работ и выявлению своих и чужих ошибок. Да и ссылочный профиль, как и говорится в данной статье сделать гораздо проще и правильней при помощи как раз мегаиндекса. Добавлю еще что инструмент для поиска конкурентов у мегаиндекса очень удобный и простой в применении.
Как я пытался купить CRM-систему, но мне ее поленились продать
Kristina
1
комментарий
0
читателей
Полный профиль
Kristina - Очень рекомендую CRM-систему польской фирмы Firmao. Все функции настраиваются в соответствии с индивидуальным потребностям компании! Советую попробовать бесплатную демо-версию, чтобы попробовать все необходимые функции, без лишних кнопок и траты дополнительных финансов! :) Сайт: firmao.ru/info
Как улучшить репутацию сайта недвижимости с помощью крауд-маркетинга
Евгений
2
комментария
0
читателей
Полный профиль
Евгений - а у вас какое впечатление от статьи?
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
373
Комментариев
356
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
137
Комментариев
121
Комментариев
105
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
77
Комментариев
69
Комментариев
67
Комментариев
60
Комментариев
59
Комментариев
57
Комментариев
55

Отправьте отзыв!
Отправьте отзыв!