Беда пришла, откуда не ждали. Ключевой разработчик собрался уходить. Проекты под угрозой срыва и всё такое…
В панику впадать в таких случаях бесполезно. Надо также осознать, что нового разработчика быстро найти, скорее всего, не удастся. Естественная реакция руководства — удержать разработчика. Хотя бы временно.
Вот на эту тему и нужно поговорить.
Для того, чтобы удержать разработчика ПО, нужно понять, что конкретно он пытается найти и чем его не устраивает текущее состояние дел. В каждом конкретном случае будет свой набор претензий и ожиданий. Поэтому не будем вдаваться в конкретику, а посмотрим на закономерности.
Прежде всего представим себе среднестатистического программиста. Это специалист с достаточно богатым опытом. На рабочем месте может часами стучать по клавишам, ничего не слыша и не видя вокруг. Потом может вдруг очнуться и долгое время слоняться из угла в угол, в интернете, где-то ещё. И опять пар, свист, стук пальцев по клавиатуре и матерные слова в адрес микрософта…
Среднестатистический программист гордится своей работой, любит её и старается делать её не просто качественно, но… как бы это сказать… творчески. Он создаёт продукт из самого загадочного и неуловимого материала на свете — из МЫСЛИ.
Безусловно, первым приоритетом для любого человека при поиске рабочего места является удовлетворение его нужд (включая нужды, связанные с семьёй и близкими). Если работа не удовлетворяет эти нужды полностью, то человек будет работать и одновременно искать другое место — и он уйдёт при первом же попутном ветре!
А вот на втором месте у программиста стоит сама ВОЗМОЖНОСТЬ работы. Ему нужен достаточно производительный компьютер, Ему нужна тихая и спокойная обстановка. Ему нужно тёплое помещение зимой и прохладное — летом. Помните, он работает с мыслью. Одно отвлечение — и мысль исчезла, растворилась. Шум, дискомфорт, другие раздражители делают программиста непродуктивным. А он, как профессионал, не любит быть непродуктивным. Заметьте, глючное ПО, которое некоторые работодатели навязывают программисту в качестве среды разработки, тоже может стать источником его непродуктивности, а иногда и прямой причиной увольнения.
Третий момент: насколько задачи, выполняемые программистом, позволяют ему сохранять актуальными свои навыки? Среды и языки программирования изменяются очень быстро. Программист должен постоянно следить за развитием отрасли и быть «на высоте», чтобы в случае чего не остаться на улице ни с чем. Заметим, что ещё три года назад была большая потребность в программистах, знающих Delphi. Но сегодня этой потребности нет. Точнее, она значительно скромнее. Сегодня требуются знатоки C#. И те, кто не успел перескочить с одного поезда на другой, может оказаться в весьма затруднительном положении. Но знать язык в теории мало, нужна практика. И если текущая работа не даёт такой практики, то это может стать поводом для поиска другого места работы.
Не следует также забывать о личных целях и амбициях разработчика. У него могут быть развиты не только навыки программирования. Он может быть талантливым организатором и руководителем. И если таланту не дают развиваться, рано или поздно произойдёт конфликт. Далее, у программиста могут быть долгосрочные цели, для достижения которых ему нужно принимать определённые шаги. Например, его семья нуждается в улучшении жилищных условий, поскольку дети растут, и скоро его квартирка станет маловата. На новую нужны деньги. Их нужно зарабатывать. Чтобы их заработать, нужно занять определённую позицию (например, из программиста дорасти до ведущего специалиста). Чтобы занять эту позицию, нужно пройти обучения на спецкурсах, получить пару сертификатов, выучить десяток технологий и всё такое… Целая стратегия. И на любом шаге этой стратегии нынешнее рабочее место может оказаться серьёзной помехой, подлежащей устранению.
Ещё важный момент — УВАЖЕНИЕ. Если Вы наймёте молодого зелёного программиста на оклад, который получает давно работающий у Вас опытный разработчик, и тот узнает об этом — пиши пропало. Это самое серьёзное оскорбление, которое Вы можете нанести своему сотруднику. Искать ему замену Вы будете долго.
И не менее важно, чтобы зарплата программистов несильно отличалась от среднего регионального уровня. Допустите отставание от среднего уровня — и программисты разбегутся.
Задача менеджера-кадровика является выявление и распутывание всего этого клубка на возможно более ранних стадиях. Тогда уход разработчика не станет неожиданностью. Но уж если о том пошёл разговор, то нужно сразу расставить всё по полочкам. А дальше вырабатывать стратегию удержания.
Вообще говоря, удерживать сотрудников следует с того момента, как Вы их наняли. Ведь вы их наняли для своих конкретных целей, и если они уйдут, то Вам снова месяцами придётся заполнять вакансии.
Итак, узнаём о нуждах сотрудника и определяем, можем ли мы их удовлетворить (способы могут быть разные: повышение зарплаты, ссуды, даже найм рабочих для проведения ремонта в доме сотрудника за счёт фирмы). Если нет — дальше удерживать бесполезно и даже опасно. Две недели на передачу дел — и не дай Бог вам затягивать время! Помните, что от Вас уходит профессионал, имеющий, как правило, широкие связи в своей среде. Негативный отзыв от него отпугнёт от Вас многих хороших разработчиков.
Если нужды мы можем удовлетворить, согласовываем с ним этот момент и закрепляем договорённость. Это позволит Вам выиграть немного времени на дальнейший анализ ситуации и следующие шаги по её разрешению. Видя, что Вы идёте ему на встречу, разработчик скорее всего приостановит поиск нового места работы — и Вы получите важный шанс на его удержание.
Теперь смотрим на условия работы сотрудника. Сделайте всё, что можете, чтобы условия для работы были самыми лучшими. Поставьте кондиционер и обогреватель, почините батареи отопления, проведите ремонт в помещении, выделите ему отдельный кабинет, в конце концов. Ну, или купите ему ноутбук с модемом, оплатите весь трафик и разрешите работать там, где он найдёт себе удобное место — хоть на пляже.
Снова согласовываем свои предложения с нашим пациентом и фиксируем их. Идём дальше.
Для развития навыков не всегда удаётся найти подходящий проект. Но Вы можете оплатить учёбу своего сотрудника, сдачу им сертификационных экзаменов. Вы можете подбросить ему пару небольших заказных проектов, в которых он сможет поэкспериментировать. В конечном счёте, следует время от времени переводить разработку проектов на более современные средства и технологии. И подготовленные специалисты Вам тут будут весьма кстати.
Согласовываем. Фиксируем. Дальше.
Смотрим на цели и амбиции сотрудника. Тут, как правило, сиюминутных решений быть не может. Но вот выстроить совместную стратегию развития Вашего сотрудника Вы можете. Вы можете даже ЗАПЛАНИРОВАТЬ, на каком этапе он действительно покинет Вашу компанию. Но это лучше, чем потерять ключевого разработчика посреди проекта.
Не забывайте фиксировать все договорённости. И не забывайте их выполнять. Возможно, потребуется какая-то коррекция. Снова встречайтесь и договаривайтесь. Не давайте сотруднику вариться в своих проблемах одному. Иначе в один прекрасный момент он выплеснет их на Вас.
Возможно, я что-то тут не рассмотрел. Но, думаю, общий принцип понятен.
13/09/2010
13/09/2010 2350
Удержание разработчика →