• Асхат Уразбаев на тренинге Happy PM в Киеве

    Posted on April 13th, 2009 Александр Орлов No comments

    В команде приглашенных гостей на открытом тренинге в Киеве произошла замена. Вместо Никиты Филиппова выступит Асхат Уразбаев с небольшим (на пару часов) семинаром про самоорганизацию команд.

    Пока думаем, не запланировать ли вторую серию “К барьеру!” между Асхатом и Славой Панкратовым. :)

  • Советы начинающему тим лиду

    Posted on April 13th, 2009 Александр Орлов 13 comments

    Недавно Алистер Коберн опубликовал советы тим лиду, который выдвинулся из программеров. Советы собрала группа экспертов на April 2009 SLC Agile round table. На мой взгляд, одна из лучших подборок, про что нужно знать начинающим менеджерам.

    Что интересно, что слово “Agile” там употребляется только в названии круглого стола. :) Сама суть – абсолютно грамотные менеджерские советы. С удовлетворением заметил, что многие из этих тем мы покрывали на “Как стать менеджером в ИТ” и “Пути самурая”. :)

    • The Problem Space is Different – Delegation is Key…
    • I have a VP who was a Kernel Development, and he has never let go of it – so I deal with it by giving him what he wants, makes sure he gets lots of credit, and keep the rest for myself.
    • The hardest thing is simply listening to people.
    • In almost any high-skill arena, taking the top performers and making them coaches/managers is almost always a disaster.
    • Paul Graham: “what do you call a really technical person with strong people skills? Boss”.
    • Whatever their job is, help them be better at it.
    • You are now a junior person in a brand new career that you never were trained for – and keep in mind that the medium you are working in is PEOPLE.
    • As someone who has come from the coding arena, you understand the basic drama of building code – that’s invaluable.
    • Make time to stay involved with the stuff you love. Understand the difference between being interrupt-driven and being task-driven – find a way to find some time in the day to focus on a single task for a while.
    • See the “eMyth Revisited” – talks about the mindsets that people have.
    • Managing up is critical – help your team look as good as possible to the rest of organization, protect your team.
    • See if the person wants to be a manager :-) My company has a technical career track.
    • See Behind Closed Doors – the purpose of management is to organize purposefully.
    • Use one-on-one’s, help them to keep moving forward.
    • I had to move into a leadership role a year ago – keep a level head – you’re a parent to your team.
    • As a manager, you’re the guy on the Curling team with the broom – sweeping the snow out from in front of the stone… You don’t want to be in your face with all the details, but here to remove obstacles. “Be A Shit Shield” – the worst managers I’ve ever had were “Perfect Shit Conductors”.
    • Remove impediments – manage from the outside in – the difference between teaching adults and kids is that kids often listen – there are two different ways to teach – hot stove – or keeping people upright, then letting them fall at the right time.
    • How can we make it acceptable to promote the people who may not be the top technical performers?!?
    • People will bring you their issues with teammates – it will help to give your people some training in how to deal with those issues themselves.
    • YOU ARE THE ABSTRACTION LAYER – you provide the Bubble of Happiness.
    • If you can teach someone else – What does a good mgr do? What does a good mgr avoid? What does a good mgr know?
    • Make sure that you are not on the critical path (since you may have been a lead coder before).
    • It’s my job to make you better than American Express needs, and when that happens, I’ll help you find another job – and she did!
    • What your team needs from you is selling up.
  • Демучения

    Posted on April 12th, 2009 Александр Орлов No comments

    Хотел на это воскресенье найти какой-нибудь интересный ролик про демонстрации. Конечно, гугл услужливо подсунул хит на все времена – тестирование распознавалки голоса в Vista.

    Вот мы, помнится, однажды примерно так же демонстрировали нашу автоматизацию GUI тестов перед вице-президентом компании.С трех попыток наши мега-автоматизированные тесты повисли ровно три раза. Хорошо, вице-президент оказался мужик с юмором и над нами просто открыто поржал.

    Готовьте демы. :)

    Fun
  • Два в одном

    Posted on April 10th, 2009 Александр Орлов 17 comments

    Недавно заезжал в Intel, и там у нас вышел интересный разговор с бывшим коллегой:

    - Постой, – говорю, – не могут два человека отвечать за архитектуру продукта.

    - Почему не могут?

    Этот вопрос сбил меня с толку. Мне казалось, это очевидно. И я задумался. А, собственно, почему нет? Почему вообще говоря два человека не могут отвечать за что-то одно? :) В голову пришли сразу несколько мыслей, на поверку показавшихся мифами.

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

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

    В Интеле в свое время была распространена практикаю, когда одним подразделением руководили два менеджера. Что-то я не помню, чтобы там возникали драки.

    Миф второй. Они передерутся, отвечая на вопросы. Ну, то есть, придет к первому архитектору разработчик Петя, спросит: “А, может, вставим вот тут костыль в нашу архитектуру?”. Первый архитектор разрешит: “А давай вставим.” А потом его второй архитектор и порвет.

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

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

    Если две головы нашего орла находятся “на одной волне”, то на очевидные вопросы они будут отвечать одинаково. С вероятностью, близкой к 100%. А по сложным вполне могут посоветоваться, перекинувшись парой фраз.

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

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

    Но, заметим, и риск неудачи будет ниже, потому что одна голова – хорошо, а две – это два раза хорошо.

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

    По нескольким причинам.

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

    Во-вторых, головы могут будут отлично друг друга верифицировать. То бишь, будет такое парное программирование управление.

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

    Резюмируя. Два человека, играющих одну руководящую роль – это не всегда плохо. :)

  • Голосование по тому, как учить программистов

    Posted on April 9th, 2009 Александр Орлов 16 comments

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

    Давайте в дополнение к обсуждениям еще и проголосуем:

    Какая ВУЗовская программа должна быть у специальности "программист"?

    View Results

    Loading ... Loading ...

    Понятно, что опции у голосования, как обычно, некорректны. :) Но думаю, что тренд мы увидеть сможем.

  • Система компенсаций Джоэла Спольски

    Posted on April 8th, 2009 Александр Орлов 6 comments

    Пару месяцев назад Джоэл опубликовал систему компенсаций компании Fog Creek. А несколько дней назад еще выпустил к ней пояснения.

    Система симпатичная, судя по всему работающая :) , давайте о ней немного поговорим.

    Система. В основу положены три составляющие:

    • Experience – опыт работы в годах (по специальности), причем не только в FogCreek
    • Scope – объем ответственности в компании (от 0 до 6)
    • Skills – навыки и компетенции (от 0 до 6)

    Тарифная сетка рассчитывается следующим образом (Scope и Skills складываются и делятся пополам. Округление идет в большую сторону.):

    Это, в общем, логично. Человек с нулевым опытом работы получает самый низкий тариф. Действительно, мало ли он вообще не сможет работать. В остальном же степень влияния опыта не так велика.

    А вот что действительно сильно влияет, это Scope и Skills. То есть, месседж для сотрудников довольно простой: “берите больше ответственности” и “учитесь, учитесь и учитесь”.

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

    Тем самым менеджеру не приходится отвечать на вопросы “Почему у Васи зарплата на 100 долларов больше, хотя мы оба старшие инженеры”. Описание того, что значат Scope и Skills довольно четкие. Хочешь иметь больший разряд – смотри сюда и думай, что ты будешь делать, чтобы поднять свои Scope и  Skills.

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

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

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

    Резюме. Система крайне симпатичная своей прозрачностью и минимумом неопределенности. Напоследок товарищ Джоэл пишет то, под чем готов подписаться всем чем можно:

    … if you hear a lot of griping about salaries, you shouldn’t look just at your system for paying people. One thing I’ve learned from experience is that happy, motivated employees who are doing work they love and feel they are being treated as adults don’t gripe about money unless their pay is egregiously unfair. If you hear a lot of complaints about salaries, I suspect that’s probably a manifestation of a much bigger disease:

    Your employees aren’t deriving enough personal satisfaction from their work, or they are miserable for other reasons. It takes a lot of salary to make up for a cruel boss or a prisonlike workplace. And rather than adjusting pay, you might choose to focus on some nonmonetary ways to make employees happy. Happy employees make better products and provide better customer service and will make your company successful and profitable. And success allows you to pay workers better. It’s a virtuous circle, and it has worked for Fog Creek.

    (мой вольный перевод)

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

    Ваши сотрудники не получают достаточно личного удовлетворения от своей работы, или они несчастны по другому поводу. Это будет стоить вам много зарплатных денег – компенсировать бессердечного босса или рабочие места, которые похожи на тюрьму. И вместо того, чтобы пересматривать зарплаты, вы могли бы сфокусироваться на неденежных способах осчастливливанья сотрудников. Счастливые сотрудники делают продукты лучше, обеспечивают лучшие сервисы для клиентов, и делают вашу компанию успешной и доходной. А успех позволяет вам платить больше. Это замкнутый круг, и это то, как оно работает в Fog Creek.

  • Гибкие лаборатории в Москве

    Posted on April 7th, 2009 Александр Орлов 5 comments

    31 марта к перрону Ленинградского вокзала бесшумно подошел поезд №63. Двери вагона раскрылись, и на перрон вывалилась толпа сонных пассажиров. Было раннее утро. Моросил мелкий дождичек. Таксисты азартно бубнили “Такси, такси…”

    Пассажиры медленно потекли к метро. Мало кто из них догадывался, зачем в Москву приехал молодой человек в очках, который ничем не выделялся из толпы. Разве что рюкзачком с надписями “Java” и “Solaris”, что выдавало в молодом человеке любителя кофе и Станислава Лема…

    Довольно литературных отступлений. Перейдем к делу. 31 марта в Москве прошла конференция Agile Labs – событие в мире гибких методологий. На конференцию подтянулись главные экспертные силы России и Украины. (Почему-то не подтянулись коллеги из Беларуси, но, надеюсь, на следующий раз подтянутся.)

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

    Read the rest of this entry »

  • Цитата недели (Питер Друкер)

    Posted on April 7th, 2009 Александр Орлов No comments

    Most organizations staff their problems and starve their opportunities. When people begin to start talking about problems, I say, ‘No, wait a minute. Let’s first look at the opportunities.’

  • Как учат программистов в институтах

    Posted on April 6th, 2009 Александр Орлов 47 comments

    Не так давно мне один читатель сайта прислал ссылку на какие-то курсы для программистов. Где говорилось что-то типа “наши выпускники полностью готовы к практической работе”. Во мне все вскипело, и я решил написать про образование программистов. :)

    Рискую навлечь на себя гнев знакомых преподавателей. Но таки напишу. :)

    Как у нас устроена система высшего образования в области программной инженерии? Устроена она странно. (Я выпускался магистром в 2000 году, но по тем признакам, которые до меня долетают, в системе мало что изменилось.)

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

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

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

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

    Перед этим мы занимались языком Паскаль три года в школе. Причем, заметим, это была не школа для даунов. Это была лучшая физ-мат школа Питера. И кафедра в ВУЗе считалась тоже очень достойной. Зачем студенту изучать четыре года Паскаль – не вполне понятно.

    Те, кому интересно, изучали Паскаль с книжечкой за неделю-две. До той степени, что писали резидентные программки, которые обрабатывали какие-то там прерывания в MS DOS. Зачем читать полгода лекции – знает, наверное, только человек, составляющий учебный план.

    Пункт 3. Потом были полгода лекций по C. Дальше пошло интересное. Юниксы, параллельные вычисления, компиляторы, искусственный интеллект,..

    Как это происходило. Преподаватели были двух типов – теоретики и практики.

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

    Надо было принести на зачет распечатку кода компилятора. Тогда преподаватель вдумчиво смотрела в распечатку и задавала страшные вопросы. (Естественно, нам не удалось в последнюю ночь написать компилятор. И поэтому то, что нужна была только распечатка, было очень кстати. Естественно, на вопросах мы плавали, поэтому получили 4. :) )

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

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

    Те, кто хотели, учились самостоятельно. По книжкам, по интернету, и по работе (на 3-4 курсах работали уже все). Те, кто не хотели, учились как-то и тоже получили в итоге диплом.

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

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

    Что происходит после института? Интересующийся человек – продолжает работать сам и занимается практикой и самообразованием.

    Неинтересующийся человек – продолжает работать под контролем. Уже не под контролем института, а под контролем менеджера.

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

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

    (Продолжение следует… Надо же написать, что делать. :) И про плюсы ВУЗов тоже надо написать. :) )

  • Письмо из приемной губернатора

    Posted on April 5th, 2009 Александр Орлов 3 comments

    Давеча получил вот такое письмо:

    From: e.korzhova@gov.spb.ru

    Subject: Награда Губернатора Санкт-Петербурга

    Добрый день, Александр!

    От лица Администрации Санкт-Петербурга  рада Вам сообщить, что Вы удостаиваетесь награды Губернатора Санкт-Петербурга «За вклад в образование счастливых управленческих ресурсов».

    Просим Вас прибыть 5 апреля в 12-00 по адресу Смольный, 4-й подъезд, к. 408 на официальное вручение награды.

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

    Уверена в дальнейшем сотрудничестве.

    С уважением,

    Коржова Вера Павликовна,

    Начальник сектора Интернет Управления информации – пресс-службы Администрации губернатора Санкт-Петербурга

    Тел. приемной 576-60-94

    http://www.gov.spb.ru

    Сердечко заекало, на глаза навернулась счастливая слеза. И только разум противно нудел: Саша, сегодня 1-е апреля…

    P.S. Юля, это был жестокий, нечеловеческий розыгрыш. :)

    Fun