При найме на работу в IT-компании всё чаще и настойчивее звучит пункт: «знание методологии agile». Попробуем разобраться, что это такое, и есть ли курсы для разработчиков, где этому обучают.
Краткое описание
Гибкий подход к созданию программного обеспечения, или Agile Software Development, — это методология создания программных продуктов, при котором циклы (итерации) разработки происходят одновременно.
Подчеркнем, что Agile — это не язык программирования и не набор инструментов для работы программиста. Это подход к организации рабочего процесса. Agile описывает способы взаимодействия внутри IT-команды, помогающие добиться качественного работоспособного продукта.
Зачем нужен Agile?
Откуда возникла нужда в Agile-разработке? Дело в том, что в цифровой индустрии главенствовал так называемый waterfall-подход. Он гласит, что разработка программного продукта должна пройти несколько обязательных этапов, прежде чем он увидит свет:
-
Сбор спецификаций (требований);
-
Анализ требований;
-
Формирование архитектуры продукта;
-
Создание дизайна продукта;
-
Написание кода;
-
Тестирование и отладка;
-
Выпуск в релиз.
Такая методика очень эффективна на поточном производстве, откуда она, собственно, и перекочевала в отрасль цифровых технологий. Однако тут она нередко начинает буксовать, превращаясь в сущий кошмар и бардак. Каждый этап — это бесконечные планы, согласования и совещания, тонны документации и нередко тупиковое понимание, в какую сторону двигаться, и за что должен отвечать каждый участник процесса, включая менеджеров и маркетологов. Продукт мог бы уже давно выйти на рынок и приносить пользу заказчику, а команда до сих пор не вышла из этапа проектирования, тратит деньги и усилия в пустоту. Как же быть?
Суть Agile
Попыткой сломать эту парадигму и стал Agile-подход. Основной принцип можно сформулировать так: «Готовое — лучше, чем идеальное». Поэтому все процессы начинаются одновременно:
-
Команда планирует и реализует базовую функцию продукта;
-
Пока идет тестирование, разработчики приступают ко второй функции;
-
К моменту выхода в релиз базовой фичи, на отладку передается вторая;
-
В этот момент основная команда уже приступает к третьей.
Так, раз за разом разработчики выводят работоспособный продукт, постепенно полируют и доводят его до ума. Иными словами, продукт проходит разные итерации, постепенно эволюционирует и обрастает новыми функциями. Преимущество в том, что команда не привязана намертво к первоначальному плану и может теснее взаимодействовать с заказчиком/пользователями, оперативно принимать обратную связь и вносить коррективы в работу, причем нередко кардинально всё переделывая.
Agile нагляднее всего работает в игровой индустрии. Там уже давно подмечено: как игру ни полируй, на финальном этапе всё равно появится масса багов и мелких недоделок, особенно, если вы создаете масштабный AAA-проект.
Agile помогает выкатить работоспособный, играбельный продукт в обозримые сроки. Не снимая руку с пульса, разработчик собирает статистику и проверяет обратную связь с аудиторией, находит конструктивную критику, исправляет недоделки патчами, меняет игровой процесс, вводит новые интересные игровые механики и т.д. Так можно продолжать почти бесконечно.
Итак, в чем суть Agile-методологии:
-
Ускоренный вывод продукта на рынок;
-
Гибкий подход к приоритетам пользователей, которые регулярно меняются и нередко тяжело поддаются прогнозам;
-
Улучшение обратной связи между IT и бизнесом. Это позволяет реагировать на конъюнктуру рынка, менять ценовую политику, формировать штат разработчиков и решать ещё массу текущих задач.
Разумеется, Agile не лекарство от всех болезней — у него есть и недостатки, и ограничения. Например, эта методика хорошо работает в небольших командах разработки, когда есть возможность собраться и персонально распределить задачи на день. В крупных компаниях с большим числом сотрудников, особенно на удаленке, это сделать значительно сложнее.
Кроме того, Agile-методику критикуют за то, что она не обозначает далеко идущей цели, работая по принципу «разглядываем деревья, не замечаем леса». Требования в каждой итерации могут меняться, нередко противоречат изначальной архитектуре, повышается риск накопления критических ошибок (так называемый «технический долг»), которые потом трудно исправить.
Кому нужно изучать Agile
На этот вопрос можно ответить так: если вы всерьез хотите работать в IT-секторе, с Agile нужно ознакомиться обязательно. В первую очередь методология Agile предназначена, конечно же, разработчикам — людям, непосредственно занятых кодом и исправлением багов.
Однако Agile-подход нужно изучать и владельцам IT-бизнеса. Он требуется управляющим проектами (Project Manager, Product Manager) и их ассистентам, требуется дизайнерам, SMM-специалистам, редакторам и копирайтерам — в общем всем, кто так или иначе трудится над высоконагруженными сложными проектами в IT.
Особенность Agile в том, что он поощряет горизонтальные, а не иерархические связи. И здесь волей-неволей придется выходить за пределы своих компетенций и постоянно учиться чему-то новому. Менеджер, даже отдаленно не разбирающийся в программировании, никогда не поймет технаря-разработчика, а тому будет трудно разобраться, какие бизнес-задачи решает продукт. Координировать их работу будет тяжело и болезненно, а эффективность работы упадет.
Одним словом, знание, как организовать работу по Agile, это один из ключевых soft skills как для управленцев, так и для непосредственных исполнителей.
Онлайн-курсы по Agile-разработке, подборка лучших в 2024 году
Agile не преподают ни на каких факультетах ни в одном университете России. Да, возможно, где-нибудь ведут факультативы, но по факту единственный надежный способ — это курсы и обучающие вебинары в интернете. Второй вариант корпоративные семинары для разработчиков и менеджеров.
Вам очень повезет, если у работодателя в штате будет наставник, целенаправленно обучающий новичков культуре Agile. Однако даже крупные компании предпочитают набирать готовых сотрудников, поэтому лучший вариант онлайн-курсы, которые можно рассматривать как метод повышения квалификации. Что на них изучают:
-
Как планировать спринты (краткосрочные цели) и составлять бэклоги (очередность задач и перечень всех функций);
-
Как измерять результаты спринтов и облекать их в осязаемые цифры и показатели;
-
Как повысить производительность труда всех сотрудников и побудить их к самоорганизации;
-
Методика Kanban-разработки — визуализация результата при планировании;
-
Модель внесения изменений по Коттеру — метод, помогающий управлять задачами спринта, сплачивать команду и прогнозировать результат;
-
Scrum — популярный фреймворк, разработанный специально под методику Agile.
Перечень далеко не полный, он просто помогает понять примерное содержание онлайн-курсов по Agile. Нужно учитывать, что задачи для разработчиков и для менеджмента отличаются, поэтому и учебные программы будут разными по наполнению.
ВАЖНО! Обращайте внимание на конечный результат курсов. Если вы нацелены на освоение новой специальности (например, project management), итогом должен стать диплом о профессиональной переподготовке. Это будет весомым плюсом при трудоустройстве.
1. Skillbox. Курс «Agile: Scrum и Kanban в работе над продуктом»
Стоимость: 3 510 ₽/месяц
Срок обучения: —
Документ: Сертификат
Базовый курс, который знакомит с Agile-подходами Scrum и Kanban, а также основными инструментами, используемыми при организации процесса разработки —Jira, Trello. Вы научитесь контролировать работу сотрудников на фрилансе и удаленке, выбирать фреймворк под конкретный продукт, планировать задачи и время разработки, гибко управлять ими, формировать продуктовый бэклог и многое другое.
Обучение построено в формате видеолекций, поэтому заниматься можно в любое время. Также доступна обратная связь от экспертов-преподавателей по различным вопросам.
Курс будет полезен как разработчикам, так и руководителям проектов или владельцам бизнеса.
2. Нетология. Курс «Agile: от основ до скрам-мастера»
Стоимость: 4 390 ₽/месяц
Срок обучения: 6 месяцев
Документ: Удостоверение о повышении квалификации
Базовый полный онлайн-курс для разработчиков и менеджеров продукта, которые хотят досконально изучить гибкую методологию создания IT-продуктов любой сложности.
Обучение делится на теоретическую часть и решение практических задач в виде самостоятельных, индивидуальных и групповых заданий по различным Agile-фреймворкам. Программа поделена на два модуля: первый посвящен философии Agile, инструментам планирования и приоритизации задач, второй — запуску scrum-событий, управлению scrum-командами и постановке задач.
Финальная тема курса посвящена подготовке к сертификации PSM I — важному моменту для любого скрам-мастера, который желает выйти на международный уровень.
3. OTUS. Курс «Agile Project Manager»
Стоимость: 80 000 ₽
Срок обучения: 6 месяцев
Документ: Сертификат
Курс по Agile для менеджеров проектов, либо IT-специалистов, которые желают перейти на управленческую должность. Для того, чтобы записаться на обучение, необходимо иметь представление об основных этапах разработки софта от постановки задачи до тестирования и релиза, какие есть роли в проекте и их задачи, понимать принципы и терминологию программирования. Желателен опыт в разработке или тестировании.
Во время обучения будет много практики. Вас научат шаг за шагом выстраивать работу своего проекта и контролировать действия команды. С помощью Scrum вы сможете настроить и спланировать все этапы, действия от лица разработчика, заказчика и менеджера, найти подрядчиков и готовые решения. В конце обучения предстоит сдать итоговую проектную работу, которую впоследствии можно будет применить при трудоустройстве.
Будущим студентам OTUS:
- После регистрации на сайте предоставляется скидка 3000 руб. на обучение.
- Распространяется на все курсы в течение 7 дней после регистрации.
- Действительна как при помесячной, так и при полной оплате курса.
4. SkillFactory. Курс «Профессия Project Manager в IT»
Стоимость: от 5 700 ₽/месяц
Срок обучения: 9 месяцев
Документ: Диплом о профессиональной переподготовке/Сертификат
Полный курс проф. переподготовки для проектных менеджеров, который можно пройти с нуля для работы в IT.Также он будет полезен IT-специалистам, претендующим на позицию Team Lead. В рамках курса изучаются все основные инструменты работы project manager, включая методологию Agile и Scrum.
В рамках курса вам предстоит сделать 3 проекта по разработке мобильного приложения для ЗОЖ, внедрению программного решения call-центра, а также разработке сервиса найма персонала с помощью видеоинтервью. Все они станут основой для портфолио при дальнейшем трудоустройстве.
Предусмотрено 3 учебных тарифа: базовый, оптимальный и индивидуальный. Начиная с базового, доступны индивидуальная работа с ментором, бонусный курс «Английский для IT» и другие полезные опции.
Скидки в Skillfactory до 40% на все кусы! Подробности вы найдете на страницах доступных программ.
5. City Business School. Курс «Гибкие методологии в управлении проектами»
Стоимость: 11 900 ₽
Срок обучения: 18 дней
Документ: Сертификат
Курс по Agile, предназначенный прежде всего для владельцев бизнеса, а также начинающих проджект-менеджеров. Вы научитесь внедрять Scrum и Kanban в работу вашей компании и получите готовый план по внедрению, изучите философию и инженерные практики подхода Agile, поймете психологию управления командой, менеджмент проектной динамики и многое другое.
Обучение построено на разборе реальных проектных задач совместно с тьютором курса, а также выполнении домашних заданий по собственному проекту.
6. Специалист.ру. Курс «Product Managemеnt: гибкие подходы Agile (Scrum), Lean и DevOps для разработки успешного IT - продукта»
Стоимость: 80 академических часов
Срок обучения: 90 890 ₽
Документ: Удостоверение о повышении квалификации/Сертификат
Курс по гибким методикам разработки, предназначенный для повышения квалификации IT-специалистов. Требуется базовое образование по направлению 09.02.05 «Прикладная информатика».
Комплексная учебная программа разбита на три курса, посвященных собственно Agile и фреймворку Scrum, управлению циклами разработки проектов от организации до вывода на рынок, а также непосредственному применению Scrum в работе команды.
Обучение построено в формате ролевых игр и ситуаций, где вы будете учиться распределять обязанности и роли членов команды, оценивать объем работ, планировать и осуществлять спринт, проводить демонстрацию продукта и ретроспективу спринта, оценивать сроки проекта и его стоимость и т.д.
Отдельный модуль посвящен сертификационному экзамену EXIN Agile Foundation (разбор вопросов, подготовка к экзамену и т.д.).
Знание Agile-методик и вакансии в России
Беглого взгляда на рынок труда в стране достаточно, чтобы понять: сотрудники, владеющие Agile, чрезвычайно востребованы. Мы нашли примерно 1700 вакансий на hh.ru для самых разных специалистов, где так или иначе фигурирует пункт «знание Agile-методик». И даже если работодатель не заостряет на этом внимания, будьте готовы, что вас спросят о них на собеседовании.
Чаще всего владение методиками Agile требуют от проект-менеджеров и их помощников, product-менеджеров, специалистов по финтеху, IT-разработчиков разного уровня (от Junior до Senior). Реже мелькают web-дизайнеры, SMM-специалисты, копирайтеры.
Вакансии Agile Coach
Отдельная позиция есть и для тех, кто будет натаскивать сотрудников по Agile, то есть для коучей. И это может стать ещё одной точкой развития карьеры, если вы тем или иным образом были задействованы в IT, имеете опыт разработки и хотите им поделиться.
Чего обычно ждут от кандидатов на должность Agile-коуча:
-
Опыт работы с фреймворками SCRUM, Kanban;
-
Знание процессных и продуктовых практик;
-
Знание инструментов мониторинга, которые используются в разработке, таких как Jira;
-
Знание методов проведения совещаний, постановки задач, мотивации сотрудников на работу;
-
Подтверждения работы в командах и применения методик Agile.
Вакансий Agile Coach в России пока немного и большая их часть сосредоточена в Москве, так что профессию нельзя считать популярной. Однако, учитывая востребованность в квалифицированных IT-специалистах, можно полагать, что всё большему числу компаний потребуются их услуги и востребованность вырастет.
Выводы
Методология разработки Agile уже давно стала стандартом для многих IT-компаний. Изучить её стоит всем, кто так или иначе связан с созданием и выводом на рынок программных продуктов, организацией работы коллективов разработчиков.
У Agile-методики есть свои недостатки и не всегда она применима на практике, но, изучив её, вы станете значительно компетентнее и серьезно расширите свои возможности на рынке труда.