Опять же, обратите внимание, в такой постановке вопроса нет никакой мягкости. Я тут прямо угрожаю разработчику: Заказчик придумает своё решение и нам придётся его реализовывать. Это страшная угроза и она реальна. Но говорить разработчику, что я ему не верю, очень неправильно. Я ему верю, решения задачи нет. Просто нам теперь нужно решить другую задачу: предложить что-то другое заказчику.
На самом деле, нет ни одного вменяемого примера, когда имеет смысл сказать человеку, что вы ему не верите. Человек врёт вам, вы ему об этом скажите, и он резко перестанет так делать? Это сумасшедшее предположение, так общение с людьми не работает. А если вы не можете сказать никому, что вы ему не доверяете, то зачем не доверять?
Подумайте над последним вопросом. Он таит за собой больше возможностей, чем кажется. Мне некоторые менеджеры говорили: Я никак не могу поверить некоторым своим людям. Они явно работают недобросовестно.
Во-первых, я не знаю, зачем работать с людьми, которые работают недобросовестно. Это очень странное оправдание со стороны менеджера. Во-вторых, менеджер, несомненно, может доверять своей команде. Не только может, но и должен. Люди веками верят, что свист как-то связан с количеством доступных денег. Или что перебежавший дорогу чёрный кот может влиять на вероятностные события. Способность людей верить просто колоссальна. Нужно работать над собой до тех пор, пока не выработается способность доверять своей команде. Иначе работать с людьми нельзя.
И ещё иногда менеджеры смешивают доверие и технический уровень: Задача сложная, Вася никогда не работал над такими, он может не справиться. Это не имеет никакого отношения к доверию. Довериеэто про то, что Вася будет стараться изо всех сил (может и невеликих), а не про гарантию, что Вася справится с задачей. Работа с рисками, по-прежнему, на менеджере. Даже, если вы доверяете Васе, вы можете и должны помогать ему, контролировать его, организовывать ревью его работы более опытными разработчиками и т.д. Потому что никто (и вы в том числе) не застрахован от ошибок. И наличие ошибок не должно влиять на доверие.
Разделять вопросы доверия и квалификации критически важно. Смешивание их подобно смешиванию бизнес-логики, UI и слоя данных. Это приносит хаос и делает проект неуправляемым.
Так как вопрос доверия является ключевым и часто сложным для усвоения я хотел бы конспективно перечислить ключевые моменты:
Менеджер должен доверять своей команде, так как нет никакого практического смысла ей не доверять;
Менеджер не должен работать с теми людьми, которых он считает недостойными доверия;
Менеджер не должен путать доверие и гарантию от ошибок. Каждый может ошибиться;
Проявление доверияэто не мягкая позиция менеджера, это концентрация на результате, а не на выяснении отношений и собственных комплексах.
История про ненужные сложности
Как-то устроился я менеджером в одну небольшую разработческую контору. И мне почти сразу после выхода на работу сказали, что одного моего разработчика, Сергея, надо срочно уволить. Мол, от него проблемы уже много лет, и попробовали уже всё, и ничего не помогает, и надо увольнять. И владелец компании мне это говорил, и руководитель HR. Очень уверенно говорили.
Но когда я спросил, почему Сергея ещё не уволили, ответа я не получил. Так как я с Сергеем ещё не работал, то и увольнять мне его было не за чем. О чём я и сообщил. Я знал, что своих людей надо защищать, так что Сергей получил ещё один шанс.
Сергей был отличным парнем и очень опытным разработчиком, но скоро я согласился, что работать с ним невозможно. В компании менеджмент был слаб и Сергей этим нещадно пользовался. Он демонстративно игнорировал прямые указания и нужды других членов команды. Он затягивал разработку и внезапно пропадал без объяснения причин. Он делал некачественную работу и давно потерял доверие к компании, поэтому договориться с ним было невозможно. Единственный выход былувольнение.
Я сообщил об этом владельцу компании и отделу HR, получив в ответ ожидаемое: Мы же говорили! Владелец сказал, чтоб я увольнял Сергея, как можно быстро, так как тот и так много вреда компании принёс.
С увольнением проблем не ожидалось. Сергей прекрасно понимал, что его поведение непрофессионально, и увольняться по статье не хотел. Так что он согласился расстаться миром и написать заявление по собственному желанию. Заявление на увольнение нужно было подписать у владельца компании, к нему я Сергея и отправил.
А вот дальше случилось неожиданное для меня. Владелец сказал Сергею, что он совсем не хочет Сергея увольнять, что это этот менеджер, Константин Борисов, почему-то требует увольнения, а так бы Сергей работал и работал. В результате Сергей уверился, что я испытываю какую-то личную неприязнь к нему, и что владелец компании поддерживает его. Мне же владелец напомнил, что Сергея нужно срочно увольнять.
В результате простая и практически выполненная задача многократно усложнилась. Вместо обычных деловых разговоров Сергей устраивал истерики, так как считал, что у нас с ним какие-то личные разборки. И так тяжёлая психологически ситуация превратилась в адскую нервотрёпку. Вместо нормальных отношений я получил недоброжелателя в лице Сергея. Если бы я думал, что владелец компании знает, что делает, то посчитал бы, что он хочет рассорить меня с моей командой.
Зато я узнал, насколько важно работать в окружении профессиональных менеджеров, которые делают твои задачи легче, а не сложнее.
Исправление ошибок
Исправление ошибокэто больная тема. Часто от разработчиков можно слышать про менеджеров: Ну он же не с компьютерами работает, а с людьми! Тут ошибки исправить нельзя! Поэтому и допускать их нельзя!
Конечно, на предложение менеджеру не допускать ошибок можно только предложить разработчикам писать без багов. Индустрия должна полностью преобразиться, чтобы такое было возможно.
А вот насчёт исправления ошибок ситуация интересней. Что подразумевает разработчик, когда говорит, что он исправил ошибку? Он подразумевает, что в код внесены изменения и баг, который там был, теперь отсутствует. Но разве такое исправление достаточно, чтобы действительно исправить весь нанесённый ущерб? Конечно, нет. Тестировщики потратили время, работая с неисправным билдом. А теперь еще новый заново тестировать. Другие разработчики мучались при реализации своих кусков, так как код работал некорректно. Заказчик, видел баг в трекере и терял доверие ко всей команде.
Если разработчик исправит злой баг, из-за которого долго лежал сервер, то ему не стоит говорить заказчику: Я всё исправил, теперь всё хорошо! Так как с точки зрения заказчика всё совсем не хорошо, и ему нужно что-то делать с толпой недовольных пользователей.
У менеджеров всё так же. Сделанные ошибки исправить совершенно нельзя, но можно как-то попробовать компенсировать нанесённый ущерб, и улучшить ситуацию в целом.
Так же, как разработчики считают, что они исправили баг и стало всё хорошо, некоторые менеджеры тоже считают, что они исправили проблему, и стало всё хорошо. Не стоит думать таким образом и, тем более, не стоит так говорить пострадавшим от этих менеджерских ошибок.
Рассмотрим ситуацию: хороший разработчик просит вас о переводе на другой проект. Он уже давно работает на текущем проекте и тот ему стал в тягость. Вы не видите никаких проблем, компания большая, и такого разработчика вы даже на один из других своих проектов можете пристроить. Вы так ему и говорите и обещаете сделать перевод в ближайшее время. Но на проекте постоянно вылезает то одна проблема, то другая и вам кажется, что время для смены проекта неподходящее. Разработчик пару раз напоминал вам о своём желании, и вы подтверждали, что согласны, но когда будет поспокойней на проекте.
В результате вы получаете от этого разработчика заявление на увольнение и понимаете, что затянули с переводом. Вы зовёте разработчика к себе и говорите: Всё-всё Вася, я понял, что тебе действительно хочется на другой проект. Вот я уже оформил твой перевод. Начинай вникать сегодня. А заявление забери, я всё исправил.
Очевидно, что после такой речи этот гипотетический Вася не только не заберёт заявление, но и уверится, что увольняться нужно обязательно. Ведь оказывается, что его желание можно исполнить мгновенно, а ему пришлось долго переживать, работать на нелюбимом проекте и решаться на крайние мерыувольнение. При всей очевидной ошибочности такого подхода к исправлению своих ошибок менеджеры раз за разом к нему прибегают, теряя сперва уважение своей команды, а потом и саму команду.
Гораздо более правильным было бы признать свою ошибку и не говорить ни о каком исправлении, а говорить о будущем. Примерно так: Вася, мне очень жаль, что ты решил нас покинуть. Очевидно, что это моя вина. Я недостаточно приложил усилий к твоему переводу. Мне жаль тебя терять и я хотел бы сделать всё, чтобы ты остался. Могу предложить тебе переход на любой другой проект вот из этого списка прямо с сегодняшнего дня. Текущему проекту будет тяжело, если ты уйдёшь, но ты с него уйдёшь в любом случае, а мне хотелось бы, чтобы ты остался в компании. При таком подходе, когда менеджер признаёт свои ошибки и даёт человеку какой-то выбор, шанс на то, что человек останется в команде гораздо выше.
Хотя менеджер и не может не делать ошибок, но он может их замечать, признавать и реагировать на них оперативно. Для команды, заказчика и всех окружающих это будет очень близко к полному отсутствию ошибок.
Люди, приносящие плохие известия
Менеджеры по роду своей деятельности решают проблемы. Это не вызывает вопросов и любой менеджер этого ожидает. Менее очевидно и ожидаемо следствие: люди к вам идут только с проблемами. Если у разработчика стряслась какая-то беда, он обязательно даст знать своему менеджеру. А вот если у разработчика всё хорошо или даже лучше, чем ожидалось, то менеджер об этом узнает, только если спросит.
Менеджер проводит львиную долю своего времени с проблемными людьми. Если в вашей команде 10 человек, из которых 9 работают идеально, а 1 находится на грани увольнения, то вы будете 90% своего времени проводить с этим единственным проблемным сотрудником. Беспроблемный сотрудник раз в день скажет, что всё идёт по плану, а детальную информацию можно всегда получить в трекере или по почте. А с проблемным всегда уходит куча времени на то, чтобы узнать, как у него дела, где ему нужна помощь, какой статус у каждой задачи. Хороший сотрудник даже проблему свою подготовит для менеджера, так что вы будете хорошо понимать, что именно произошло, и какой выбор есть. Так что на решение вопроса уйдёт несколько минут. У сотрудника нерадивого всегда всё мутно, и вам приходится тратить огромное количество времени и сил, просто чтобы разобраться в происходящем.
Особенно остро я ощущал в первое время работы менеджером. Если я видел, что ко мне кто-то идёт, я сразу понимал, что что-то случилось. Если мне в Skype приходило новое сообщение, это означало, что где-то беда. Окидывая взглядом каждый прошедший день я видел только негатив. Нужно действительно любить людей, и каждую проблему отделять от человека, чтобы не стать мизантропом.
Многие менеджеры не выдерживают. Им кажется, что вокруг них только бракоделы. Им кажется, что все их сотрудники ставят целью всё испортить. Лицо таких менеджеров искажается, когда к ним приходит человек, так как они знают, что пришла беда и дополнительная работа. В результате с хорошими новостями к ним вообще никогда никто не приходит, да и с плохими тянут до тех пор, когда уже всё пропало. Тогда такой менеджер уверяется в том, что его окружают клинические идиоты, и он с людьми работает только как с идиотами.
Путь настоящего менеджера другой. Если к вам приходит человек с проблемой, то нужно делать осознанное усилие, чтобы не считать самого человека источником этой проблемы. Каждый раз нужно напоминать себе, что это хороший человек, который пришёл, чтобы с вами вместе разобраться с общей проблемой, а не плохой человек, который подкидывает вам работёнки. Когда вы раз за разом проделываете такую работу над собой, то скоро ваше мировоззрение меняется, и осознанных усилий делать не приходится.
Некоторые менеджеры ломаются на другом. Вот есть просто идеальные работники, опора и отрада любого менеджера. Они быстро и качественно выполняют любую данную им задачу да ещё и тащат кучу задач не своих. Вы таких работников практически не контролируете, потому что в особом контроле они не нуждаются. Такому работнику вы доверяете. И вот в один из дней такой идеальный работник косячит. Причём косячит очень сильно и глупо, принося столько проблем, сколько обычный косячник никогда не приносил. И вот тогда менеджер страшно кричит: И ты, Брут?! и навсегда теряет веру в людей.
Хотя на самом деле в такой ситуации менеджеру некого винить, кроме себя самого. У каждого человека есть право на ошибку. Любая более-менее сложная деятельность полна ошибок. Масштаб ошибок напрямую зависит от уровня сотрудника. Джуниор-разработчик вряд ли может нанести серьёзный ущерб (если в организации есть минимально разумные процессы), у архитектора масштаб косяков куда выше, а генеральные директора и владельцы компаний могут делать миллионные косяки.
Так что сам масштаб ошибки не свидетельствует против человека сам по себе. И то, что эта ошибка кажется глупой тоже не должно вводить в заблуждение. Такими кажутся большинство ошибок после того, как они совершены. Это совсем не значит, что эту ошибку было так легко предотвратить. Опять же такой доверенный сотрудник уже привык решать проблемы сам, не отвлекая вас. Поэтому он может довести проблему до более запущенного состояния.
Так что не стоит сразу кричать об обманутом доверии. Лучше всё описанное выше сказать этому сотруднику. Он сам себя винит и абсолютно зря. Объясните ему, что вы его специально оставили с минимумом своего контроля и своей поддержки, чтобы высвободить своё время. И объясните, что такие ошибки и проблемыэто плата за это высвободившееся время.
А сами лучше подумайте о всех тех проблемах, которые этот сотрудник решил. А вы ведь даже не знаете о большинстве этих возникших и успешно обработанных вопросах.
Менеджеру очень легко проникнуться чрезмерным чувством собственной важности и объявить своих сотрудников виноватыми во всех грехах. Но стоит помнить, что в конечном итоге за все провалы отвечает менеджер, и эту ответственность нельзя переложить на других. А если своих подчинённых считать бесполезными, то очень скоро в вашем подчинении только бесполезные и останутся.
Кейс Прикрыть товарища
Крупная аутсорсинговая компания открыла небольшой офис в новом для себя городе. Офис открыт всего 3 месяца, да и работают там только два разработчика: Вася и Петя. Постепенно их проект должен разрастись, и наймут ещё людей, но это дело будущего. А пока разработчики работают практически сами по себе, так как их менеджер находится в другом городе.
Разработчики опытные, проект простой, поэтому проблем не ожидается.
Но одна проблема есть: Вася, похоже, оказался тихим алкоголиком. Петя заметил с самого первого дня, что от Васи по утрам часто разит перегаром, а по понедельникам тот приходит с больной головой. Иногда Вася не появляется на митингах с заказчиками, либо приходит на работу очень поздно и явно с похмелья, либо выпивает в обед и полдня ничего толком делать не может.
Вася и Петя эту проблему не обсуждают, делая вид, что ничего не происходит. Петя иногда прикрывает коллегу перед менеджером или заказчиком: отвечает на вопросы по его тикетам или говорит, что Вася куда-то вышел и скоро вернётся, или исправляет какие-то ошибки, которые Вася наделал в подпитии.
Петю нервирует, что ситуация становится всё хуже и хуже, а последнюю неделю стало совсем невмоготу. Вася может пропасть в любой момент на любое время, пишет код так, что Пете приходится тратить много времен на исправление его ошибок, срывать сроки и по своим задачам. Менеджер с заказчиком уже слегка недоумевают, так как реализация даже простых тикетов затягивается, а Петя не может объяснить, почему, так как ему не хочется подставлять Васю.
Анализ
Распространённая ситуация, когда некоторый Петя хочет быть хорошим и творит добро в отношении некоторого Васи. Очень полезно в таких ситуациях поглядеть на происходящее с точки зрения морали. Давайте применим золотое правило морали: поступайте с другими так, как хотели бы, чтобы поступали с вами.
Хотели бы вы сами, чтобы в подобной ситуации кто-то рисковал своей карьерой прикрывая ваши косяки? Я бы не хотел. За свои ошибки я предпочитаю нести ответственность сам. Вася не просил Петю помогать, он не благодарил его за его помощь. Нет оснований полагать, что ему эта помощь нужна. Он, возможно, вообще таким способом хочет уволиться, похожие ситуации бывали на практике. Я сам крайне не люблю, когда за меня решают, что я хочу, а Петя именно это делает. В общем, петино поведение можно смело назвать аморальным, так как золотому правилу морали оно не соответствует. Так часто бывает, когда люди хотят быть хорошими и начинают что-то делать, чтобы соответствовать этому абстрактному ярлыку.