agilebasecamp 2013 - start up and get done

31
Start Up and Get Done How to build success product in time. Максим Климишин CTO в ZAKAZ.UA @maxmaxmaxmax

Upload: maksym-klymyshyn

Post on 15-Jan-2015

325 views

Category:

Business


0 download

DESCRIPTION

Небольшой доклад о проблемах и решениях при разработке продуктов, управлении командой.

TRANSCRIPT

Page 1: AgileBaseCamp 2013 - Start Up and Get Done

Start Up and Get DoneHow to build success product in time.

Максим КлимишинCTO в ZAKAZ.UA

@maxmaxmaxmax

Page 2: AgileBaseCamp 2013 - Start Up and Get Done

Немного личного

10 лет в IT

программист, совладелец, лид, менеджер

блоггер, организатор конференций

активист OpenSource

Page 3: AgileBaseCamp 2013 - Start Up and Get Done

О чем это я

Page 4: AgileBaseCamp 2013 - Start Up and Get Done
Page 5: AgileBaseCamp 2013 - Start Up and Get Done

Что есть на старте?

Page 6: AgileBaseCamp 2013 - Start Up and Get Done

НАДО СОЗДАТЬ ПРОДУКТ

Page 7: AgileBaseCamp 2013 - Start Up and Get Done

Ограничения

Дата релиза

Платформа/технологии

Ожидаемая нагрузка

Page 8: AgileBaseCamp 2013 - Start Up and Get Done

Команда

На вид По факту

поехали

Page 9: AgileBaseCamp 2013 - Start Up and Get Done

По факту

За одну итерацию не сработаешься

Понять интересы и «темперамент» разработки занимает время

Притирку и заниженную продуктивность не учли при планировании скоупа

Page 10: AgileBaseCamp 2013 - Start Up and Get Done

Чего хотим добиться?

Page 11: AgileBaseCamp 2013 - Start Up and Get Done

Идиллии

Page 12: AgileBaseCamp 2013 - Start Up and Get Done

Доставить вовремя

Сплотить(ся)

Впечатлить UX-м

Краааасивый Рабочий код

Легко масштабироваться

Цели лида

Page 13: AgileBaseCamp 2013 - Start Up and Get Done

Чего мы не хотим?

Page 14: AgileBaseCamp 2013 - Start Up and Get Done

ПРОБЛЕМ с product owner-оm

Page 15: AgileBaseCamp 2013 - Start Up and Get Done

Типичные проблемы

Задержки в коммуникациях - особенно с американскими заказчиками

Один PO на 10-ть проектов - с трудом удерживает контекст одного конкретного проекта

Большая команда “менеджмента”: PO, CTO, VP, архитектор, маркетолог - избыточные митинги

Page 16: AgileBaseCamp 2013 - Start Up and Get Done

Решения

Самому понять цели и стратегию разработки продукта

Углубиться в приоритеты и детали реализации

Встречи по узким темам минимальным составом (разделить технические и маркетинговые)

Выбрать правильного ПО (вместо всего выше)

Page 17: AgileBaseCamp 2013 - Start Up and Get Done

Наархитектить

Page 18: AgileBaseCamp 2013 - Start Up and Get Done

Что обычно тупит

Синхронная архитектура - когда “тяжелые” задачи работают внутри слоя отображения

Dog-pile effect, “тяжелые” задачи кешируют одновременно

Неразумное использование хранилищ - например PgSQL как Key/Value или MySQL для EAV

Запросы к базе данных в циклах, автоматически генерируемые запросы, third-party API

Page 19: AgileBaseCamp 2013 - Start Up and Get Done

Очень простой рецепт

Оставьте синхронным только front-end - отображение для пользователя

Как можно больше задач обрабатывайте асинхронно

PubSub, MQ - это все создано для простых и рабочих систем

Page 20: AgileBaseCamp 2013 - Start Up and Get Done

Все для людей

Просите делать презентации по архитектурным предложениям или изменениям

Прежде, чем внедрять новую технологию лучше внимательно изучить отзывы в интернете

Метрики, метрики, метрики - очень хороший аргумент для новой технологии

Page 21: AgileBaseCamp 2013 - Start Up and Get Done

Безопасность

Page 22: AgileBaseCamp 2013 - Start Up and Get Done

О чем это?

Не надо хранить пароли в открытом виде, в виде md5 без salt-a

Крайне внимательно относиться к ACL

Правильный транспорт - SSL и тп

Некорректная архитектура защищенной сети

Page 23: AgileBaseCamp 2013 - Start Up and Get Done

Зачем?

Непредвиденные задачи по “латанию” дыр в безопасности (не выпустить вовремя)

Доверие пользователей

Page 24: AgileBaseCamp 2013 - Start Up and Get Done

В двух словах: не обосраться

Page 25: AgileBaseCamp 2013 - Start Up and Get Done

Как достичь цели?

Page 26: AgileBaseCamp 2013 - Start Up and Get Done

Планировать два сценария

•Меньше фич

•В меньшем объеме

•Включаем команду

2: Все по другому

1: Все OK

Все фичи в полном объеме и вовремя

Page 27: AgileBaseCamp 2013 - Start Up and Get Done

Мотивировать команду

В зависимости от типа разработчика:

Задачи - интересные

Проблемы - посильные

Сроки - реалистичные

Нагрузка - поддерживаемая

Page 28: AgileBaseCamp 2013 - Start Up and Get Done

Тогда команда творит

IT’S flowtime

Page 29: AgileBaseCamp 2013 - Start Up and Get Done

product owner, что ты творишь, ахаха прекрати

Page 30: AgileBaseCamp 2013 - Start Up and Get Done

Релиз,теперь можно расслабить

Page 31: AgileBaseCamp 2013 - Start Up and Get Done

Спасибо. Вопросы?

@maxmaxmaxmax