?

Log in

No account? Create an account
Andrei Ivanov
А нужны ли менеджеры программистским компаниям? 
17th-Apr-2008 01:03 pm
JetBrains
Есть такое поверье, что в компании Гугл, которую многие в индустрии считают лучшей компанией наших дней, менеджеров почти нет. Ну, то есть их немного есть, необходимое зло, но это временно =). Потому, что как пишет Стиви, если убрать всех менеджеров, хорошие инженеры будут по прежнему делать хорошие вещи, может быть даже быстрее. Мне вот стало интересно, если исходить из того, что в компании у нас работают те самые top 1% инженеров, мудаков, от которых инженеров надо защищать нет и никогда не было, и инженеров уже кормят каждый день хорошими обедами - то есть, быт налажен, нужны ли менеджеры вообще? У меня точка зрения на этот счёт есть - и нужны ли вообще и если нужны, то зачем, но я сам, в некотором роде, менеджер, а точка зрения поросёнка о том, полезно ли есть свинину, может быть не до конца объективной =). Что думаете?

Гугловцы про то, как они так успешно практически без менеджеров работают не рассказывают. НДА, типа...
Comments 
17th-Apr-2008 09:18 am (UTC)
Если есть НДА - не может не быть менеджеров.
17th-Apr-2008 10:08 am (UTC)
ну, то есть, ты не стесняясь говоришь что менеджеры нужны только чтобы следить за соблюдением NDA? :)

(Deleted comment)
17th-Apr-2008 09:28 am (UTC)
А кто будет сортировать апельсины?
17th-Apr-2008 09:23 pm (UTC)
Вы, Александр Ильич, как спросите =) Какие нафик апельсины?
17th-Apr-2008 09:29 am (UTC)
в таких компаниях как гугл менеджера явно не нужны имхо.. думаю что этот "Стиви" (не знаю кто это или вспомнить не могу и даже не интересно, так как судя по высказыванию - кретин) имеет в виду общую тенденцию ИТ рынка в направление микрозадач и наноцелей, в таком случае программисту менеджер нужен не больше чем выделенный менеджер для сисадмина
17th-Apr-2008 10:44 am (UTC)
Steve Yegge - довольно популярная фигура, часто цитируется, определенно не кретин =) Высказывание я, все-такие вырвал из контекста вот этого поста в его блоге - http://steve-yegge.blogspot.com/2006/05/not-managing-software-developers.html
Интересная, кстати,зарисовка, я со многим там согласен.
17th-Apr-2008 09:35 am (UTC) - боян
В условиях роста индустрии может казаться, что менеджеры не нужны. Но это только кажется, т.к. неоптимальность работы плохо управляемой команды не уводит её в минус. Когда кривая станет более пологой, потребность в хороших менеджерах вырастет. А пока, инженеры из топ 1% могут неплохо справлялься с менеджерскими обязанностями.

Менеджменту в ИТ испортили имидж программисты, которых зря повысили (старая идея).
17th-Apr-2008 08:59 pm (UTC) - Re: боян
Менеджементу в ИТ репутацию испортили, все-же, думаю, как раз не-программисты, которых зря поставили руководить программистами.

Что касается роста индустрии - тут согласен. Если есть возможность посадить 1000 программистов из пресловутого топ 1% заниматься тем, чем им интересно, и при этом для успеха компании достаточно, чтобы 1 из них выстрелил раз в два года, скажем, можно всем этим и не управлять.
17th-Apr-2008 09:58 am (UTC)
Есть у них менеджеры, есть.

А вот сроков сдачи, практически, нет. ;)
17th-Apr-2008 10:00 am (UTC)
Я думаю, тот кто предлагает "убрать менеджеров", имеет в виду какие-то конкретные функции, которые обычно выполняет менеджер, и которые так не нравятся субъекту - возможно, вполне оправданно. Но тот же менеджер может выполнять в проекте и другие функции, которые в его отсутствие лягут на плечи остальных членов команды. А уж справятся они с ними или нет - это зависит.

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

На мой взгляд, надо обсуждать конкретные практики - нужны они или нет, а дальше уже само получится, что если конкретному человеку нечем в проекте заняться, то он и не нужен. Может статься, программисты будут не нужны :)
17th-Apr-2008 10:03 am (UTC)
Менеджеры, конечно же, нужны. Но их должно быть немного. Вот если, например, взять целый департамент разработки ПО и разделить его каким-то образом на несколько отделов, каждый из которых будет заниматься более менее независимыми от других отделов проектами, то менеджер в каждом таком отделе вовсе не нужен. Достаточно одного или нескольких менеджеров на уровне департамента. Внутри отделов хорошие инженеры вполне способны самоорганизоваться. А если кто-то внутри отдела не может самоорганизоваться, то значит и локальный менеджер не сможет его организовать. Ему нужно либо переходить в другой отдел, либо он вообще не нужен. Т.е. проблема в любом случае решается только на уровне менеджера департамента.
17th-Apr-2008 10:03 am (UTC)
Вау. А кто говорит про "без менеджеров"? Насколько я мог судить, это, мягко говоря, не совсем правда.
17th-Apr-2008 10:04 am (UTC)
Э, не верю.
Задача координации работы программистов, дизайнеров, сисадминов, сейлзов, PRщиков и т.п. в Гугле никуда не делась и делать ее кому-нибудь нужно. Так что без product managment они не обойдутся.

Кроме того, у меня есть как минимум один знакомый,который работает в Гугле менеджером. И, насколько я понимаю, отнюдь не product manager, т.е. другие специализации менеджмента тоже востребованы.

Вот административного менеджмента в Гугле, похоже, не много - впрочем, при избытке денег это вполне реально.
17th-Apr-2008 10:56 am (UTC)
что значит "успешно без менеджеров"? я полагаю к успеху гугла принадлежит очень небольшой процент сотрудников гугла, а остальные предприятия убыточны
17th-Apr-2008 11:34 am (UTC)
Как уже было отмечено, тут два разных вопроса: 1) нужно ли выполнять некие необходимые для успеха предприятия управленческие функции, 2) должен ли их выполнять специальный человек - "менеджер", или остальные как-нибудь сами справятся. На первый вопрос ответ: да, нужны. Второй вопрос Вам, видимо, как раз интересен. Но он-то, по-моему, частный. Сильно зависит от обстановки. В одном проекте управление сможет на себя ведущий разработчик, в другом - не сможет. Надо смотреть на амбиции, задачи и ресурсы в конкретном месте.
17th-Apr-2008 09:21 pm (UTC)
Ну, давайте определим контест. Контекст у нас будет а-ля Гугл или Яндекс. Большая компания, много проектов разных размеров, денег много - и их поступление в краткосрочной перспективе не зависит от успеха разработки. Инженеры - по возможности лучшие и в некотором приближении отобранные своими коллегами - стратегия найма была такая, что фолс позитив гораздо менее вероятен, чем фолс негатив. Культура такова, что менеджером быть никто особо не стремиться. Компания быстро растет. Распределенная. Какой будет ответ на второй вопрос?
17th-Apr-2008 11:53 am (UTC)
менеджеры может быть и не нужны, но нужны какие люди которые будут отвественны за принятие решений куда развиваться подукту и какие задачи более приоритетные, то есть выполнять те же самые управленческие функции. Такие функуции конечно может выполнять и ведущий разработчик проекта/группы, но при возрастании объемов группы такая работа будет требовать большей координации что автоматически переводит ведущего разработчика в разряд менеджеров.
17th-Apr-2008 12:52 pm (UTC)
Менеджер-не менеджер, но если есть команда, работающая над одним проектом, то должен быть в этой команде главный -- project leader/architecht/whatever. Если мы говорим о сферической команде в вакууме идеальной команде из top 1%, то этим главным можно сделать любого члена команды. Первый среди равных. Чтобы решать неизбежно возникающие конфликты и чтобы весь итоговый продукт был выдержан, что называется, в едином ключе.
17th-Apr-2008 05:03 pm (UTC)
Вовсе не факт, что этот главный должен быть внутри команды. Более того, если он внутри неё, то это даже хуже. Для разрешения конфликтов уже существует хорошо отдебаженная система прокурор-адвокат-судья. Основная ценность судьи в этой системе в том, что изначально у него нет мнения о том, кто прав. Адвокат и прокурор должны убедить его - каждый в правильности именно своей версии. Кажущийся парадокс здесь в том, что судье вроде бы пофигу, кто из них прав, но в то же время именно ему придется в конце концов принять решение и, главное, взять на себя ответственность. На самом деле, никакого парадокса нет. Просто судья служит более глобальной цели - справедливости и закону. И решение своё он принимает на другом уровне абстракции, он судит не самих адвоката и прокурора, а их точки зрения. Внутрикомандный менеджер не будет иметь возможности полностью абстрагироваться от персоналий.
17th-Apr-2008 01:18 pm (UTC)
Ответ сильно зависит от того, кого считать менеджером. Если ответить на этот вопрос то ответ на твой станет понятен.

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

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

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

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

Но то что он должен быть "не программистом", совершенно не факт. Я часто разговариваю с менеджерами которые раньше были программистами и задаю им вопрос, а вот у тебя тут в резюме написано C++, Perl, Unix, а вот нужно будет сесть и кусочек кода написать ты напишешь? Людей которые отвечают в стиле "не менеджерское это дело код писать" я как правило не беру. Хочу человека который мотивирован закончить проект, если такая молочь как сесть и что-то сделать руками его останавливает - нам не по пути.

И кстати зарисовка из жизни, вот я формально девелопер, и менеджером в нашей компании не считаюсь, но при этом не программировал серьезно примерно год, и чуть меньше 20 человек в подчинении. Кто я?

Так вот - мой ответ если менеджер это "не программист" то нет, нафиг не нужны, если менеджер это "человек чья обязанность сделать проект" то нужны.
17th-Apr-2008 09:13 pm (UTC)
По поводу совмещения работы руководителя и программиста в одном проекте - и у самого был и неоднократно наблюдал =). Это же классика - лучшего программиста назначают руководителем группы, он видит, что любую задачу он решит быстрее и лучше любого члена группы и пытается решить их все. Спит мало, быстро выдыхается. Лечится увеличением числа программистов в группе до уровня, когда писать код за всех становится физически невозможно.

Вообще, совмещение руководство проектом и кодирования в нем, в общем случае, мне кажется, зло =)

Я еще поподробнее завтра отвечу про остальное =)
19th-Apr-2008 09:24 am (UTC)
мы как раз это обсуждали в компании на днях в связи с быстрым ростом. выходит, что без менеджеров, в условиях чистой технократии можно работать, когда есть "супергерои" — инженеры, которые берут на себя менеджерские обязанности и эффективно их выполняют. к сожалению, процент супергероев с верхним процентом лучших инженеров пересекается не сильно.
Page 1 of 2
<<[1] [2] >>
This page was loaded Nov 20th 2017, 11:48 am GMT.