Привет, Хабр! Меня зовут Артём Кротов, я работаю руководителем направления развития гибких практик в команде Мир Plat.Form. В статье хочу рассказать, на какое обучение и сертификацию стоит обратить внимание разработчикам и вообще ИТ-специалистам, которые уже понимают, как они хотели бы развиваться по треку hard skills, но в теме soft skills не разбирались.
Если про Scrum и Kanban вы слышали только в контексте типов досок в Jira, а под CI понимаете Bamboo, Jenkins или Gitlab, то моя статья будет для вас полезной. Итак, погнали!
![](https://habrastorage.org/getpro/habr/upload_files/857/ed6/a75/857ed6a75d280790edf926de425894ae.png)
Но перед тем, как двинуться дальше, давайте определимся с терминами…
Под сертификацией я понимаю процесс получения знаний, качество которых соответствует требованиям и подтверждено уполномоченной организацией. Я имею в виду, что важен сам процесс и те знания, которые вы получаете, а не сертификат или бейдж. Последние являются лишь приятным бонусом и могут снять часть вопросов. Например, при интервью или участии в тендере. Еще раз подчеркиваю, что знания важнее сертификата.
Hard skills - навыки, практические знания и технологии, которые присущи конкретной профессии. Например, для Java-разработчика это могут быть ООП, Java Core, Collections, JMM, Gradle/Maven и так далее. Они обычно указываются в резюме или вакансии в первую очередь, их проще оценить и измерить.
Soft skills - это надпрофессиональные, несвязанные напрямую с конкретной профессиональной специализаций, компетенции, навыки и т.д, пусть и тесно связанные с личностными качествами. Например, навык публичных выступлений, тайм-менеджмент, фасилитация, наставничество. Их сложнее измерить и оценить. Также стоит отметить soft skills, которые позволяют организовывать и трансформировать процесс разработки, используя различные подходы: Scrum/Nexus/LeSS, SAFe, eXP, Kanban-метод.
![](https://habrastorage.org/getpro/habr/upload_files/04e/42b/633/04e42b633b7065ad67b5e59ddeb27194.png)
Зачем рядовому члену команды интересоваться чем-то за рамками hard skills?
Да, действительно. Изучаешь новую технологию, пробуешь ее на практике, приобретаешь опыт, добавляешь последние достижения в резюме, получаешь повышение (на текущем месте или переходишь на новое), рассматриваешь следующую… Надеюсь, вы поняли алгоритм.
Если для начинающих специалистов это работает с кратным увеличением компенсации, то для профессионалов экспертного уровня возникает асимптота, и количество технологий не переходят в рост так же просто. В системном мышлении это называется «пределом роста». В этот момент как раз и выходят на сцену soft skills.
!["Предел роста" - прирост компенсации рано или поздно замедляется "Предел роста" - прирост компенсации рано или поздно замедляется](https://habrastorage.org/getpro/habr/upload_files/1e5/bed/cb5/1e5bedcb5950c945e289d0cc151755c4.png)
С другой стороны, любому члену команды, даже в начале карьеры, неплохо было бы, на мой взгляд, разбираться на базовом уровне в терминах, которые часто звучат в команде от старших товарищей: “стендап”, “спринты”, “технический долг” … Это избавит их в дальнейшем от неверного понимания и неправильных ожиданий, не создаст негативного опыта. Да и участвовать в церемониях, например, в ретроспективе или PI-планировании, комфортнее, когда понимаешь их цель.
Стоит отметить, что soft skills – это не единственная альтернатива hard skills. В Мир Plat.Form мы также выделяем system skills – знание продуктовой составляющей, конкретных систем, а также бизнес-процессов. Эти знания любой член команды получает постоянно при работе над продуктом, поэтому мы подробно не будем на них останавливаться в рамках этой статьи. Но не лишним будет указать, что в некоторых предметных областях, например, таких как финтех, компании требуют от соискателей знаний, подтверждённых отраслевыми сертификатами.
Какую сертификацию я бы рекомендовал?
Далее я буду приводить примеры Agile-сертификаций, полезных для ИТ-специалиста. Но не воспринимайте это рекламой конкретных компаний. Я делюсь личным опытом, и каждая из программ была испытана мною лично. Но помните, где учиться и чему учиться, вы решаете сами.
Applying Professional Scrum for Software Development от Scrum.org
Кому подойдет: командам, особенно тем, где применяется или только планируется профессиональный Scrum (согласно его руководству на сайте scrumguides.org).
Чему вы можете научиться: Изучить Scrum-фреймворк, понять его роли, события, их цели и предназначение. Также данная сертификация фокусируется на итеративной разработке, возникающей архитектуре и инженерных практиках экстремального программирования, в том числе TDD, парном программировании и других. Стоит отметить, что если вы выбираете обучение от сертифицированной организации, то получаете возможность принести свои кейсы и отработать навыки на практике при поддержке тренера.
Сертификация доступна как после тренинга, так и без него. Но прохождение обучения не гарантирует получение сертификата автоматически, что заставляет изучить некоторый объём материала самостоятельно. При прохождении тренинга даются 2 попытки на сдачу теста, это касается всех курсов от Scrum.org.
![Пример навыков "Технического совершенства". Оригинал: https://less.works/less/technical-excellence Пример навыков "Технического совершенства". Оригинал: https://less.works/less/technical-excellence](https://habrastorage.org/getpro/habr/upload_files/5b2/013/7f4/5b20137f41d00db0d2b008397038e39c.png)
Certified LeSS Practitioner от LeSS.works
Кому подойдет: командам, особенно тем, у которых уже есть опыт работы по Scrum’у. Особенно если речь идёт о нескольких командах разработки в рамках одного продукта.
Чему вы можете научиться: LeSS — это Large-Scale Scrum, то есть масштабный Scrum или Scrum для большого масштаба. Этот фреймворк фокусируется на продуктах, в которых участвуют несколько команд разработки. При масштабировании разработки от одной к нескольким командам у вас появляется дополнительная ось сложности - взаимодействие команд, с которой нужно уметь работать.
LeSS уделяет внимание не только техническому совершенству и инструментам координации, но и системному и бережливому мышлению, а также теории очередей, на которых он основан. Глубокое изучение данных дисциплин позволит взглянуть не только на свой процесс работы по-новому, но и далеко за его пределы. Например, системная диаграмма (CLD) процесса работы с техническим долгом показывает, как эту проблему можно решить.
![Пример CLD для анализа систем. Оригинал - https://less.works/less/principles/systems-thinking Пример CLD для анализа систем. Оригинал - https://less.works/less/principles/systems-thinking](https://habrastorage.org/getpro/habr/upload_files/da6/d03/2af/da6d032af536a304d4ad7419307aa018.png)
Kanban System Design от Kanban.university
Кому подойдет: командам, которые пока не выбрали конкретный подход или процессный фреймворк, но имеющие запрос на постепенные изменения.
Чему вы можете научиться: Kanban-метод поможет разобраться в анализе процессов от запроса до поставки ценности, научиться работать с разными видами задач и запросов. Он также опирается на бережливое мышление и нетерпим к потерям, которые особенно тяжело идентифицировать при разработке ПО, в отличие от материального производства. Например, запасы неготовой или дефектной продукции легко увидеть, находясь в цеху, но не задачи, которые зависли где-то между разработкой и тестированием, особенно если эти две стадии протекают в разных компаниях.
!["Невидимые" потери в ИТ. Оригинал: https://agilecoachdiaries.wordpress.com/2017/01/19/lean-software-development-7-wastes-of-software-development/ "Невидимые" потери в ИТ. Оригинал: https://agilecoachdiaries.wordpress.com/2017/01/19/lean-software-development-7-wastes-of-software-development/](https://habrastorage.org/getpro/habr/upload_files/87b/8e4/e6f/87b8e4e6fcdbb8e4518d0c34f7798f9a.png)
Многим нравится Kanban-метод за то, что его “внедрение” не требует революционных изменений. Вы можете пользоваться практиками Kanban-метода, такими как визуализация и ограничение потока, объясняя это здравым смыслом, а не требованием методологии или подхода.
Навыки фасилитации от facilitato.ru
Кому подойдет: ИТ-специалистам, которые хотели бы развиваться в сторону менеджмента, и вообще всем, кто проводит какие-либо встречи на регулярной основе.
Чему вы можете научиться: Фасилитация - стиль управления, включающий набор навыков по работе с группой в рамках каких-то общих событий. Работа в команде подразумевает проведение частых совместных событий, таких, например, как планирование спринта или релиза. Чтобы принимать наиболее качественные решения в группе за наименьшее количество времени как раз и нужны навыки фасилитации у ведущего таких мероприятий.
Если вы не сталкивались с фасилитацией, то точно знакомы с её отсутствием: затянутые встречи без повестки, решения, принимаемые на основе мнения “самых громких”, а не “самых разбирающихся в проблеме”, и в принципе трата большого количества времени на встречи вместо непосредственно самого написания кода или его тестирования, если мы говорим о разработке ПО.
![Пример визуальной фасилитации. Источник: https://unsplash.com/photos/gMsnXqILjp4 Пример визуальной фасилитации. Источник: https://unsplash.com/photos/gMsnXqILjp4](https://habrastorage.org/getpro/habr/upload_files/0e6/2cb/54f/0e62cb54f5743231423d8aa3f96577f3.jpg)
Как описанное обучение и сертификация могут помочь на рынке?
За свою карьеру я получил опыт участия в интервью как со стороны соискателя, так и со стороны работодателя. Поэтому вижу несравненным плюсом для кандидата наличие у него следующих навыков:
Интегральное понимание хода разработки от идеи до выхода на рынок
Очень круто, когда кандидат может описать, откуда берутся требования, как создается программный продукт, как он передается в эксплуатацию, и кто им пользуется (это идеально!)
Знание инструментов оценки и прогнозирования на основе статистики
Думаю, каждый из разработчиков сталкивался с вопросом “Когда будет сделана задача Х?”. Для ответа на этот вопрос уже придуманы инструменты, которые позволяют дать оценку с учётом её вероятности на основе уже выполненных задач.
Хорошая подготовка для перехода на руководящую позицию
Руководителю команды разработки необходимо иметь широкий кругозор в области программирования, тестирования, инженерных практик, управления командой и проектирования процессов, чтобы наиболее эффективно выполнять свои задачи.
Итого
Мы с вами рассмотрели всего лишь несколько направлений развития soft skills и получения прикладных знаний для разработчиков и вообще ИТ-специалистов. Как вы понимаете, их гораздо больше. Главное понять, что ответственность за ваше развитие в любом из направлений лежит исключительно на вас, за вас этот выбор никто не сделает.
Также в комментариях вы можете указать, какое обучение и сертификацию вы бы добавили в этот список. Всем удачи в развитии!