Каждый из нас хотя бы раз в жизни видел программиста (сами себя они предпочитают называть разработчиками). Как правило, программисты довольно замкнутые, очень пугливые и любят подолгу смотреть в монитор. Они – либо следующая ступень эволюции человечества, либо предыдущая. Они плохо умеют разговаривать, но очень хорошо понимают человеческую речь и компьютерные сигналы. В этой статье я хочу рассказать, как заставить ваших разработчиков работать лучше, при этом не доставляя им никакого дискомфорта и не пугая их. А для этого вам необходимо будет запомнить несколько правил.
Правило первое – будьте рациональны
Наверняка вы замечали, как ходят программисты. Этот усталый вид, невнятное бормотание себе под нос и опущенный взгляд. Когда разработчик куда-то идет, он не видит ничего, кроме носков своих ботинок и зеленых букв из матрицы. Отсюда следует сделать вывод, что необходимо экономить на офисе и рабочем месте, потому что программист никогда не обратит на это внимания. Лучше дайте прибавку к зарплате!
Эксперимент!
Не верите? Попробуйте! Замените у вашего программиста стол, поставьте ему табуретку вместо стула, а стены покрасьте в другой цвет! Когда он придет в офис, по-прежнему что-то бормоча себе под нос, он просто уставится в монитор и начнет тихонько ругаться. Если прислушаться, то можно услышать что-то вроде «ну кто так пишет» и «почему оно не компилируется», но ни слова про рабочее место!
Правило второе – не отнимайте еду
А теперь попытайтесь вспомнить, смотрели ли вы когда-нибудь разработчику в глаза? Я – да. И, скажу я вам, взгляд у них грустный-грустный. Я заметил, что чуточка радости во взгляде программиста появляется лишь когда он видит еду. Однажды я стал свидетелем курьезной ситуации – когда программист сидел и кушал на кухне, в помещение вошла красивая девушка из отдела HR. Все остальные мужчины, которые находились на кухне, дружелюбно заулыбались и предложили ей часть своей еды, а программист отвернулся и зарычал! Так что можно добиться доверия разработчика, осторожно подкармливая его. По моим личным наблюдениям, больше всего они любят кофе и печеньки.
Правило третье – дарите радость
Но что заставляет взгляд программиста действительно проясниться и загореться - так это новые железки! Но не всякие. Если вы подарите разработчику светящуюся мышь или клавиатуру, он это проигнорирует. Это геймеры любят всякие лампочки, а программисты света побаиваются. По этой причине они так любят темные темы в своих IDE. А вот если вы подарите новый процессор или оперативки побольше, то радости не будет предела! Благодарный программист будет защищать вас от других программистов, а также сможет починить вам утюг.
И я не шучу!
Однажды я стал свидетелем того, как разработчику подарили второй монитор и 32 ГБ оперативной памяти! И знаете, что он сделал? Он запустил сразу все свои программы, а на второй монитор вывел график загруженности памяти и весь день туда смотрел! Позже в этот же день я видел, как он предлагает свою еду той девочке из HR.
Правило четвертое – будьте авторитетом
Я заметил, что программисты уважают тех, кто сильнее. Они чрезвычайно интеллектуальны, но грубую силу и законы физики никто не отменял. Как только ваш авторитет станет достаточно крепок, вы сможете разработчика ругать и требовать работать лучше.
Но не ругайте его, не подняв свой авторитет, иначе он может укусить!
Как только программист вас зауважал, можете закручивать гайки. Если на простейшую задачу он тратит много времени и бормочет что-то про улучшение архитектуры и структуры кода, уместно будет сказать: «Паша, просто будь профессионалом и доделай задачу скорее». Причем, если разработчика зовут Ваня, все равно назовите его Пашей – это даст ему понять, что вы не так уж в нем и заинтересованы, и у вас есть другой.
Правило пятое – контролируйте
Если пустить все на самотек, то через неделю может оказаться, что программист не только не сделал ничего нового, но и сломал то, что уже работало в попытках что-то там улучшить. Разработчики – они как дети. С тем лишь отличием, что в детстве они разбирают машинки и калькуляторы, пытаясь разобраться с их устройством, а на работе они разбирают дорогие корпоративные системы! Не позволяйте им так себя вести.
Лучше всего ставить задачу устно. Это уместно по той простой причине, что заставит программиста держать ваше указание в голове и постоянно о нем думать. Если задачу куда-то записать, то это быстро забудется, а листок потеряется. Как только задача поставлена, стоит спросить, в каком она состоянии и когда будет готова. Даже если вы ее поставили только что. Помните - программисты чрезвычайно сообразительны и могут решить вашу задачу моментально в уме.
Но чтобы они перенесли ее в машинный код, вам необходимо как можно чаще об этом напоминать. Будет отлично, если у вы добудете мобильный номер разработчика, чтобы можно было позвонить ему ночью.
Правило шестое – будьте справедливы
Хорошие программисты должны получать больше. Программисты похуже и начинающие - чуть меньше. А чтобы отделить одних от других, вам необходимы тесты на знание инструментов и ассессменты. Буду честен – разработчики очень не любят, когда их оценивают и пытаются подогнать под какие-то критерии. Но вы можете воспользоваться их слабостью к решению логических задачек, чтобы понять, кто есть кто.
Делается это следующим образом.
Разошлите своим программистам на почту письма с заголовком «Задачи на логическое мышление». Включите туда те вопросы, которые им нравятся, например, «каким будет результат выполнения этой функции». Они очень любят подобные упражнения. А между этими упражнениями вы, как бы невзначай, попросите их оценить свою работу по пятибалльной шкале. Затем добавьте еще несколько задач на мышление и снова как бы случайно спросите, как они оценивают работу своих коллег. Этот подход очень действенен, так как мозг программиста жадно выискивает новые задачи и не обращает внимания на ваши вопросы, и ответы на них исходят напрямую из подсознания. Вы удивитесь, как много разработчиков поставят себе четверки и даже тройки. Многие из них честно ответят, что не уделяют время саморазвитию и плохо знают разные инструменты.
А затем, когда наступит квартальное ревью, напомните им об этих оценках. Это будет поводом урезать зарплату одним и увеличить ее другим. Это справедливо.
А еще себя очень хорошо зарекомендовала одна практика.
Если программист во время ревью просит повышения, а вы бы не хотели этого делать, то просто соберите достаточно подробный список всех возможных инструментов и технологий на всех языках программирования. Причем, даже тех, которые программисту не нужны в ежедневной работе на проекте. Особенно тех, которые не нужны. И попросите разработчика оценить свои знания в каждой из них. Обычно, где-то к середине списка они все сами понимают, молча встают и выходят из вашего кабинета.
Причем, если вы помните четвертое правило и обладаете авторитетом, программисты не станут на вас рычать.
Правило седьмое – не переплачивайте
Разработчики и без вашей зарплаты достаточно много получают. Вы удивитесь, как их много останется, если вы просто перестанете им платить. Непонятно, где они находят деньги, но факт есть факт. А теперь представьте ситуацию: ваш лучший программист приходит к вам с заявлением об увольнении. Мол, в другом месте ему предложили в два раза больше. Вы спрашиваете: а если вы тоже станете платить в два раза больше, останется ли он. Разработчик, немного поразмыслив, отвечает утвердительно.
Так вот, если вы сразу платите ему достаточно много, сможете ли вы просто взять и удвоить зарплату? Вряд ли. Вы потеряете ценный кадр. А что, если вы изначально ему будете платить в два раза меньше, чем могли бы? Тогда такой трюк сработает, и программист от вас не уйдет!
Правило восьмое и последнее – уважайте своих программистов!
Помните, что хорошего разработчика тяжело найти, легко потерять и невозможно забыть! Соблюдайте правила выше, и ваши программисты будут вас уважать. А вы, в свою очередь, будете о них заботиться – это и есть взаимовыгодные отношения, про которые столько говорят на разных конференциях!
Давайте жить дружно!