Www.dobryakov.com Формирование и управление командой разработчиков twitter: @g_dobryakov Григорий Добряков.

Презентация:



Advertisements
Похожие презентации
И ТЕСТИРОВАНИЯ ПРОЕКТА C ДЛИННЫМ ЖИЗНЕННЫМ ЦИКЛОМ ОРГАНИЗАЦИЯ РАЗРАБОТКИ Григорий UMI.CMS.
Advertisements

Продажи при помощи эмоционального интеллекта Сергей Рыжиков Генеральный директор.
РАСПРОСТРАНЕННЫЕ ОШИБКИ В ИДЕОЛОГИИ, ПЛАНИРОВАНИИ И ПРОВЕДЕНИИ ТЕСТИРОВАНИЯ 2.
Маркетинговый аудит сайтов mdconsulting.ru.
Сервис – это ваше важнейшее конкурентное преимущество Внедрение сервисных технологий и развитие клиентоориентированного маркетинга в вашей компании. Мы.
Первая презентация для инвестора. О чем нужно сказать Список слайдов Название (титульный слайд) Проблема Решение Ноу-хау (ключевая технология) Бизнес-модель.
1. Система менеджмента качества помогает эффективно расходовать ресурсы и зарабатывать больше денег. Это лучший способ добавить.
Как вести стаю за собой? Как пасти котов, часть 3.
Создание проектов в интернет. Разработка сайтов. Лекция 4. Докладчик: Калимуллин К.Г. Генеральный директор ООО «Группа Компаний ИТМ»
Лидерами рождаются Менеджерами становятся Системный подход к выращиванию менеджеров Юрий ШИЛЯЕВ, Wargaming.net.
Система управления проектами. Опыт разработки и внедрения Юрий Шиляев директор Artics-Минск.
Эффективный сайт для бизнеса, каким он должен быть? Анара Акишева исполнительный директор «BK.KZ Studio» - Требования к созданию корпоративных сайтов -
EXtreme Programming XP Тема 1. XP Экстремальное программирование небольших и средних неясных и быстро меняющихся требований Экстремальное программирование.
Что такое корпоративный портал и почему он нужен Вашей компании? Богомолов Максим Генеральный директор ООО «2Б-Дизайн»
В двух словах Михаил Смирнов
OpenGL и Direct3D сравнение стандартов Выполнил: Пенкин А. Группа И-204.
Как воспитать программиста Несколько теоретических и три практических совета по воспитанию эффективного программиста Михаил Пайсон
РАЗВИВАЮЩАЯСЯ ОРГАНИЗАЦИЯ. 2 ОПРЕДЕЛЕНИЕ СЛОВ 1. Человек 1. Человек 2. Организация 2. Организация 3. Эгрегор 3. Эгрегор 4. Развитие 4. Развитие.
Предварительный анализ проекта Ваши перспективы в бизнесе.
Транксрипт:

Формирование и управление командой разработчиков Григорий Добряков

Infobox: руководитель команды разработчиков. Издательский дом SPN: руководитель команды разработчиков. Компания Artics: руководитель департамента разработки. Юмисофт: технический директор и менеджер по развитию. Paymico: основатель консалтинговой компании. Григорий Добряков

Иллюзия #1 Команда – это как набор юнитов в игре-стратегии. Или как набор шахматных фигур. Григорий Добряков

Команда – это набор юнитов в игре-стратегии? Обустраиваем базу Собираем войска Выделяем всех мышкой И тут… Григорий Добряков

Команда – это набор шахматных фигур? Изучаем известные партии и стратегии Расставляем фигуры Приготовились сделать шах и мат Как вдруг… Григорий Добряков

Реальность #1 Юниты ведут себя не как положено: болеют, увольняются, спорят между собой, не хотят идти вместе, хотят заниматься не теми делами которые вы им поручаете. Григорий Добряков

Иллюзия #2 Наберём только лучших. Григорий Добряков

Наберём только лучших? Их нереально долго искать; Задачи разного уровня интереса итупизны – нужны люди разной квалификации; Рыночный баланс: ваш конкурент обогнал вас на обезъянках с клавиатурами. Григорий Добряков

Реальность #2 Команда из одних только одинаковых профессионалов будет не работать, а меряться п..ськами. Нужны разные люди. Григорий Добряков

Иллюзия #3 Наберём молодых творцов, дадим им мало денег, но поставим сверхзадачу и они будут работать за мега-идею. Григорий Добряков

Наберём творцов за идею? Пренебрежение к готовым решениям; Изобретение велосипеда; Повторение известных решений, но с худшим качеством; Не способны принимать критику, рефакторить код, чинить баги, тестировать. Григорий Добряков

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

Иллюзия #4 Оценка задачи по трудоёмкости одинакова для всех разработчиков и неизменна во времени. Григорий Добряков

Реальность #4 Разные люди, даже коллеги, будут выполнять задачу разное время. Завтра будут другие условия в проекте. Завтра будут другие условия в голове у разработчика. Григорий Добряков

Иллюзия #5 Тестовое задание – это круто. На основе тестовых заданий можно нанимать людей. Григорий Добряков

Реальность #5 Тестовое задание – это не круто. Гораздо важнее социальная открытость: Почему? Как социальная открытость относится к факторам реальной работы? Григорий Добряков

Реальность #5 Вспомним рекомендации Agile: Парное программирование; Рефакторинг; Тесты до написания кода; Погружение в предметную область и коммуникация с заказчиком; Живой обмен информацией важнее бюрократии. Григорий Добряков

Реальность #5 Тестовое задание – это не круто. Гораздо важнее социальная открытость: Открытость по отношению к коллегам = парное программирование. Григорий Добряков

Реальность #5 Тестовое задание – это не круто. Гораздо важнее социальная открытость: Открытость к критике = рефакторинг, тесты до написания кода (TDD). Григорий Добряков

Реальность #5 Тестовое задание – это не круто. Гораздо важнее социальная открытость: Открытость к людям других профессий = взаимопонимание и коммуникация с менеджерами и сейлзами. Григорий Добряков

Реальность #5 Тестовое задание – это не круто. Гораздо важнее социальная открытость: Открытость к внешнему миру = погружение в предметную область заказчика. Григорий Добряков

Вопросы для собеседования: Как узнать социальную открытость? В каких онлайн-сообществах ты участвуешь; Какие книги по профессиональной сфере ты прочитал за последний год; Как ты отдыхаешь; Григорий Добряков

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

Ошибки найма: Социопаты. Люди, не способные общаться, и в коде будут писать непонятную фигню. Глупые алгоритмы, дурацкие названия переменных и т.д. Григорий Добряков

Ошибки найма: Люди с потерянной обратной связью. Программист говорит я программирую для себя. Потребитель покупает ловушки для тараканов вместо хлорофоса. Ему пофиг внутренняя суть решения. Ему подавай приятный внешний вид, скорость работы интерфейса и решение задач. Григорий Добряков

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

Ошибки найма: Любители самообучаться. Будут учиться вместо работы. Григорий Добряков

Программисты и обратная связь. Оффлайновый мир насыщен обратной связью. Мама приходит на плач ребёнка Девушка реагирует на ваши ласки На клавиатуре айпада трудно быстро работать вслепую. Телефонные гудки, дверной звонок, сигналка автомобиля… Григорий Добряков

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

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

Двигаем слабое звено. Григорий Добряков Высокая квалификация Слабое звеноЛидер Низкая квалификация Мальчик для битья Рабочая лошадка Низкая мотивацияВысокая мотивация

Закон сохранения работы. Или закон накопления усталости в системе. Сначала у нас дешёвые и не очень хорошие программисты; Мы сделаем бизнес, у нас появится оборот; Появится лишняя копеечка – наймём профессионалов; И с этого момента у нас всё станет хорошо. Григорий Добряков

Закон сохранения работы. Почему нельзя всё исправить потом? Любая новая задача требует модификации старых механизмов; С течением времени любая оценка трудоёмкости начинает включать в себя время на исправление ошибок. Григорий Добряков

Закон сохранения работы. Почему нельзя всё исправить потом? T_estimate = T_solve + T_bugfix Оценочное время выполнения задачи = Время решения + Время исправления неожиданных багов. T_solve оценить легко. T_bugfix оценить нельзя! Вы теряете возможность адекватно планировать. Григорий Добряков

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

Какие проекты умрут? Бюджет, сроки и цена вызывают беспокойство? Ты специалист, вот поэтому я и поручил это тебе! Не говори о процессе, говори о результате; Не поднимай проблему, если у тебя нет решения; Сначала быстро сделаем и продадим, а потом подумаем. Григорий Добряков

Какие проекты выживут? Никто не берёт обязательств без обсуждения рисков; Никто не строит чётких календарных планов (указываются вероятностные рамки); Людей благодарят за высказывание опасений, а не отмахиваются от них; Новые задачи не ставятся, пока неясны сроки по предыдущим; Приоритет на отказ от задач, а не желание больше напихать в итерацию. Григорий Добряков

Чего хотят менеджеры? С какими предложениями большинство из нас приходит к руководству? Увеличение дохода Сокращение производственных издержек Улучшение продуктивности Ускорение выхода продуктов на рынок Больший объем продаж за счет внедрения дополнительных инструментов Сокращение времени принятия решений с помощью автоматизированных отчётов Уменьшение расходов на службу поддержки Повышение степени удовлетворенности клиентов Сокращение фонда заработной платы. Григорий Добряков

Что на самом деле хотят менеджеры? Кресло, макбук, секретаршу Григорий Добряков

Подходим к менеджеру: Чтобы менеджер тебя не послал, говори не о космических технологиях, а о простых земных ценностях. Григорий Добряков

Как управлять проектом при недостатке ресурсов? Наиболее глупое, что вы можете сделать, это выкинуть все методики и начать рвать ж*пу; Кризис-менеджмент и прочая ерунда; Менеджер-спаситель, который всех пинает и достигает результатов; Методики для того и делались, чтобы вытаскивать проекты из самых трудных ситуаций; А команда в итоге перегорит.. Григорий Добряков

Как управлять проектом при недостатке ресурсов? Самое главное зло при недостатке ресурсов – это человек, который об этом не в курсе. А почему вы мне раньше не сказали? Где я теперь найду ещё деньги на доплату? Как я теперь перенесу сроки? Не стесняйтесь открыть рот и заявить о задержке. Григорий Добряков

Как управлять проектом при недостатке ресурсов? Планируйте не то, что хотелось бы сделать, а то, без чего нельзя обойтись.. Это сейчас не нужно; Это сделаем позже; Это слишком трудоёмко и долго; Откладывать задачи – не стыдно. Григорий Добряков

Как управлять проектом при недостатке ресурсов? У вас уже не будет никакого потом. Сегодняшний день не повторится; Завтра будут новые задачи; Послезавтра будут новые сотрудники; Вы вернётесь к этому коду только когда потребуется его полностью переписать. Григорий Добряков

Как управлять проектом при недостатке ресурсов? Используйте таск-менеджер с очередью задач. Никаких приоритетов; Никакой важности или неважности; Никакой срочности или несрочности; Только однозначная, очевидная очередь. Григорий Добряков

Модель параллельной разработки Каждой фиче – своя ветка (branch); В релиз собираются только законченные и протестированные ветки; Стажёрам - каждому свою ветку, чтобы потом не выпиливать их говнокод из ядра системы. Григорий Добряков

Спасибо за внимание! Жду вас в консалтинговой компании Paymico :) Григорий Добряков, twitter: g_dobryakov Григорий Добряков