среда, 10 сентября 2014 г.

О выступлениях/презентациях

Презентации бывают:

  1.  "вживую" с сопровождением файла
  2. в виде файлов
  3. динамические (рисуем на доске, показываем демо)
   
Вообще – есть презентации перед аудиторией и есть файлы презентаций.

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

У вас должно быть две версии презентации – одна для показа вживую, другая – для предоставления в качестве файла. 
Файл презентации, которые вы оставляете заказчику (или слушателям выступления) после презентации вживую – это не набор слайдов, которые вы показывали. 
Вы можете либо снабдить каждый слайд комментариями (краткое резюме того, что вы говорили, показывая слайд), либо подготовить вообще отдельную презентацию, либо, в случае с презентацией заказчику, оставлять для ознакомления набор документов (расширенное КП, отчет по итогам реализации этапа и т.д.).

Во время проведения презентации вживую и показа слайдов – никогда не читайте слайды. Переключайте слайды для того чтобы продемонстрировать то что вы говорите, а не для того чтобы вспомнить на какой стадии презентации вы находитесь. (Свою презентацию вы должны знать настолько хорошо, чтобы иметь возможность в любой момент сказать номер слайда, который иллюстрирует ту или иную мысль вашей презентации.)
Во время презентации вживую минимально смотрите на экран. Только когда вам необходимо что-то показать «рукой\указкой». Вы должны смотреть на аудиторию. (Тем более, что это намного безопаснее.)

О выступлениях на форумах/конференциях

Не задавайте вопросов аудитории чтобы услышать ответную реакцию. Вас пришли послушать. Не надо «втягивать в диалог». Кто захочет –сам спросит. (Хотя это утверждение очень спорно, конечно. Во многом зависит от аудитории.)
 Не превращайте свое выступление в обучение. Это учительский прием – «кто из вас знает то, о чем я буду сейчас вам рассказывать», «подведите меня своими ответами к тому, что я скажу дальше».
Не ждите одобрения слушателей/зала. Это очень хочется получить. Но вы здесь не за этим.Не старайтесь понравиться. Если, конечно, речь не идет о девушке в третьем ряду слева с шикарной грудью и потрясающей улыбкой.
Не защищайте свою позицию по вопросу. Просто расскажите о ней. Не надо защищаться. (Лучше обсуждать тему с тем, кто не согласен с вашей позицией. Скорее всего у вас нет готовых ответов. Иначе вы выступали бы не на конференции, а в университетской аудитории.)

О подготовке к выступлению

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

В общем, дело вкуса, темперамента, удобства.

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

Подоготовка материала для выступления состоит из трех основных этапов:


  1. сбор информации
  2. отсечение лишнего (избыточного)
  3. оформления получившегося в "съедобный продукт".


Мудрости от коллег:

От Натальи Желновой (https://www.facebook.com/nzhelnova):

"Поняла одну вещь: чтобы гарантированно объяснить кому-то что-то с помощью человеческого языка, букв и цифр, нужно придерживаться четырех простых правил:

1. Излагаем одну мысль за один раз (у доклада должна быть главная тема, и она должна быть раскрыта).
2. Главная мысль транслируется дважды: в начале и в конце доклада.
3. Цифры не должны появляться более 3-х раз в течение всего доклада.
4. Букв не должно быть слишком много (не более 5 строчек на один тезис)."


Очень интересно у Стаса Фомина:

Конференции. Памятка докладчику.





вторник, 29 июля 2014 г.

Правила управления командой



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

Правила создания команды

  1. Если собираешь команду, то должен четко представлять - зачем. Потому что первое что ты должен сказать каждому участнику команды - "зачем мы здесь". (Целью создания командыможет быть не только реализация конкретного проекта)
  2. Ты должен сам назначить правила. Но по этим правилам должен играть и сам. Они потом могут измениться. Но правила быть должны.
  3. Ты должен сам представлять команде нового участника. Только сам. Он потом скажет что-то о себе сам, но представить должен ты.

Правила управления командой

  1. Помни что ты не начальник и не директор. Ты равный среди равных. Помни об этом во время обсуждений. Иначе тебя будут бояться.(Если на обсуждениях кто-то думает о том, что его "вообще-то могут уволить", то такое обсуждение не будет продуктивным.)
  2. Помни что ты руководитель команды Помни об этом во время принятия решений. Тогда в тебе будут уверены. (Ты можешь быть нерешительным, сомневающимся, кусать галстук и грызть ногти.  Можешь сомневаться даже в том, что Земля вращается вокруг солнца. До того момента, пока ты не озвучил команде свое решение. После - сомнений быть не должно. Остается только признавать СВОИ ошибки.)
  3. Твоя команда - это твоя "семья". Ты должен знать всё о каждом члене команды. Но никогда этого не показывать. (Знание того, что происходит в жизни участников команды поможет тебе правильно распределять задачи и нагрузку. Команда - это, конечно, не мафия. Но некоторые принципы построения мафии очень полезны.)
  4. Главное в команде - чувство уверенности каждого в том, что он "среди своих". Он имеет право ошибаться, имеет право рассчитывать на помощь коллег. Но не имеет права не предложить свою помощь другим, если он может помочь. Создай такую атмосферу. Если кто-то из участников команды не вписывается в такую атмосферу - избавься от него (с ним и дальше можно будет работать, но участником команды он уже не будет).

Ты, команда и внешний мир 

  1. В команде должна быть особая атмосфера. Несколько отличная от остального мира. Работа в команде должна быть и радостью, и ответственностью. Поэтому наличие определенных "ритуалов" - очень неплохой способ поддерживать в участниках ощущение сплоченности. (Сплоченность не "против других", "элитарность" не ради значка или флажочка.)
  2. Ты не оберегаешь команду от внешнего мира - ты создаешь условия чтобы команда работала спокойно. Чтобы можно было сосредоточиться на работе, а не отвлекаться на "политику компании", убеждение завхоза в необходимости приобретении нормального рабочего стола и т.д.
  3. Если что-то "не получилось" с результатами, кто виноват? Виноват ты! Выигрывает команда, проигрывает тренер. Ты - тренер. (Внутри можно будет "разобрать полеты", определить "место и время" косяков. Но не назначая виноватых. Потому что отвечаешь за результат именно ты.)

пятница, 25 июля 2014 г.

Ха, да это точно. Просто "классика жанра"

Пока будут чередоваться краткие описания ситуаций и просто фразы, которые описывают ситуации в самом "концентрированном варианте". Потом попробую "причесать".

1. "Заказчик сам не знает чего хочет". (причем этот вариант отличается от следующего по списку)
2. "Заказчик не может внятно объяснить чего хочет"
3. Заказчик: "У меня есть уже задание, так что не нужно по пустякам отрывать моих сотрудников от работы"
4. Заказчик: "Слушайте, мне ваше тз сейчас читать некогда. Но вы же все правильно поняли? Так что давайте."
5. Разработчик архитектуры в команде, глядя на ТЗ: "И что? Ты сам все это писал? Ну-ну ..."
6. Молодой программист: "Аааа! Все понятно. Хорошо, сделаем."
7. Руководитель проекта на вопрос о сроках: "Скорее всего, если подумать, то не уложимся при любом раскладе"
8. Заказчик на первом демо: "Здорово! И это тоже можно?" Заказчик через 2 месяца: "Слушайте, я же вам в самом начале говорил... Вы вообще меня не слушали что ли?"
9. Мы - команда и решения будут приниматься коллективно. Кстати, скажи чтобы этот урод из логистики мне больше не писал. Общение с заказчиком должно быть централизованным.
10. Заказчик хочет не то, что ему на самом деле нужно (спасибо Анатолию Белайчику за подсказку)
11. Команда проекта не обладает полной информацией по проекту. Где-то "недосказаны цели", где-то - принято решение, но не все участники в курсе.

12. Дежурный вопрос "РП" - "Вася, я прислал тебе задачку. Сколько времени займет?"
       Дежурный ответ "программера" - "Я не смотрел еще. Погоди, ща гляну."
В результате получаем: "Эту фигню надо дня 2 колбасить. Хотя они вообще-то сами козлы. Так что можно и за пару часов сделать. Но по уму весь этот кусок хорошо бы переделать, а-то периодически будем на такие косяки натыкаться."


(продолжение следует)

Что нам ждать друг от друга? (Заказчик проекта и Команда реализации)

В этом месте попробую начать собирать для себя (ну может и другим понадобится) ожидания Заказчиков и Команд по реализации.
И то, чего ждать не стоит.

Вообще-то, правильнее будет такое распределение ролей: "Заказчик - Руководитель проекта - Команда разработчиков".

Итак что ждать и чего ждать не надо.
Никакого позитива и вдохновляющих цитат - только жесткий треш и мизантропия. :)

Заказчику от команды реализации:
  1. Не стоит ждать от исполнителей понимания своих пожеланий к продукту проекта. У исполнителя свои пожелания, свои тараканы. Он, вообще-то, зарабатывает на вас.
  2. Система, которую вам передают в качестве продукта проекта, скорее всего не будет задокументирована. Половина (в лучшем случае) ваших обсуждений не будут задокументированы. И историю проекта вы все равно не восстановите.
  3. Вы думаете, что именно вы управляете тем, как все происходит? Нет. Это разработчики "рулят" процессом". И они сами решают- в какую сторону повернуть. Если зазеваетесь, то получите приложение для андроида с игрушками. Вместо системы управления проектами клиента.
  4. Если в ценовом предложении пишется "4 часа работы аналитика", то это означает, что руководитель проекта пару часов покурит над вашей задачей. Не ждите что в эти "4 часа аналитика" над вашей задачей будет думать какой-то там аналитик. Никаких аналитиков нет - это миф! Два литра пива руководителя проекта с программером - это и есть описанные в КП "4 часа работы аналитика".
  5. Вам кажется, что вы максимально честны с разработчиком, но это не так. Вы ему постоянно что-то не договариваете. Даже сами не замечая этого.  И не будьте "максимально честны". Просто отвечайте на вопросы, которые вам задают.


Команде реализации проекта от заказчика и руководителя проекта

  1. Заказчик ждет "вы все сами знаете", раз он вам деньги платит. Так что вы должны заранее запастись мелофоном и специалистом по документированию всех переговоров. Переспрашивайте каждый раз. По несколько раз. Задавайте вопросы "почему", "зачем" и "кто это делает" пока вас не выгонят из комнаты, не заблокируют ваши письма и номер телефона. После чего дайте Заказчику отдохнуть какое-то время, заведите новую почту, включите дополнительную симку и снова спрашивайте.
  2. Заказчик знает, что то, что вы сделали - это совсем не то, что он хотел. Так было, так есть и так будет. Заказчик всегда недоволен.
  3. Руководитель проекта никогда не говорит вам всей правды. Он никогда вам ее не скажет. Либо он бережет вашу психику, либо ему очень стыдно за то, что вообще происходит в проекте. (скорее всего - и то, и другое)
  4. Вам поставили сроки реализации? Это не те сроки, которые указаны в договоре с заказчиком. Там указано совсем другое число. Но спрашивать с вас будут именно то,что "озвученно".

Руководителю проекта от команды разработчиков

  1. Заказчик тебя обманывает! Он хочет чтобы ты ему гарантировал написание новой операционной системы за деньги, которые могут просто покрыть расходы на написание приложения для телефона. Причем предоставил ему первую версию через месяц. И тогда он подумает - стоит ли за это платить?
  2. Программист тебя обманывает! Он напишет то, что ты от него хочешь не за месяц,а за неделю. Просто ему сейчас это не очень интересно.
  3. Тобой всегда  все будут недовольны. Просто потому что ты "здесь, под рукой". И тобой можно быть недовольным без опасения "навлечь на самого себя гнев начальства", без вариантов быть назначенным виновным в провале, ... Ты -удобная мишень. Ты-виноват! 
  4. Команда всегда будет смотреть на тебя как на "несправедливо назначенного", если ты назначен. И всегда будет смотреть на тебя как на лидера, только в одном случае - если ты действительно лидер!
Руководителю проекта от заказчика

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









(продолжение следует)




суббота, 28 июня 2014 г.

Взгляд со стороны "противника"

Почему мы часто не понимаем тех, с кем сидим за одним столом переговоров?

Потому что:

"Заказчик не всегда все понимает ..."
"Ему уже вчера было нужно. А чего же он только сегодня об этом ..."

А у нас ведь:

"Свежие идеи и мы выстраиваем команду для того чтобы .."
"Архитектура новых приложений должна быть совсем другой."

Как-будто мы - противники.

Заказчик и разработчик.
РП и команда.
Программер и тестер.

А если попробовать посмотреть на ситуацию с "его" стороны?

Не один раз посмотреть. И увидеть что: "ладно, хорошо, был не прав, признаю".

А в систему это привести.

Смотреть всегда и с другой стороны. В смысле - и с другой стороны тоже.

Не в смысле постоянных "демо" с заказчиком.

И не в смысле "думания за него".

А просто принимая его позицию, как возможную.



вторник, 24 июня 2014 г.

Необходимо и достаточно (заметки на полях)

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

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

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

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

суббота, 3 мая 2014 г.

Если ты ... (не очень подробные заметки на полях)

Если ты…(Внедряешься внутрь?)

Если ты – внутренний внедренец, то при составлении документов ты должен быть осторожен, описывая потребности стейкхолдеров в функциональности системы. Участие в «политических играх» не входит в твои «интересы». Эти описания ты должен делать для себя. Т.е. это будут не документы, а «заметки для внутреннего пользования». Но эти заметки все же должны существовать, чтобы ты сам имел возможность к ним обратиться в случае «повторного обращения» заказчика или если придется объяснять определенные нюансы разработки твоей команде.

Вывод: учти, что тебя будут ежедневно встречать в коридоре те самые пользователи, для которых ты внедряешь эту самую систему и абстрактная «обратная реакция» превратиться для тебя в совершенно конкретные высказывания по поводу «а на фига было вообще все это затевать?». Готовь крепкую нервную систему к очередному испытанию (слабонервных надо было удалить еще в самом начале J). Главное- будь четко уверен в необходимости того, что ты делаешь.

Если ты … (Ты - эксперт/консультант? Ух ты!!!)

Если ты «консультант по системе», то радостно наплюй на все возможные подводные камни проекта и радостно разъясняй людям «преимущество определенного покроя костюма» и невозможность «пришить вторую пуговицу». Ты специалист в этой конкретной системе и лучше тебя ее знают вообще-то не так много людей, а уж про знания системы теми людьми, которые гордо именуют себя "заказчиками", ты просто деликатно молчишь. Главная опасность для тебя - фраза "это противоречит логике системы". И ты можешь даже вслух ее не произносить (сдерживаться), но если она звучит у тебя в голове - ты в опасности. Ты сможешь скатиться в общение на профильных сайтах, думать терминами и логикой системы\продукта и в итоге твой продукт/система станут для тебя "системой ценностей и взглядом на жизнь".
Вывод: читай больше про другие системы\продукты\варианты. И даже если работа с данным продуктом стала для тебя стилем жизни, а ее (жизни) смыслом стала борьба с другими продуктами\системами - все равно изучай все новое. Ты хотя бы будешь знать врага в лицо.



Если ты ... (Ты - руководитель проекта. И теперь многое будет по-другому)


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

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

Если ты…. (Ты – аналитик в команде разработчиков? Поздравляю J)

Если ты «аналитик» – наплюй на ресурсы, бюджеты, сроки и думай о потребностях, значимости, применимости, вариантах использования. Стать действительно авторитетным аналитиком в сложившейся команде очень непросто. Ведь ты должен общаться с разработчиками «на их языке», т.е. они должны понимать тебя, а в большей степени ты должен понимать их. При этом ты должен абсолютно четко понимать – чего хочет конкретный руководитель конкретного подразделения, конкретный пользователь в каждом конкретном случае. И понимая все это, доказывать (будучи членом команды) разработчикам необходимость «реализовать именно в таком сценарии».
А иметь авторитет в команде разработчиков тебе, как аналитику, просто необходимо. Иначе ты будешь вынужден постоянно обращаться к «административному ресурсу» в виде руководителя проекта для решения вопросов.
Вывод: Четко зная, что тебе необходимо в качестве функционала, говори с программерами – они вообще-то хорошие люди. Поймут и простят, если что.  Говори с ними, показывая им на схемах – что пользователи хотели бы. Но перед тем, как начинать разговор с ними – максимально подробно для самого себя уясни что именно требуется от системы. Они эксперты в свойствах системы и коде, ты – эксперт в требованиях. Говори как эксперт с экспертом.