recoder: (Default)
recoder ([personal profile] recoder) wrote2005-09-22 02:34 pm
Entry tags:

The craftsman-to-manager paradox

По наводке [livejournal.com profile] urbansheep прочитал заметку "The craftsman-to-manager paradox", где товарищ Dave Gray описывает прямо-таки мою ситуацию, когда из нормального программиста пытаются делать менеджера.

Как правильно пишет 'аффтар', ситуация довольно типичная: успешного программиста повышают до менеджера в соответствии с Принципом Питера. Однако успешным программер был потому что руководствовался принципами 'Делать всё надо сразу правильно' и 'Хочешь чтобы что-то было сделано - сделай это сам'. А новая позиция предполагает диаметрально противоположный подход.

И вот что предлагается предпринимать:

  1. Make your expectations crystal clear.
    Leave no room for interpretation. WHO will do WHAT by WHEN?
  2. Listen actively.
    What is the person saying? What is their tone of voice saying? What is their body language saying? Pay attention.
  3. Be observant and proactive. Watch what’s going on around you. MBWA (Manage by walking around). Learn to anticipate problems and address them before they are problems.
  4. Master the art of asking.
    Good questions help you diagnose root causes and understand underlying dynamics, so you can solve the problem instead of trying to fix a symptom.
  5. Teach.
    Every mistake is a learning opportunity. In fact, nearly every interaction you have with your team is a learning opportunity
  6. Delegate.
    Anything you do yourself is a wasted opportunity for someone on your team to learn something. Stay close to help if necessary, but only if they ask for it.
  7. Coach.
    Spend quality time with your high performers, making them better. It’s easy to forget this one and waste lots of time on the underperformers.
  8. Don’t avoid difficult conversations.
    As a manager it’s your job to initiate them when necessary. And never have difficult conversations by email; always do them face to face if possible, by phone if necessary.
  9. Learn how to be tough.
    If you’re going to set expectations, there need to be consequences if they are not met. Face it: If you’re going to be a manager you will have to fire someone sooner or later. It’s a true communication challenge and the toughest part of being a manager. When the time comes, just do it.
  10. Develop your farm teams.
    You’ll need a stable of people on deck, ready to come on board should you need them. Ongoing and proactive communication is key. Keep them warm.

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

Буду продолжать медитировать над всеми этими мыслями...

management

[identity profile] little-elijah.livejournal.com 2005-09-22 10:37 am (UTC)(link)
Эээээ...
Ну ты меня понял. ;)

[identity profile] hazan.livejournal.com 2005-09-22 11:19 am (UTC)(link)
Когда меня спрашивают, почему я так часто меняю работу - я отвечаю, что не хочу на себя взваливать чужой геморрой, становясь начальником. Люди не понимают, а я объяснить не мог. Зато теперь буду ссылаться на первоисточники ;-)

[identity profile] sigizmund.livejournal.com 2005-09-22 01:03 pm (UTC)(link)
Я бы еще добавил про непосредственное начальство... а так же про начальство которое курирует этот проект :) и...ээээ... этого менеджера

[identity profile] alexaces.livejournal.com 2005-09-22 07:43 pm (UTC)(link)
Я вижу что тут некоторая путаница в понятии менеджер наблюдается. Скорее всего потому что в неназываемой компании их - менеджеров - дефицит, а потому люди "сидят на множестве стульев".
Менеджер проекта - это действительно как правило фигура эпическая, по определению того что он стоит между клиентом, проектной командой (как правило - собираемой под проект, замечу, так что это совсем не обезательно и даже скорее редко когда "его люди")и отделом продаж которые как правило всегда продают больше чем можно сделать. Т.е. конфликт в его позицию заложен изначально, потому что его контроль за сроками, людьми и требованиями не очень-то и велик.
Вот только менеджерами проектов не ограничевается понятие "менеджер" (это даже не вспоминая не-менеджерских менеджеров типа product manager, etc), и более того, довольно редко менеджер проектов - бывший программист. По крайней мере в нашей компании и у системных интеграторов с которыми мы сталкивались (включая всех больших - Accenture, Bearing Point, etc, etc).

[identity profile] alexaces.livejournal.com 2005-09-22 07:57 pm (UTC)(link)
Это ты описываешь не менеджера. Это ты описываешь классического _начальника_ советско-российского типа. Безусловно подобные менеджеры тоже бывают, и их даже много, но тем не менее подобное поведение не считается обычно характеристикой хорошего менеджера (который в том числе ответственен за мораль/инициативу/рост своего отдела/группы - что при описываемом поведении маловероятно). А вот классический начальник которому _дают_ подчиненных которые от него не могут по тем или иным причинам уйти и соотв. терпят такое отношение - вот он может себя и так вести пока ничего громко не упадет. Хороший менеджер геморрой будет распределять равномерно и будет рапортовать не о своих успехах, а об успехах отдела и конкретных подчиненных.

Само понятие "слава" - уже ментальность начальника (или individual contributor). Слава менеджера - это его команда/процессы им построенные и рост его зарплаты/ответственности. Если хочется славы, лучше вообще работать в одиночку.

[identity profile] alexaces.livejournal.com 2005-09-22 08:46 pm (UTC)(link)
Само определение ситуации неправильное. Никто не будет в коммерческой неназываемой организации которая нанимает по 10-15 и больше человек в месяц "пытаться сделать менеджера" из нормального программиста если он четко открыто скажет что он этого не хочет.
Советы которые написаны сверху - они для тех "нормальных" программистов которые хотели (либо были не уверены что НЕ хотят) быть менеджерами и соотв были повышены до этой роли - с их гласного или молчаливого несогласия. Эти советы им - как попытаться реально трансформироваться в менеджера если уж решили что да, хотят. Можно конечно использовать эти советы как основу для решения, но думаю что есть более интересные материалы на тему "кем быть".
На тему карьерного продвижения - всего в хай-тек компании с моей точки зрения таких продвижений с моей точки зрения всего две, если оставаться в рамках engineering, а не переходить в сейлс/маркетинг/поддержку/трейнинг и т.п.
1. Individual contributor (тут в формальной иерархии high-tech максимальная должность для software инженера - если он конечно не настаивает на "программировать всю жизнь") - это либо Chief Architect, либо CTO (который может иметь маленькую группу, но реально просто идеолог, а не менеджер). Хорошая возможность если любишь вещи сделанные своими руками больше чем что-либо еще и/или получаешь удовольствие от самого процесса создания чего-то конкретного (соотв. в обоих случаях как правило имеешь очень большое ego ;) потому что думаешь что лучше тебя - никто. И действительно никто в твоей компании - потому что зачем второго такого брать если на задачи хватает одного?). Оптимальная роль для стартапа (где нужны "герои") или наоборот - для какого-нибудь весьма устоявшегося процесса где надо поддерживать статус-кво.
2. Manager. Тут собственно ограничений вверх нет. CEO - это много более 'менеджер' чем 'individual contributor', к примеру. Хорошая возможность если хочешь решать проблемы и удовольствие получаешь от результата, а вот в самом процессе готов про удовольствие забыть (поскольку менеджемент в более-менее не-рабской компании где люди свободно приходят и уходят - это всегда сплошные утрясания, договоры и компромиссы, ничем принципиально не отличающиеся от любой другой организацинной работы вовлекающей много людей - типа организации скажем вечеринки на 10 человек). Во вменяемой компании менеджер еще получает возможность (а хороший менеджер - передает её вниз) менять процессы так чтобы уменьшить будущие проблемы. У contributor такой возможности никогда нет, потому что он говорит все лишь от своего лица, и его мнение не много значит - его берут делать конкретную работу, а не улучшать процессы в компании.
Как любая формальная классификация, две категории наверху конечно же упрощены. Хороший менеджер будет всегда участвовать в работе группы индивидуально, потому что гораздо полезнее и нагляднее _показать_ что именно ты хочешь, а после этого объяснить как именно ты это сделал. Просто хороший менеджер определит границу между delegate, teach и do it yourself. И соотв построит баланс между временем которое нужно потратить на обучение тима с прицелом на то чтобы они могли делать больше сами в будущем vs. сделать-хорошо-самому-сейчас-и-заткнуть-дыру.

P.S. Советы кстати очень хорошие. Многие из них я в том или ином виде пытался тебе дать, в частности 5, 6, 8 и 10, плюс 3 в части Walking (в противоположность «sitting writing e-mails»).

[identity profile] hazan.livejournal.com 2005-09-23 09:17 am (UTC)(link)
Ну, весь прикол в том, что распределить можно только РАБОТУ, которой интересно заниматься самому. А вот распределить ГЕМОРРОЙ - это невозможно. Он как раз будет концентрироваться на тебе. ИЛи мы просто не умеет это делать ;-)

[identity profile] hazan.livejournal.com 2005-09-23 09:33 am (UTC)(link)
На самом деле вы как то зря концентрируетесь на программистской судьбе. Картина совершенно одинаковая во всех областях. И "проект" как программный продукт - слишком узкое трактование. Просто в других областях народ по прежнему на визитках пишет "начальник" или "руководитель", выполняя тот же самый набор функций и ритуальных танцев. Любое дело, имеющее более-менее четко очерченные границы, уже по сути является проектом, сроки которого могут быть как четко очерчены, так и быть бесконечными. А суть одна - основной работой становится не производство продукта, а налаживание процесса производства. А как следствие - поиск компетентных исполнителей, контроль сроков и качества, решение проблем и собирание геморроя. Потому и перспективы не только СЕО, СТО - а просто СхО. Ну разумеется, при старте из какой то конкретной области круг потенциальных цеелй сужается, но все пути могут вывести наверх.

[identity profile] alexaces.livejournal.com 2005-09-23 03:54 pm (UTC)(link)
Так-так. Т.е. мы оказывается обсуждаем комиксы, Сипсонов, Футураму и пр. сатирические взгляды на действительность ;) А я думал мы по делу базарим ;)
Потому что если мы обсуждаем реальность, то утверждения что PHB "совершенно типичен для Штатов" и что более того PHB "становятся 90% всего начальства" (замечу - опять НАЧАЛЬСТВА, а не менеджемента, что хорошо подтверждает мою точку зрения, ессно на ассоциативном уровне) - без доказательств НЕ принимаются. Даже как-то обидеться хочется, как менеджеру группы, на такие сравнения.
Мой личный опыт и наблюдения не подтверждают подобную точку зрения. Более того, PHB для меня - это менеджер приведенный сверху и не имеющий никакого опыта в той сфере которой он руководит (и не хотящий этот опыт получить). Мы вроде бы обсуждали менеджера который был выдвинут снизу, да причем еще был _выдвинут_, а не _выдвинулся сам_, а следовательно он по определению знаком с предметной областью и с большой вероятностью - не карьерист.

// Кстати - это пожалуй и есть основная моя проблема. Что главное достижение менеджера - есть не качественный продукт, а отлаженый процесс. А из второго первое совершенно не следует.

Следует, если не терять сочетание команда/процессы - которое я не просто так использовал. Потому что не только "отлаженный процесс", а и КОМАНДА строится менеджером, и является его заслугой. Одно без другого качественного продукта не даст, оба - всегда дадут. А славу за продукт должна у приличного менеджера получать команда, иначе какая у ней-команды - мотивация что-то делать хорошо?

[identity profile] alexaces.livejournal.com 2005-09-23 04:01 pm (UTC)(link)
Более того, я берусь утверждать что ХОРОШИЙ менеджер (и даже приличный "начальник" и достойный "командир" ;) ) не будет никогда "распределять гемморой", а будет свою команду от него защищать, принимая его на себя. Зато и задачи вниз он уже будет раздавать от своего имени, творчески переработанные, а не просто "спускать их сверху" - чем собственно и занимаются назначенные сверху "начальники". И команда соотв будет работать на этого менеджера, а не воспринимать его как распределителя геморроя.

[identity profile] alexaces.livejournal.com 2005-09-23 04:18 pm (UTC)(link)
Не претендуя на академичность, полноту или всеобщую применимость, вкратце моё понимание различных типов менеджеров:

Менеджеры как руководители могут быть грубо поделены на менеджеров людей и задач, обычно в какой-то комбинации этих двух, редко когда 100-0.
1. Менеджеры людей имеют в подчинении постоянные группы, они участвуют/руководят наймом/увольнением людей в этих группах, их зарплатами, отпусками, рабочими местами и т.п. Их фокус люди и группы людей, а не решение конкретных тактических задач - как правило. Руководство групп, отделов и направлений - это менеджеры людей.
2. Менеджеры задач занимаются конкретными тактическими задачами, определяя требуемые ресурсы, время, график и контролируя то как идет процесс решения задачи. Они могут не иметь вообще людей в постоянном подчинении и набирать команду из других групп под конкретную задачу. Руководство проектов и бидов - то менеджеры задач.

Еще есть тонна людей которые реально не попадают ни в одну из категорий, но называются менеджерами. Хороший пример для софтверной компании- это Менеджер продукта. Product Manager - роль которая соостоит в координации сбора, приведении в порядок и выдачи в качестве product roadmap улучшений и добавлений для следующих версий продуктов. Реально Product Manager не имеет в подчинении людей, а работает над координацией запросов разных отделов - sales, marketing, engineering, support, etc. Он реально - менеджер задач/фич. То же самое - менее распространенная должность - marketing manager, account manager (это sales), human resources менеджер (отдел кадров) и т.д.

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

[identity profile] alexaces.livejournal.com 2005-09-23 04:28 pm (UTC)(link)
А вот с этим соглашусь целиком и полностью в контексте неназываемой компании. Не хватает - катастрофически - опытных людей на проектах и в отделе продаж, а потому сколько-нибудь проявивший себя в какой-нибудь $AREA человек немедленно выдергивается туда и соотвественно ему нужна замена на которую тащат человека с более низкого уровня.
Тем не менее это совершенно не отменяет моего тезиса, который надо читать целиком, до слов "если он четко и открыто скажет что он этого не хочет". У нас люди соглашаются с принципом "надо для блага компании", просто хотят попробовать себя или элементарно боятся последствий отказа (которые реально заключаются всего лишь в том что больше уже не спросят и будут смотреть - неизбежно - как на менее ценного сотрудника) - отсюда и идет вымывание. Переформулируя - если человек прямо откажется - во всех случаях когда ему предложили - быть менеджером, его "тащить" никто долго туда не будет - потому что это пустая трата времени которого и так не хватает.

[identity profile] alexaces.livejournal.com 2005-09-23 04:33 pm (UTC)(link)
"Но ценность их для программиста" - поправка. Ценность их для программиста "КОТОРЫЙ НЕ ХОЧЕТ БЫТЬ МЕНЕДЖЕРОМ".

Ты не в армии. Ты даже не в комсомоле/партии. Не хочешь быть менеджером - не будь им ;) Но не обобщай это на всёх програмистов-то. Может кто-то хочет (я десяток знаю точно, хотя половину бы я в менеджемент не пустил ;) ). Вот им-то подобные советы очень полезны - а тебе просто нужны другие советы. Например либо "как захотеть стать менеджером за 48 часов". Либо - еще лучше - "отвожу порчу, сглаз и предложения стать менеджером. Дорого. Надежно" ;)

[identity profile] alexaces.livejournal.com 2005-09-23 04:52 pm (UTC)(link)
Ну, по пунктам.
1. Программистская судьба по определению есть фокус данной дискуссии потому некий г. РеКодер - программист ;)
2. Соответственно я старался писать только с т.з. инженерной/IT организации которая выходит на CIO (или в кривых конторах - на CTO).
3. Под определением что есть "проекта" и его сути (налаживание процесса производства) подпишусь, но не вижу где именно "проект" я или другие участники дискусии трактовали как продукт, а поэтому не понимаю третьей фразы вообще.
4. Опять-таки, менеджер может подняться реально до какого угодно CxO, речь шла об ограниченности роста человека который хочет быть individual contributor и ничего/кого не менеджить. В engineering/IT - это c моей т.з. Chief Architect. А чтобы было совсем уж точно, перефразируем так - конечно, Chief Architect имеет вероятность вырасти в CxО. Но эта вероятность очень мала, потому что человек чтобы вырасти до CA шел по не-меджерской дорожке и соотв развивал не-менеджерские навыки. Но исключения бывают везде - это жизнь, а не компьютерная программа (I hope and believe that is true ;) )).
5. Вообщем-то мой фокус был на том чтобы РеКодеру объяснить его ближайшие перспективы, а всё что сверху это уже "общечеловеческие" рассуждения, так что на тему предлагаю забить ;)

[identity profile] hazan.livejournal.com 2005-09-23 05:07 pm (UTC)(link)
Ну, смысл тертьей фразы был в том, что менеджер чего-угодно перестает заниматся работой в принципе, и после этого уже становится все менее и менее важно, какой у него был технический бекграунд. Главное - его организационные способности, которые очень редко связаны с родом работы, которую человек выполнял до этого.
Это я просто пытаюсь объяснить сказанное ранее, без попытки что то оспаривать.

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

Кстати, на счет сложности построенных человеком устройств - государство покруче будет ;-)

[identity profile] alexaces.livejournal.com 2005-09-23 05:28 pm (UTC)(link)
А, теперь понял.

На тему сложности и государства - это правда, потому я и вписал не только "компании", но и "организации" в "самые сложные устройства". Государство с моей точки зрения - это организация.


[identity profile] alexaces.livejournal.com 2005-09-26 01:06 pm (UTC)(link)
Я не очень понимаю аргументацию с использованием SlashDot и т.п. форумов где обиженный на что либо (или просто excited чем либо) народ выпускает пар. Эти форумы - они что, представляют собой серьезную статистическую базу которая показывает не только наличие, но и процентное соотношение между PHB и не-PHB менеджерами? ;)
Т.е. каждый человек в индустрии немедленно бежит писать в SlashDot если у него менеджер "ну так, ну обычный менеджер, ну что-то там делает, особо сильно не достает, и не полный идиот"? ;)
Так что аргумент со слэш-дотом не принимается - тенденциозная, непроверяемая и соотв нерепрезентативная выборка. Принимается - например - опрос друзей и знакомых, насколько можно всеобъемлющий, который дает картину 90% PHB-менеджеров на удаленни 1-2 человека от тебя. Это будет настолько приближенно к среднестатической организации насколько мы можем получить.
Абсолютно так же логика применима к выдвиженцам снизу которые скатились в PHB - хочу статистику. Лично не знаю такого ни одного.

[identity profile] alexaces.livejournal.com 2005-09-26 02:44 pm (UTC)(link)
Тут я вижу две вещи вытекающие одна из другой.
1. Если "менеджер программистов" это другая профессия, а не просто следующий этап развития программиста, то по той же логике все другие пути развития программиста когда он реально сам код уже не пишет (те же architects, к примеру) - тоже смена профессии.
2. Отсюда (да собственно, не только отсюда, а просто-таки by design) следуюет что "программист, который остается программистом" - ему не стоит смотреть советы ни для чего кроме "как программировать на <язык тут>". И если после того как он несколько раз гласно отказался от того чтобы быть менеджером или - это вытекает из "остается программистом" - architect, - то ему безусловно надо менять компанию. Причем с моей т.з. - приготовится к тому что компании придется менять часто (исключение - гос-служба, желательно - армия, где технологии стоят на месте), потому что очень скоро таких компаний где его опыт/знания и связанная с этим высокая зарплата будут предподчтительнее чем какая-нибудь свежевыпущенная молодежь с красными дипломами - практически не будет. Хороший пример подобного самоограничения - спецы по ЕС ЭВМ. Профессионалы - да. Требуются - да. Всё меньше и меньше - тоже ДА.
Я - это моё личное мнение - считаю что само-ограничение в том что "делал дольше всего/лучше всего разбираешься" - это преждевременная профессиональная смерть, причем много более быстрая в high-tech как очень неразвитой/быстро меняющейся индустрии чем в каком-нибудь plumbing. Как и со всеми остальными своими личными мнениями, я его никому не навязываю, люди должны думать своей головой, я только излагаю почему именно так думаю именно я.

[identity profile] alexaces.livejournal.com 2005-09-26 04:43 pm (UTC)(link)
Весьма разумное предложение по уточнению словаря. Пытаюсь.
Всё ниженаписанное не претендует на полноту и осознает то что в современном русском языке понятия используются часто как взаимозаменяемые, не в последнюю очередь потому что механически были взяты иерархии советского времени и модернизация свелась к переименованию начальников в менеджеры. если взять тот же лингво и посмотреть перевод, то видно что в переводе "начальник" нет ни одного варианта с "менеджер" и наоборот.

Я использовал термины в следующем смысле.

1. Начальник - человек получивший власть над определенным числом людей выбранным по признаку организационной иерархии. Как правило назначен сверху, часто член бюрократической машины, перебрасываемый с одного места на другое (бессмертное "бросить на производство" из Ильфа/Петрова). Мандат начальника -как правило - "руководить" (а не решать какие-то задачи отдела/продвигать "миссию компании" или даже выполнять волю собственников компании). Ключевое слово для "начальника" - власть. Не зря все варианты перевода на том же лингво тяготеют к "начальник тюрьмы, полиции" и т.п. - одного аналогичного слова просто в английском нет. Самое к примеру близкое к начальник отдела - это Director of XXX Deparment. А все managers - они уже под Director сидят, или вообще в отдельной иерархии (PMO->project managers). Для начальника чтобы хорошо жить - надо быть в хороших отношениях с его начальником, не обязательно из-за результатов. Как правило начальник назначается через голову его непосредственного начальника, а потому и уволен может быть через головую

2. Менеджер - наемный работник, нанятый для решения определенных задач (а не для просто руководства существующей группой людей). Часто приводит своих людей, увольняет или убирает на вторые существующих и т.п. - для того чтобы решить задачу. Полномочия как правило ему нужно выбивать, а не получать, причем чаще всего они временные (а у начальника - они постоянные пока он на этой должности). Причем как правило менеджер отвечает напрямую людям которые его наняли и соотв могут его уволить, а потому у него есть прямой стимул работать на результат.

Хорошее summary пост-советских типов руководителей есть вот здесь -
http://www.cfin.ru/management/people/denisov-08.shtml
Начальники там это значительный процент из тех кто "Советская школа".

Надеюсь что более понятно стала разница. Если нет, могу по возможности еще расширить.