Тема:
ПРОГРАММИСТ-МЕНЕДЖЕР: КАК
УСИДЕТЬ НА ДВУХ СТУЛЬЯХ


Докладчик: Александр   Калугин

                                 1
Здрасьте, это я!

                   к.ф.-м.н., PMP


                                   Менеджер менеджеров




                                  Автор
                                  http://pmarcor.com/




                     Соорганизатор
                     http://pmsamara.com/
О чем речь?

• Обобщение опыта

• Совмещение ролей
  менеджер
  проекта/дев-лид или
  менеджер-проекта/
  архитектор.
• “Agile” процесс.
• Небольшой проект.
• «Переходные
  процессы».
• Уникальные знания.
Достоинства


              – Больше информации
                о состоянии проекта.
              – Больше пространства
                для маневра.
              – Меньше overhead на
                коммуникацию.
              – Мотивация.
Особенности:

 • Взаимодействие с командой.
 • Коммуникация с заказчиком.
 • Управление временем и
   приоритетами.
1. Команда
Где менеджер?




                Где дев-лид?
1. Команда

• Свой или чужой?
• Половинка дев-лида.
• «А крэш-то Вася
  посадил...»
• Оценка происходящего
• Разрешение
  конфликтов
Что делать?
              1. Определить роль
                – Зачем так? Какова цель?
                – Какие границы вашего
                  участия как программиста?
                – Расскажите команде.
                – Будьте честны.
              2. Принять сложность
                положения и управлять
                ожиданиями команды.
                – Это сложная роль.
                – Вам требуется время, на
                  менеджерские задачи.
                – У вас ограниченные ресурсы.
                   • С чем вы точно
                     справитесь?
                – Вы можете «сажать баги» и
                  совершать ошибки.
Что делать?
              3. Снижайте нагрузку:
                – Ограниченный кусок кода.
                – Делегируйте принятие
                  технических решений.
                – Стройте иерархию в
                  команде.
              4. Разные Шляпы
                – «Кто я сейчас? Менеджер
                  или программист?»
                – Не «рубите с плеча».
                – Добросовествно
                  выполняйте свою часть
                  работы, как программист.
                – Конструктивно
                  воспринимайте критику.
Что делать?

              5. Больше чем дев-лид
                – Вы руководите не только
                  программистами.
                – Разрешение
                  конфликтов/коммуникации
                  между командами
                   • Вы не программист
                   • Но у программистов
                     теперь нет дев-лида.
                – Не переходите границы
                  вашей зоны
                  ответственности в коде
                – Не злоупотребляйте ролью
                  менеджера.
Внешняя коммуникация
2. Внешняя коммуникация

• «Такой клѐвый
  синхрофазотрон!»
• Обидеть автора
  каждый может.
• «Гениальная идея!»
• Делать навека…
• Блин... опять
  все переделывать…
• «Что зря болтать? Либо работает,
  либо нет».
Что делать?
              • Требуется двойное
                время.
              • Технические вопросы –
                письменно.
              • Вы «всего лишь»
                менеджер –
                посоветуйтесь с
                командой.
              • «Гамбургский счет» -
                на стороне заказчика.
              • «А если бы это кодил
                не я?»
              • Покажите другу.
              • За вас никто не скажет.
Cовмещение ролей.
Управление временем
Специфика времени
 Менеджер                  Программист
• Длинный todo list.        • Более крупные задачи.
• Более четкое/мелкое       • Более самостоятельны
  расписание.                 задачи.
• Меньше творчества.        • Требуется состояние потока.
• Зависимость от других.    • «Контекст кода».
• Много взаимодействий с    • Технологические риски.
  другими.                  • Качество продукта/кода.
• Специфический контекст
  управления проектом.
• Проектные/
  организационные риски.
• Уровень сервиса
Как организовать время
                 • Задачи крупнее
                    – Предлагайте дерево
                      решений/альтернативные пути
                    – Приучайте к
                      самостоятельности
                 • Структурированные
                   коммуникации
                    – Выделенное время (совещания
                      и ограничение по времени)
                    – Иерархия в команде.
                    – Помидоры
                 • Используйте
                   неравномерность загрузки
                    – Задачи менеджера в начале и
                      финале проекта
                    – Разработчик в середине
Как организовать время
• Задачи, которые лучше не решать как программисту:
   – Задачи без оценки,
   – На интуицию,
   – Исследования.


• Выбирайте
   – Дисциплина. Нет промедлениям.
   – Есть задачи менеджера, а есть задачи
     которые могут сделать другие программисты.
   – Уровень сервиса может повышаться бесконечно.
   – Архитектуру всегда можно сделать лучше.


• Планируйте собственные задачи как менеджера
   – Менеджеру также требуется состояние потока.
   – Требуется время на мониторинг.
   – Требуется время на корректирующие воздействия
Спасибо!

Калугин Александр
 info@pmarcor.com
http://pmarcor.com/
http://pmsamara.com
     @pmarcor

 Ваши вопросы?

Прагматик. Калугин. Программист-менеджер

  • 1.
    Тема: ПРОГРАММИСТ-МЕНЕДЖЕР: КАК УСИДЕТЬ НАДВУХ СТУЛЬЯХ Докладчик: Александр Калугин 1
  • 2.
    Здрасьте, это я! к.ф.-м.н., PMP Менеджер менеджеров Автор http://pmarcor.com/ Соорганизатор http://pmsamara.com/
  • 3.
    О чем речь? •Обобщение опыта • Совмещение ролей менеджер проекта/дев-лид или менеджер-проекта/ архитектор. • “Agile” процесс. • Небольшой проект. • «Переходные процессы». • Уникальные знания.
  • 4.
    Достоинства – Больше информации о состоянии проекта. – Больше пространства для маневра. – Меньше overhead на коммуникацию. – Мотивация.
  • 5.
    Особенности: • Взаимодействиес командой. • Коммуникация с заказчиком. • Управление временем и приоритетами.
  • 6.
  • 7.
    1. Команда • Свойили чужой? • Половинка дев-лида. • «А крэш-то Вася посадил...» • Оценка происходящего • Разрешение конфликтов
  • 8.
    Что делать? 1. Определить роль – Зачем так? Какова цель? – Какие границы вашего участия как программиста? – Расскажите команде. – Будьте честны. 2. Принять сложность положения и управлять ожиданиями команды. – Это сложная роль. – Вам требуется время, на менеджерские задачи. – У вас ограниченные ресурсы. • С чем вы точно справитесь? – Вы можете «сажать баги» и совершать ошибки.
  • 9.
    Что делать? 3. Снижайте нагрузку: – Ограниченный кусок кода. – Делегируйте принятие технических решений. – Стройте иерархию в команде. 4. Разные Шляпы – «Кто я сейчас? Менеджер или программист?» – Не «рубите с плеча». – Добросовествно выполняйте свою часть работы, как программист. – Конструктивно воспринимайте критику.
  • 10.
    Что делать? 5. Больше чем дев-лид – Вы руководите не только программистами. – Разрешение конфликтов/коммуникации между командами • Вы не программист • Но у программистов теперь нет дев-лида. – Не переходите границы вашей зоны ответственности в коде – Не злоупотребляйте ролью менеджера.
  • 11.
  • 12.
    2. Внешняя коммуникация •«Такой клѐвый синхрофазотрон!» • Обидеть автора каждый может. • «Гениальная идея!» • Делать навека… • Блин... опять все переделывать… • «Что зря болтать? Либо работает, либо нет».
  • 13.
    Что делать? • Требуется двойное время. • Технические вопросы – письменно. • Вы «всего лишь» менеджер – посоветуйтесь с командой. • «Гамбургский счет» - на стороне заказчика. • «А если бы это кодил не я?» • Покажите другу. • За вас никто не скажет.
  • 14.
  • 15.
    Специфика времени Менеджер Программист • Длинный todo list. • Более крупные задачи. • Более четкое/мелкое • Более самостоятельны расписание. задачи. • Меньше творчества. • Требуется состояние потока. • Зависимость от других. • «Контекст кода». • Много взаимодействий с • Технологические риски. другими. • Качество продукта/кода. • Специфический контекст управления проектом. • Проектные/ организационные риски. • Уровень сервиса
  • 16.
    Как организовать время • Задачи крупнее – Предлагайте дерево решений/альтернативные пути – Приучайте к самостоятельности • Структурированные коммуникации – Выделенное время (совещания и ограничение по времени) – Иерархия в команде. – Помидоры • Используйте неравномерность загрузки – Задачи менеджера в начале и финале проекта – Разработчик в середине
  • 17.
    Как организовать время •Задачи, которые лучше не решать как программисту: – Задачи без оценки, – На интуицию, – Исследования. • Выбирайте – Дисциплина. Нет промедлениям. – Есть задачи менеджера, а есть задачи которые могут сделать другие программисты. – Уровень сервиса может повышаться бесконечно. – Архитектуру всегда можно сделать лучше. • Планируйте собственные задачи как менеджера – Менеджеру также требуется состояние потока. – Требуется время на мониторинг. – Требуется время на корректирующие воздействия
  • 18.