Сначала думать, а потом говорить, или о важности коммуникативных навыков для программистов

Опубликовано Nov 7, 2014 в Собеседование: Советы | 6 коммент.

, , ,

Сначала думать, а потом говорить, или о важности коммуникативных навыков для программистов

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

Дело в том, что у него слабо развит навык ведения технической беседы. Этот человек не умеет чётко и без лишних подробностей формулировать свои мысли. В результате нашим программистам пришлось потратить значительное время, чтобы просто выяснить, чем именно он занимался в ходе работы над проектом, в чём заключалась его роль. Приходилось задавать множество уточняющих вопросов, постоянно возвращать поток мыслей и монолог кандидата к основному предмета разговора.

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

Однажды представитель нашего заказчика из Северной Европы, желая похвалить одного из новых сотрудников, сказал о нём: «Он сначала обдумывает свою мысль и только потом чётко отвечает на заданный вопрос. Это отлично!»

Пожалуй, в этом утверждении сформулировано основное правило ведения технической дискуссии. Умение чётко формулировать свои мысли пригодится как при прохождении технических собеседований, так и в ходе последующей работы.

Мы рекомендуем начинающим программистам обращать внимание на следующие моменты:

  • Отвечать на поставленный вопрос, а не на какой-то смежный, близкий и т.д. Иногда бывает полезно сначала уточнить, правильно ли вы поняли вопрос, переспросить.
  • Честно говорить, что вы чего-то не знаете, с чем-то не работали, а также спокойно признавать свои ошибки. Умение признавать свою неправоту и границы своей компетентности – очень важны для продуктивной командной работы.
  • Сначала обдумать и сформулировать основную идею своего ответа в уме, а уже после этого её озвучивать. Не нужно бояться взять паузу. Иногда можно и нужно попросить несколько минут на размышление прямо в ходе собеседования.
  • Стараться отвечать по принципу «от общего к частному»: сначала обозначить основные моменты, суть того, о чём вас спрашивают, а уже потом переходить к второстепенным деталям – если такая необходимость появится.

С удовольствием готовы обсудить ваши мысли и вопросы в комментариях.  Какие ещё аспекты коммуникативных навыков вам кажутся важными для работы программиста?


6 Коммент. : “Сначала думать, а потом говорить, или о важности коммуникативных навыков для программистов”

  1. Игорь says:

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

    То есть навык переписки для программиста более важен, чем навык вербального делового общения, который должен быть лучше развит скорее у менеджеров для работы с клиентом.
    Также не стоит забывать и о качестве вопросов, на которые ожидался ответ, ведь народная мудрость гласит “Какой вопрос – такой ответ”, и о повышенной нервозности во время собеседования, которая часто приводит к неконтролируемому словесному потоку.

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

    Я работаю удаленно и постепенно свел вербальное рабочее общение практически к нулю. И скажу, что во многом от этого только выиграл, потому что в работе оно по-моему менее эффективно, а вот на досуге, как говорится, уже другой разговор.

    • Андрей says:

      Как же тогда работать сплочённо в компании тестировщикам и программистам,всё зациклить на e-mail? А живое общение, дружба отделов? Или полная роботизация? А если работаем по методологии Scrum? В котором в каждом спринте важны ежеутренние митинги и решение стратегии всем отделом? Я понимаю по почте скидывать отчёты менеджерам, но общение живое в команде если удалить совсем – хана любому проекту.

      • Игорь says:

        Для разных задач – разные инструменты. Если надо обсудить утром общий план действий, а также зарядить коллектив энергией на целый трудодень, то устная речь предлагает для этого широкий набор интонаций и даже невербальные знаков, которые могут быть применены для усиления эффекта. И такое общение людям бесспорно необходимо. Да и перекинуться парой слов между коллегами по нерабочим вопросам или вопросам смежным с трудовой деятельностью тоже полезно и укрепляет связи в коллективе.
        Но рассказывать сложную часть технического задания устно вряд ли будет хорошей идеей, потому что информация в таком виде может быть трудна как для изложения, так я для восприятия.
        Поэтому я и хотел сказать, что навык письменного общения важнее для программиста.

    • Игорь, спасибо, что поделились своим мнением.
      Абсолютно согласна, навык письменного общения для программистов тоже крайне важен. Спасибо за дополнение. На всякий случай хочу подчеркнуть, что речь идёт не о каком-то абстрактном навыке делового общения (которому часто обучаются менеджеры по работе с клиентами), а об умении чётко и ясно излагать свои мысли.
      В нашем случае я бы объединила устное и письменное общение под общим названием вербального (= общение с помощью речи, слов). И как раз умение формулировать свои мысли – как в устной, так и в письменной форме – одно из профессионально важных умений программиста. (Под невербальным общением традиционно понимают язык телодвижений и жестов (поза, движения рук, мимика и т.д.) – об этом виде общения мы здесь не говорим).
      Что важнее для программиста: умение формулировать свои мысли в устной форме или в письменной? Мне кажется, однозначно сказать сложно, потому что всё зависит от конкретного проекта и того, как на нём выстроены процессы разработки. Думаю, что совсем без устного общения обойтись невозможно, если разработка ведётся не одним программистом, а командой. Хотя навык переписки не менее важен, безусловно.
      Каков “удельный вес” коммуникативного навыка, насколько важно уметь чётко формулировать свои мысли? На этот вопрос руководители разных проектов наверняка ответят по-разному. Но, как я писала выше, отсутствие такого умения может иногда полностью перечеркнуть знание технологий и библиотек, необходимых для вакансии.

      • Игорь says:

        Благодарю за поправку. Действительно речь идет о вербальном общении устном и письменном.

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

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

        • Конечно, изучить отдельные технологии можно уже в ходе работы над проектом. А вот научиться формулировать свои мысли… Боюсь, что тут дело может занять слишком много времени, а работать-то с ним прийдётся уже сразу. И главное – нет гарантий, что научится, если до сих пор не научился :) Вообще ж, это очень тесно связано с тем, как у человека работает мышление, насколько он в принципе умеет выделять главное и второстепенное, например.
          Разумеется, при проведении собеседований мы всегда оценивает кандидата всесторонне: его технический уровень, уровень владения английским языком, способность решать рабочие задачи, понятно формулировать свои мысли и т.д.

Оставить комментарий

Ваш адрес email не будет опубликован.


*