Archive for the ‘Эффективность’ Category

Мифология (Наемный рабочий vs Консультант).

Вторник, Август 19th, 2008

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

Итак, капнемся откуда растут ноги (как будто у них есть шанс расти из другого места).

Миф N1: «Наемный рабочий лояльнее».

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

Как по мне, второй тип ухода более лоялен, чем первый. А в остальном, лояльность — это просто  броское слово.

Миф N2: «Наемный рабочий дешевле чем консультант».

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

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

Миф N3: Консультант украдет все ваши знания и продаст их конкурентом.

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

А если смотреть на это чуть с другой стороны. Что мешает сделать это же наемного рабочему? У него что чип в мозг встроен, который запрещает работать с вашими конкурентами?

Миф N4: Консультант всегда ищет дополнительные заказы и работает еще с кем-то.

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

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

Миф N5: Консультанта нужно постоянно тщательно менеджирить, чтобы он делал, то что надо.

Опять же — это не миф. А вот, то что наемного сотрудника можно  оставлять на самотек — это миф. Управлять надо и теме и другими. Если ими не управлять, то вероятнее всего результат будет совсем не то, что ожидался.

Миф N6:  Консультант никогда ни будет что-то улучшать просто так.

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

Хе-хе… Мощно вышло. Чувствую, завтра все кто на найме, придут меня бить 😉

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

Ну, и если говорить честно, то 90% всей описанной фигни зависит не от типа сотрудничества, а от личных качеств работника/консультанта. И тех и других можно найти как потрясающих, так и абсолютно дерьмовых.

С удовольствием приму (и допишу) предложенные вами Мифы на эту тему.

P.S. Ссылочка на блог Константина Галайко. Блоггер, программист, да еще и ронин (не смог я обойти последний пункт, не дав ссылку 🙂

P.P.S Миф N7 от Артура Ракицкого. Консультанты не фига не хотят делиться знаниями, в то время как наемный рабочие с удовольствием делятся информацией.

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

Проблема тут не в деньгах, а в головах. Если человеку хочется кого-то обучать, то он это будет делать, если не хочется — не будет.

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

Миф N8 (от technoman): Консультант это бизнесмен и человек который хочет заниматься бизнесом. поэтому он редко рассматривает возможность долгосрочной работы на одном месте

Консультант, это такой же человек как остальные — он хочет тупо бабок и интересных проектов. Долгосрочную работу, как и наемный работник, он рассматривает только пока условия будут его удовлетворять.

То есть получается, что для наемных работников мы говорим: «да мы им можем даже на головы нагадить, а они останутся», а для консультанта почему-то так делать боимся.

Как я писал уже в мифе N4. И те и другие ищут. Одни просто ищут более активно. Ну блин, так на то работодатель должен быть с головой, чтобы расчитывать, что средняя длина сотрудничества с наемным — 2-3 года, с консультантом 1-1.5 года.

Миф N9 (от Анонима 🙂 Наёмный работник более лоялен к смене проекта, в котором учавствует. Например, если работодатель считает что один проект у него важнее остальных, то начинается перемещение людей. И аргумент, что КПД упадёт в разы его (работодателя) не вдохновляет :(((.

Не совсем понял к чему тут КПД относительно лояльности.  И это вообще сказочно развенчивается. Консультанты чаще всего сильно ориентированны на деньги и готовы делать даже не самые интересные проекты (особенно учитывая, что оплата у них вполне таки хорошая). Поэтому он особо не кислится, если его переместили на неинтересный проект. А вот как раз наемный работник, сразу впадает в хандру на «плохом» проекте и начинает оглядываться куда-бы свалить от этого плохого проекта.

Заставь работника трудиться на тебя всю жизнь.

Пятница, Август 8th, 2008

Сегодня имел длинную и продолжительную беседу с нашим VP Engineering’а о том как сделать так, чтобы люди в фирме оставались дольше.

Интересно, что лет 7 назад у меня была похожая беседа с владельцем той фирмы в которой я работал.

Ну и в своей фирме тоже об этом постоянно приходилось беспокоиться.

Естественно, я не говорю о том, чтобы прямо ВСЕ люди оставались в фирме или чтобы люди  прямо до пенсии работали. Скорее обсуждение шло о том, как сделать, чтобы люди просто работали подольше.

В общем, по ходу обсуждения пришли к нескольким выводам

— Рост.

Одна из самых важных вещей, которые люди (особенно толковые) хотят — это расти.  Каждый правда понимает свое под «ростом» — для кого-то это технический рост, для кого-то это карьерный, для практически всех — финансовый.

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

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

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

—  Отсутствие фигни

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

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

— Эффект звездного коллектива

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

И им не особо хочется после этого уходить в среднестатистическую фирму, где не с кем общаться.

Хм… Вроде, описал все, что мы говорили.

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

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

Кстати, одна из вещей, которую я считаю крайне важной — написание документации. Зачастую те самые звездные люди могут тратить недели на разбирательство с чем-то новым. Для средних разработчиков — такие исследования могут занять месяцы. Поэтому крайне важно, чтобы те самые звезды делали «выжимки» и кормили ими все остальных разработчиков. Естественно это не передаст весь опыт, но хотя бы передаст часть знаний.

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

Менеджер с линейкой в голове.

Вторник, Июль 29th, 2008

Много мыслей теснится в голове, но завязаны они в какой-то тесный пучек, идеально который надо разложить на отдельные длинные и занудные посты. Вместо этого попытаюсь впихнуть все в один пост и активно посыпать его перчиком.:)

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

Пусть есть завод, который выпускает какой-то товар, а потом товар естественно продают. И представим, что не ведется измерение не выпущенного товара, не затрат на выпуск товара, не проданного товара, не остатков на складе и только ведется учет денег на счету. И вот вдруг деньги на счету начинают утекать, менеджеры в шоке (читай бегают как курицы с оторванной головой), что делать и как и спасать ситуацию.
И вот тут обнаруживается, что может быть:
— мало производим, мало продаем, а деньги падают, так как прибыль не покрывается непроизводственные затраты

— много производим, много продаем, а деньги падают, так как цена на товар не покрывает затрат на выпуск

— много производим, мало продаем, так как товар не пользуется спросом

— много производим, много продаем, просто в последнее время произвели больше, чем успели продать

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

Так вот, возвращаемся к тому, что управлять невозможно, когда невозможно измерить. На самом деле кроме ситуации «невозможно» измерять, гораздо чаще встречается ситуации «не хочется» измерять, а еще чаще «не считается важным» измерять.

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

Если быть точнее, они не отказываются от измерения совсем. Просто объективное измерение они заменяют субъективным. То есть, на глаз они говорят — вот это равно X, а вот это равно Y. Самое забавное, что зачастую они даже могут дать более точные оценки чем другие люди и методы (все таки опыт сказывается) и таким образом возникает самоиндуцируется ситуация. Менеджер говорит: «Я прав и делаю правильно и лучше других, зачем тогда делать это другими методами хуже».

С одной стороны, звучит как-то по идиотски, как же можно оценивать например прибыль «на глаз» или количество проданных товаров? Да я и не говорю о проданных товарах, на самом деле к чему я веду к оценке людей которыми менеджер управляет..

Оп… И все стало на свои места. Я думаю вы прекрасно узнаете менеджеров, которые оценивают подчиненных на глаз, причем большинство (включая и меня) так и делают. И нету никакой объективной шкалы по который подчиненных бы оценивали. Просто, Вася сделал сегодня все удачно и попался под хорошее настроение — в мозге пишем «Вася молодец» и ставим ему +1, а вот Петя что-то лажанул, да еще и на мозоль наступил любимую — «Петя зараза» и ему -1.

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

Собственно откуда же берется эта зараза с абсолютно субъективным типа-измерением, кто и как работает. Причин тут куча…

Из серьезных:

— сложно сделать объективную систему оценки
— любую систему легче обвести, вокруг пальца, чем человека
— не желание тратить времени на ввод системы

Из персональных (те скелеты в шкафу, которые мало кто хочет признать и которые есть практически у всех менеджеров)

— как только создаешь объективную систему, то может оказаться что ты внутри нее не прав
(мало кому хочется подложить себе такую свинью)
— в объективной системе зачастую подчиненные лучше знают свои права и обязанности и могут протестовать
— подчиненный гораздо лучше может отслеживать все что он делает «поверх» своих обязанностей и тем самым выбивать себе лишний «услоговый кредит»

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

Когда-то я писал, о том, чем должен заниматься менеджер среднего звена. И тогда я упустил очень важную вещь. Менеджер должен не просто двигать механизм он еще должен определять в нем поломки и плохие детали заменять на хорошие.

Фух… Для первой части хорошо, на днях продолжу.
Увы, вышло не совсем так как хотелось, но лучше чем ничего.

P.S. Можно начинать спорить прямо с этой части 🙂

Программистский синхрофазотрон (часть 3, о estimat’ах и качестве).

Понедельник, Июнь 30th, 2008

Итак прошло фактически пол года,  с тех пор как я выложил нашумевшие у меня в блоге статьи Программистский синхрофазотрон (часть 1 и часть 2).

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

Вкратце, для тех кто не читал обе части и не хочет туда лезть — идея была в сдельной работе внутри фирмы для программистов. Таким образом программисты могут работать гораздо эффективнее, так как видят прямую зависимость доходов от своей активности (в отличии от ситуации, когда программист сидит на ЗП и может копаться в инете, вместо того, чтобы делать дело). Ну и собственно говоря, ниже, выкладываю мои мысли почему компании массово не переходят на сдельную оплату (хотя вроде она должна быть гораздо более эффективная).

Итак начну из далека.

Пусть есть электрик Вася, сидящий на зарплате, и пьющий водку в рабочее время. И вдруг к этому Васе приходит белочка и он  думает , а чего это я водку все пью, лучше бабла подзашибу. Но блин, даже если я начну вкалывать, то дай бог мне подымут зарплату на 20%, лучше я пойду к своему начальнику и скажу, мол давай работать сдельно. Так Вася и делает. Приходит к начальнику и говорит, так мол и так, с водкой завяжу, сдельно работать будем и тебе лучше (я в пять раз больше сделаю и качественней делать буду) и мне лишняя денюжка в кармане. Начальник чешет голову и говорит, ладно Вася — починка розетки — 5 рублей, починка короткого замыкания — 10 рублей, полная проводка квартиры — 100 рублей. Если у заказчика все после этого через неделю сгорело — то с тебя вычет в двойном объеме. Проходит год, Вася шустрит, иногда правда клиенты ругаются, но суммарно все довольны — Вася при деньгам, начальник троих других электриков уволил, так как Вася за троих справляется, клиенты — счастливы не нюхать перегар Васи.

История вторая — есть Петя строитель. Так же самая картина маслом, но пьет он не водку, а пиво. И договаривается за 1000 положенных кирпичей. Начальнику тоже по душе, чтобы Петя работал и компания на нем деньги делала. Да, и теперь кладет кирпич в три раза быстрее, и при этом теперь больше его построек соответствует ГОСТу 1274-32-12б по укладке кирпича.
История номер три — есть Коля, модный массажист, делающий все виды массажа начиная от Боливийского и заканчивая массажем под названием «Рессора Белаза». Коля, правда пьет уже не водку и пиво, а коньяк (не меньше 3 звездочек), но это мало что меняет. И вот он приходит к начальнику и говорит, а давайте я буду работать сдельно и буду делать все массажи в 5 лучше и в 5 раз быстрее. И вот тут начальник, выпучив глаза, говорит Коле…. Коля, а с коньячком-то видно пора таки завязывать, ты что с дуба упал в 5 раз быстрее массаж делать? Да и как мы будет проверять, что ты в 5 раз качественнее массаж сделал? У тебя что же есть массажеметр? Так, что пойди ка ты Коля, отдохни немножко и с свежими мозгами назад на зарплате работать возвращайся.
Ну, теперь более серьезно. Какова разница между вариантом Васей, Петей и Колей? А разница то, что в первых двух вариантах есть достаточно простое количественное измерение (связанной с доходом) сделанной работы и определенный (разумно измеримый) качественный уровень. В третьем же варианте, хотя количественное измерение есть, но оно не связанно с доходом и качественного измерения нету.

И теперь мы наконец возвращаемся к нашим горе-программистам.

С одной стороны, программисты (включая меня) очень хотят чисто сдельную оплату. Причем не просто сдельную оплату (такую как имеют freelancer’ы), а сдельную оплату внутри фирмы, когда дополнительной работы по поиску клиентов, ведению бухгалтерии у них нет, а вот денег можно зашибить дофига, если ты достаточно эффективен.
Кстати, коротенькое замечание сдельная = fixed cost за задачу, а не почасовка. Почасовка — это фактическа зарплата, просто в зависимости от того, сколько отсидишь на работе. Концептуально почасовка не меняет отношения к тому на сколько быстро хочется решить задачу. Я бы даже сказал, почасовка наоборот двигает человека в направлении растягивания задач.
Так вот, возвращаясь к тому, что программисты хотят сдельную оплату. Есть исследования, которые показывают, что отличный программист может быть эффективнее среднего в 10 раз. Соответственно, перед глазами мелькают цифры с 5-6 нулями за год 😉
И вроде все было бы хорошо, если бы не
— Отсутсвие типовых задач
Фактически сама по себе — это не проблема, но я покажу, во что оно выливается ниже.
Тот же электрик или строитель, да и даже массажист имеет вполне ограниченный набор типовых задач. Их может быть скажем сотня, но все таки сотня разных задач — это вполне разумное число. И эти задачи можно записать.
— Отсутсвие количественной оценки задачи
Вот это проблема, которая вытекает из первой. Так как типовых задач нет, то все задачи не типовые. Для типовых задач, даже если их нельзя оценить впрямую, то можно оценить чисто статистически, сколько они занимают и какую прибыль они приносят. В случае, если же задачи не типовые, то начинается проблемы с их оценкой. И дай бог, если задачу можно оценить каким-то разумным методом. В программировании же, оценка чаще всего очень эмпирическая и +/- 30% даже на небольших задачах считается вполне неплохой точностью.  В добавление к этим проблемам, еще зачастую единственный человек который может дать оценку — является тот самым программист, работающий на проекте. И начальник никак не может проверить, дал ли он настоящую оценку или завысил ее в три раза.

Соответственно, начальник не может вывесить прейскуранта (как было сделано для Васи и Пети).

— Отсутствие измеряемого качества

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

И поэтому в ушах начальника это звучит так «Давайте я увеличу мое субъективное вложение в 5 раз, а вы мне увеличите объективную зарплату в 5 раз». Так в жизни не бывает, что субъективное оценивается равным объективному. И кстати, именно поэтому хорошие программисты получают зарплату в 2-3 раза больше средних, а не в 10. Так как они только субъективно в 10 раз эффективнее, и то непонятно по чьим измерениям, когда же субъективное конвертируется, то на выходе получает большая в 2-3 объективных раза зарплата.
Фух… Что-то я начал запутываться, но думаю вы меня поняли. Вся проблема именно в отсутствии объективных оценок. Поэтому думаю к такому виду сотрудничества как я писал в первых частях — IT бизнес таки не придет.

Воооот… Ну и очень хотелось бы услышать ваши мнения, комментарии и идеи.

Дополнение N1: Итак, давайте, оценку = estimate из понятия абстрактного (а-ля сферический конь в вакууме) переведем на понятие реальное. Есть конечный человек которые делает оценку задачи.

Ситуация 1. Оценку делает менеджер, которые с кодом не работает. Я не верю, что человек не работающий с проектом может дать насколько нибудь разумную оценку.

Ситуация 2. Оценку делает каждый для себя. В таком случае, люди могут завышать оценку, тем самым выбивая деньги из фирмы.

Ситуация 3. Оценку делает team lead или другой опытный разработчик имеющий большой опыт на проекте. Это достаточно разумная практика, но в ней есть две проблемы. Даже team lead не дает точную оценку и очень обидно будет программистам, которые недополучат денег из-за ошибки team lead’а. Вторая проблема, что ситуация 3 вырождается в ситуацию 2 для самого team lead’а. То есть самый опытный человек делает оценку для самого себя и может ее завышать.

Учитывая, что весь этот сыр бор с программистским синхрофазотроном обсуждается именно для самых толковых программистов, то Ситуация 2+3, крайне важна. Непонятно, кто будет оценивать оценку team lead’а.

Дополнение 2. У многих возникает удивление. Типа, если программисты станут в 3 раза быстрее работать, какого фига они сейчас так не работают. Так что, эти заразы, работают не на полную мощность.

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

Но эта ситуация устраивает работодателя, так как он знает, если программиста выгнать, то другой будет делать тоже самое. Может если на рынке будет кризис, то тогда программисты поднапрягутся, а так просто люди сидя на зарплате не видят смысла вкалывать.