Если вы недавно в IT-сфере и как раз ищете свою первую работу в большой компании, скорее всего, Agile — а тем более Scrum, Kanban и Scrumban — вам незнакомы. Этот материал для вас, если вам интересно, зачем компании переходят на гибкие методологии, чем они отличаются и как будет выглядеть ваша работа по ним.
Что такое гибкие методологии и Agile.
Методология — это правила, по которым люди договариваются работать. Agile — семейство принципов, на которых строятся гибкие методологии. То есть работать можно по-разному, но в основе будут одни и те же ценности.
Гибкие методологии отличаются по своим целям, сферам применения и правилам — но все они строятся на одних идеалах Agile. Благодаря им они и называются гибкими. Вот основные:
- Люди и их взаимодействие важнее процессов и инструментов.
- Важнее сделать продукт, который работает, чем составить исчерпывающую документацию.
- Сотрудничать с клиентом и решать его задачи важнее, чем неукоснительно соблюдать условия контракта.
- Реагировать на изменения важнее, чем следовать первоначальному плану.
Джим Хайсмит, один из самых известных адвокатов Agile, описал его так: «Мы принимаем моделирование, но не чтобы положить какую-то диаграмму в пыльный корпоративный репозиторий. Мы принимаем документацию, но не сотни страниц правил, которые никогда не обновляют и редко используют. Мы планируем, но принимаем, что наши возможности ограничены турбулентным окружающим миром».
Для IT-компании главное отличие работы по Agile от работы без него — это сроки планирования. Представим ситуацию: нам нужно запустить сервис по вызову такси, интегрированный с доставкой еды и лекарств. Без Agile мы распишем подробное ТЗ и запустим сервис только через год, когда будут готовы все функции. По Agile — мы уже через два месяца выпустим первую версию, в которой будет только такси. Потом обговорим с заказчиком, что запускаем дальше — это может оказаться что-то неожиданное, например, доставка зоотоваров. Если бы мы работали по ТЗ на год, то не смогли бы гибко изменить функционал продукта и «попасть» в рынок.
Чем хорош Agile:
- С ним получается управлять постоянно меняющимися приоритетами. Мы не составляем ТЗ на полгода работы, а каждый месяц решаем, какая функция актуальна сейчас, и запускаем её. Так можно подстраивать продукт под моду и состояние рынка, и он получается более успешным.
- Мы быстрее выпускаем на рынок готовый продукт. Не работаем год над приложением, пока не выполним все функции — а создаём версию, которая работает, и наращиваем её постепенно.
- Состояние дел на проекте наглядное и прозрачное. Мы регулярно синхронизируемся всей командой по нашим задачам, расставляем приоритеты, и каждый сотрудник знает, на чём именно он сейчас фокусируется.
Agile — магия, которая точно поможет создать что-то великое? Нет, это не так. Например, великие египетские пирамиды строились без него. Agile — это всего лишь свод работающих правил. Это не единственный верный способ, но он проверен в деле и работает.
Какие методологии сейчас используют в IT-компаниях и чем они различаются.
У нас в Dunice, как и в большинстве IT-компаний, в ходу Scrum, Kanban и их гибрид — Scrumban. Давайте разберёмся, зачем в одной компании целых 3 методологии, как мы выбираем между ними и как выглядит работа по ним.
Scrum
Мы используем Scrum на проектах, где в команде 3-10 разработчиков. Всю работу мы делим на задачи, которые можно уложить в спринт — одну или две недели. Каждый день мы проводим 15-минутный daily scrum, на котором отмечаем наш прогресс. В конце спринта мы собираемся на sprint review, чтобы оценить работу, которую проделали, и понять, как мы можем работать продуктивнее.На проектах, которые мы ведём по Scrum, есть специальные люди, которые помогают его придерживаться. Со стороны клиента — это Product Owner, с которым мы согласовываем задачи по проекту. Со стороны команды — Scrum Master. Он отвечает за то, чтобы ни один фактор не мешал команде работать, следит, чтобы разработчики использовали scrum-фреймворк, организует собрания и общается с Product Owner`ом.
Kanban
Мы используем его, когда у нас небольшая проектная команда. Например, занят только один разработчик — для самоорганизации он будет использовать Kanban.
Суть методологии в том, что для понятного и прозрачного рабочего процесса мы используем доску. На ней есть колонка для будущих задач, откуда разработчик забирает себе одну и потом перемещает её в колонку выполненных. Заниматься можно не больше, чем одной задачей — и сколько задач пришло, столько и должно уйти клиенту. Так мы проверяем, что нигде нет узкого места, и рабочему процессу ничего не мешает.
Scrumban
Некоторым командам удобнее использовать гибрид Scrum и Kanban. В этом случае работа организуется вокруг доски, как и в Kanban. Есть колонки To Do, Doing и Done, и каждый разработчик может быть занят только одной задачей в момент времени.
Планирование в Scrumban происходит не ежедневно, как в Scrum, а по мере необходимости — когда в To Do остаётся меньше определённого числа задач. Какое это число, зависит от числа людей в команде и проекта.
В Scrumban нет фиксированных ролей, как в Scrum, и нам не нужен отдельный Master, который будет назначать задачи. Как только разработчик освобождается, он сам выбирает, над чем работает дальше. Так мы создаём равномерную занятость в команде.
Команда обычно работает по Scrumban, когда у нас нет Product Owner`а со стороны клиента и Scrum Master`а с нашей.
Резюмируем.
Новичку гибкие методологии могут показаться сложными и неудобными. Но это только на первых порах — потом IT-специалисты понимают, насколько гибкость и прозрачность облегчает жизнь. Надеемся, мы рассказали вам, чего ожидать на вашей первой работе!
Эджайл, скрам - говно для рабов на галерах, не понимаю зачем вообще обсуждать разновидности удавок в таком свободном месте, как интернет.
У месье, очевидно, большой опыт в управлении разработчиками. Поделитесь вашими решениями.
Это пиздец. С какого хуя мы должны обсуждать здесь управление людьми? Нет, не пойми меня неправильно, я сам работаю в этом дерьме ежедневно, но именно поэтому последнее, что я хотел бы здесь обсуждать, это схемы управления, основанные на ограничениях и подчинении личности. Идите пожалуйста куда-нибудь на хабр или vc или где еще любят обмазываться всем этим дерьмом, а здесь дайте просто отдохнуть от этой параши.
Ну ты просто так категорично заявил, что скрам и эджайл говно, что я уже подумал, что появились альтернативы.
А вообще, неинтересную статью можно просто не обсуждать. Опционально минусануть.
(vc про мамкиных стартаперов больше)
Ну это правда говно, как ты ниже выразился, изматывающее разработчиков. Скрам и эджайл — разновидности минета заказчику, который пытаются выдать за что-то невероятно продуктивное и интересное. В реальности же это измотанные нервы, переработки, срочные переделки функционала за пару дней, постоянно изменяющиеся планы, отсутствие стабильности и передышек. Людей доводят этим говном до полного истощения, так что через пару лет начинаешь ненавидеть то, чем горел, а затем набирают новых, полных сил джунов/мидлов и также высасывают из них все соки. Я ненавижу это говно всей своей душой. И еще больше ненавижу, когда это говно пытаются выдать под каким-то сладким соусом.
Да придумали то много чего. Если говорить про Agile (парадигмы) - инкрементальная, спиральная, каскадная. Последняя, кстати, насколько я знаю и послужила причиной создания Agile, т.к. каскадная плохо ложилась в современные реалии разработки софта и вообще startup-environment-а
Если говорить про Scrum (методологии) - то тут тоже полно разного: kanban, lean, экстремальное программирование, bdd, tdd, fdd...
и да, я в курсе что все эти вещи имеют несколько размытое отношение к единой группе (т.е. часто контролирует процессы на разных уровнях) и не взаимоисключающие
Agile прижился т.к. он просто довольно точно описывает то как разработка софта вписывается в потребности стартап-среды (это не обязательно значит мелких фирм, скорее вопрос в отдельных быстро-развивающихся проектах с коротким циклом выхода на рынок)
Scrum - имхо, прижился потому что эта методология создает marketplace "проповедников" этой методологии. Т.е. сертификация scrum - стоит денег, и есть много конкурентов проводящих сертификацию. Чтобы преподавать scrum - надо получить тоже отдельную сертификацию, и можно создавать на этом денежку... Короче scrum - это отдельный бизнес со всеми "вытекающими", в отличии от Agile
соглашусь, что скрам - говно (хотя скорее "инструмент с узким кругом применения...который пихают везде где не стоит")
но аджайл сам по себе - вполне адекватные идеи описывает. и это скорее манифест, чем конкретная методология
Комментарий недоступен
Суть не только в том, что мы действуем по ситуации, а в том, что мы ещё и удобно организовывыем эти действия. Ну и статья, чтоб новички не пугались сложных слов:)
Зачем столько "МЫ" в комментах? Ещё одна "янитакаякаквсе" галера?
Действуем по ситуации и не паримся, я бы так сформулировал.
Для большинства разработчиков это изматывающий ад, но зато действительно позволяет запускать продукты быстро.
Насколько я понял из личного опыта - скрам, это когда ответственность за планирование и выполнение согласно плана перекладывается с проджект менеджера на разработчика.
Тебе платят за рекламу или на энтузиазме надрываешься?
Делюсь опытом — не жалко:)
Такой опыт и даром не нужен. Agile в конторе - можно увольняться.
Понимаю, если у вас остался негативный опыт от «Эджайла». Мы адаптируем его под наше удобство, а не наоборот — поэтому уживаемся.
Вот именно, что "уживаемся", а не "нормально работаем".
Комментарий недоступен
Комментарий недоступен
Комментарий недоступен
Спрашивают, работал ли ты по эджайлу и знаешь ли, что это. Можешь и не знать, на самом деле, этот вопрос задают, чтобы отсеять тех, кому методология команды некомфортна.
В 2020 году видя в заголовку «гИбКиЕ методологии» ожидаю истории только с подъебкой.
Вообще пост как-то очень скомканый и бестолковый. В вашем описании очень сложно понять чем scrumban отличается от Kanban
Кроме того, применять систему управления для "команды" из одного человека - странная практика.
Кроме того вы бы хоть описали реальные плюсы/минусы kanban/scrum для разработчиков, для менеджеров, для компании..
откуда они взялись, почему, как применяются, какие роли и обязанности...
За рекламу тебе хоть платят?))