Как избежать синдрома «умного парня» в командных проектах

61

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

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

Droogans
источник
50
Следите за сообщением вашего босса, задающегося вопросом, как избежать синдрома «умной задницы» - того парня, который думает, что знает все, даже если он новичок и никогда не работал над реальными проектами.
Пол Томблин
3
@Droogans, пожалуйста, не думайте, что я прочитал другие ваши вопросы. Если вы расширите основную часть своего вопроса, то мы можем взаимно отозвать комментарии (которые предназначены для разъяснений, верно).
Работа
9
@Droogans: Построение пользовательского интерфейса первым (создание прототипа) и отсутствие предварительного проектирования можно считать гибким, если все сделано правильно. Не думайте, что вы знаете все это, и вы не будете известны как парень, который полагает, что знает все это. Тем не менее, команда разработчиков без базы данных ошибок, вероятно, не делает это правильно.
pdr
3
Как дополнительное примечание, отсутствие формальных спецификаций всего проекта является довольно распространенным явлением. Научитесь приспосабливаться к вашему владельцу проекта. Я (и многие другие, которых я знаю) довольно часто работаю только с пользовательскими историями, без спецификации как таковой.
Джер
14
Как ты можешь быть настолько уверен, что ты прав, а они не правы? Пожалуйста, сделайте резервную копию с фактами.

Ответы:

39

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

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

Интересно, был ли у вас небольшой приступ боли, когда вы написали "так как я не выбираю свои битвы" ... мне кажется, что-то вроде красного флага. Получение нескольких ранних, легких побед может сделать вас не «тем придурком, который думает, что он умнее всех», а «тем парнем, у которого была эта прекрасная идея в прошлом месяце».

Кайл Ходжсон
источник
1
Добиться ранних побед сложно, когда ваше решение зависит от того, «что может произойти в будущем». Теперь, когда я идентифицирую эти вещи, я веду записи о том, чего мне следует ожидать, и просто жду, пока это сломается. Дайте себе старт.
Дрооганс
Если это так плохо, как вы говорите, это необычно плохо, и вы должны искать грациозный выход. В любом случае, терпение - твой друг. Надеюсь, ваша карьера будет долгой ... Не стоит сильно волноваться о краткосрочной перспективе. Вещи обычно работают.
Кайл Ходжсон
Мне нравится думать, что я учусь так же много, если не больше, в межличностной стороне разработки программного обеспечения. Несмотря на это, я буду удовлетворен, зная, что я сделал разницу в другом месте, где это нужно, плюс ... это хорошая практика.
Дрооганс
17

Вам необходимо предоставить явное, неопровержимое, компилируемое доказательство того, что вы правы, или свести проблему к чему-то тривиально правдивому, например, что-то, что должно быть безопасным, как RAII, по определению безопаснее, чем то, что может быть безопасным, например, malloc / free.

DeadMG
источник
37
И подумайте о том, что вы ошибаетесь, а остальные 3 парня правы, а вы просто этого не видите.
Ям Маркович
@Yam В этом случае мы бы использовали модель данных на основе файлов. Примеры здесь не являются вычурными деталями; это были фундаментальные, необратимые недостатки , о которых предупреждают 90% всех программно-ориентированных книг и курсов. Звучит довольно мрачно, правда? Постарайтесь не подвергаться угрозам, когда фигуры будут представлены вам, боссу, таким образом.
Дрооганс
10
@Droogans Я не сказал, что вы не правы, я сказал, подумайте о том, что вы ошибаетесь каждый раз, когда вы вступаете в спор, так же, как вы ожидаете, что другие люди сделают.
Ям Маркович
@Yam: Если вы предоставите явное, неопровержимое доказательство, то вы только что доказали, что другие парни не правы. Они всегда могут попытаться отделить его, если хотят.
DeadMG
4
@DeadMG Программирование «лучших практик» на самом деле никогда не становится объективно лучше, и, следовательно, вы не можете доказать, что они «лучше», только что они соответствуют вашим стандартам того, что вы считаете хорошим. Всегда будут плюсы и минусы, и иногда другие парни будут считать то, что ты считаешь хорошим, плохим.
Ям Маркович
17

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

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

Вы также должны учитывать свою собственную позицию во всем этом. Маловероятно, что вина за ядовитую культуру полностью лежит на ваших коллегах, даже если она там и началась. Более вероятно, что их реакция на вас и ваши реакции на них все время возвращаются к себе сами по себе, и если их не контролировать, становится очень трудной для решения проблемы. Хороший менеджер обнаруживает подобные проблемы на ранних этапах и устраняет их, но реальность такова, что большинство ИТ-менеджеров в первую очередь приходят из ИТ-среды и получают повышение без дополнительного обучения, необходимого для фактического эффективного управления людьми, чтобы к тому моменту, когда они его осознают это проблема, она очень выросла и стала частью командной культуры.

Так что вы можете с этим поделать?

Один из вариантов - просто уйти, но сделать это так, чтобы вы могли уйти с неповрежденной репутацией и с хорошим рефералом от вашего работодателя. Вы не хотите иметь момент «Джерри МакГир» и сжечь все свои мосты, и на собеседованиях вы должны быть осторожны с тем, как вы формулируете причины своего ухода, и чтобы не показаться высокомерным или горьким в отношении того, как Вы чувствовали, что с вами обращались.

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

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

S.Robins
источник
Я упоминал о событиях, происходящих с лета, и позволяю ошибкам уходить, если они не находятся в моей непосредственной области при проектировании системы (даже если это означает работать несколько поздних ночей). Я также очень серьезно думаю о том, чтобы дать своему решению сексуальное, ориентированное на модное слово имя, а не описывать его. К сожалению, это работает лучше, чем пытаться определить источник проблемы или решение, которое я предлагаю.
Дрооганс
LOLz Re: модные слова. Даже я, как известно, объяснял менеджерам необходимость «синергизировать» :-P В конце концов, это всего лишь инструменты, которые можно использовать для достижения цели улучшения. Менеджерам, однако, необходимо оправдать расходование ресурсов, а для этого требуется обоснованное экономическое обоснование любых улучшений, которые вы хотите внести. Точные данные с точки зрения прибыли и расходов говорят гораздо громче, чем просто сказать «потому что Фаулер / Гоф / и т.д. говорит, что это так». Я предполагаю, что суть того, что я написал, сводится к взаимодействию с людьми, а не к борьбе с идеалами, и вы получаете больше с морковкой, чем с палкой.
С.Робинс
12

Постоянная попытка идти вразрез с текущими решениями команды наносит ущерб жизнеспособности ваших идей, независимо от их ценности.

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

Хитрость при принятии ваших идей заключается в том, чтобы использовать длинный игровой подход для перемещения окна Overton

  1. Вначале вы должны называть себя «разумным» в сознании других. Это означает принятие текущей командной практики и, как правило, «разумный человек». У вас могут возникнуть сомнения относительно этих методов, но вы не можете отказаться от них, если команда в настоящее время считает, что они разумны.
  2. Как только вы проявите разум в умах других, вы можете начать предлагать свои идеи команде. Они получат доверие, потому что вы завоевали доверие (это не должно работать, но это так). Постепенно вы расширите окно приемлемых идей, включив в них свои. На этом этапе вы все еще не пытаетесь навязать изменение на практике, просто сделайте такое изменение похожим на «разумную» идею. Повторение идей является ключевым здесь, потому что каждое повторение делает идею немного более разумной.
  3. На последнем этапе вы злоупотребляете неспособностью людей уделять внимание сбалансированно. Вы должны поместить негативные последствия текущей практики в центр их плоскости внимания, в то же время рискуя своим подходом далеко за ее пределами (сделайте это, изменив тему разговора так, как вам нужно). В конце концов, команда сама решит, что ваша идея намного лучше, чем текущий подход. Он будет принят демократическим путем, без необходимости навязывать кому-либо свою волю и без необходимости рационально демонстрировать превосходство идеи.

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

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

Джори Себрехтс
источник
3

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

Выберите, какие битвы вы хотите выиграть, а какие вы просто хотите выиграть.

hotpaw2
источник
3
это не «трюк», это называется «управлять»
Джош Петитт
3

Я рекомендую прочитать http://www.jamesshore.com/Change-Diary/. В нем много невероятных замечаний по поводу управления изменениями в компании. Также эта книга может быть полезна: http://www.amazon.com/Agile-Coaching-Rachel-Davies/dp/1934356433 . Не потому, что вы должны идти Agile, а потому, что в нем много замечаний о том, как вносить изменения в команду и иметь дело с отзывами и ответами. Из моего собственного опыта: вы не сможете ничего изменить, если с вами нет людей. Если они уже не хотят таких изменений. Если это так, вы можете просто оставить его. Вы, вероятно, ожидаете чего-то другого от своей работы, или вы перерастаете своих коллег.

Наилучшим подходом ИМХО является изменение. Делайте вещи правильно, как видите. Другие будут следовать за вами, если они нашли ценность в вашем подходе. И они будут благодарны вам за внесение этих изменений. Однако сначала люди должны увидеть хорошую сторону изменений. Тогда они этого хотят. Это очень трудно сделать другим способом (внести изменения, дождаться хороших результатов).

Желаю тебе удачи.

Роберт Панковецкий
источник
2

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

Wolfger
источник
Я проголосовал за это (потому что я думаю, что это реальная ситуация), но будучи слишком пассивным в команде, полной запугивающих, политически укоренившихся и неуверенных в себе людей, чьи навыки по крайней мере на десять уровней ниже ваших собственных неприятных последствий тоже. Вы привыкаете к тому, чтобы каждый раз преодолевать ваш путь, и они уволят вас, как только появится что-то, что вы считаете достаточно важным для борьбы.
user16764
0

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

kosmogo
источник