Skip to content

Latest commit

 

History

History
89 lines (65 loc) · 9.41 KB

File metadata and controls

89 lines (65 loc) · 9.41 KB

Как мы создавали карту развития для разработчиков 

Сергей Черепанов, FSD

Основные мысли доклада

Проблемы

  • Знакомая ситуация - разработчик давно работает, но все равно спотыкается на фундаментальных вещах, не знает основ проектирования, плодит велосипеды (пишет ad hoc).
  • Стихийные повышения, как определить, что разработчик достоин повышения.
  • Сложно равномерно распределить ребят по проектам. Невозможность переключать их между проектами.
  • Сложно понять, какой разработчик нужен на задачу.

Варианты решения

  • 1-1, индивидуальные планы развития, перфоманс ревью. Это не походит для маленьких команд.
  • Карта развития. Это просто список вопросов. Изучает и сдает тем, кто получал этот грейд недавно.
  • Попытки не считаем, никого никуда не гоним, у каждого свой темп изучения.
  • Сейчас все уровни выложены на GH, он публичный.
  • Каждый грейд разбит по темам, в каждой теме список вопросов обычным bullet списком.

Затраты и как это работает

  • Драфт собрали на коленке за 50 часов. На текущую версию уже потрачено 750 часов. 500+ вопросов на уровне джуна.
  • Мы использовали rizzoma.com, древовидный документ с одновременным редактированием.

слайд

  • Два уровня джуна, три уровня мидла
  • Как отличаем? Джуниор уверенно владеет инструментами, может затащить в прод решение. Джун - это верстка, JS, фреймворк и юнит тесты. Миддл - это концептуальные знания, ООП, принципы SOLID, DDD, архитектура. Понимает, какую бизнес-ценность он доставляет команде, продукту, почему задача делается. Сеньор знает принципы проектирования и проектирует сам, обучается сам, навыки коммуникации.
  • Тот, кто хоет сдать грейд ищет недавно сдавших на этот грейд, назначает встречу ли несколько и отвечает на все вопросы из списка. Могут задавать дополнительные. Никто не сдавал грейд с первого раза, он получает источники, рекомендации, материалы и идет доизучать.

Проблемы в реализации

  • Было много нечетко сформулированных вопросов, оставалось пространство для субъективной оценки.
  • Все грейды были привязаны к повышению оплаты, не всем это подойдет.
  • Забыли погуглить и взять что-то за основу.
  • Интервью занимало часа 4, все уставали. Подготовка длилась по 4 месяца, забывались темы из первого-второго блоков.
  • Мы ничего не рекомендовали как источники. Разработчики сами накидывали, благодаря этому мы узнали много крутых материалов и добавили их.

К чему пришли

  • Сопроводили это референс материалами
  • Появился стандарт оформления вопросов
  • Не только про разработку, но и про, например, оформление и построение текстов, коммуникацию, методы управления и планирования.
  • Создание уровней не единоличное, делегировано.
  • Переехали на гитхаб, используем пулл реквесты. Возможен полный отказ от темы. Буквально на днях отказались добавить Redux-Saga.
  • В первую очередь мы хотим прокачивать инженеров, программистов общего направления. Без сильных частностей.
  • Помогает находить общий язык, компромисс.
  • Интервью - не просто ответы на вопросы, но и закрепление знаний для тех, кто уже сдал. Научая - обучаешься сам. Рассказывающий закрепляет ассоциативные связи, за счет общения расставляются фокусы.
  • Рефакторинг карты, например, убрали книгу "Чистый код".
  • Нам нужна была книга, которая даст референс, вводную в продакшн разработку, выбрали Питера Гудлифа Ремесло программиста.
  • Не используем для увольнения! Лучше false positive, чем false negative.
  • Наша фишка для найма, конкурентное преимущество. Объясняем наши командные ценности.

Мотивация

  • Прокачка скиллов.
  • Повышение грейда и базовой ставки.
  • Fun! Общение, споры, обсуждение.

Планы

  • В процессе создания такой карты для бэкэнда, уже описали для джуна.
  • У нас есть программа обучения, ее уже начали проходить 10 000 человек (не все закончили, конверсия около 0,3 процента), работает больше 3 лет.
  • В этой программе мы даем первый уровень карты развития.
  • Эксперимент - ежемесячные 1-1 для тех, кто проходит карту.
  • Дать практические упражнения.
  • Создать систему трекинга, где видно все уровни, чтобы было видно, кто недавно сдавал тот или иной уровень.
  • Переводить темы на английский.

Как начать

  • Соберитесь, поштурмуйте, найдите уже существующие карты и сделайте MVP
  • Дальше собирайте фидбек, собирайте единомышленников.
  • Вносите фидбек по максимуму, дайте возможности peer-to-peer обучения.
  • Формализуйте социальный лифт.

Вопросы

  • Вопрос: Нет ли здесь некой истории, что вы сделали карту развития для самих себя, и, выходя на рынок от вас разработчик не находит себя на том же грейде? Он думает, что он Миддл-3, а он на самом деле - нет?
  • Ответ: Мы специально не выносили ничего в карту развития такого, что жестко привязано к нашему стеку, только фронтенд - верстка, Js, Js runtime. Небольшой перекос в FP, чем OOP. Мы делаем software engineer, чем JS developer.
  • Вопрос: Как избежать мошенничества, что один другому поставит грейд за кружку пива?
  • Ответ: У них, тех, кто сдавал есть своя мотивация. Во-первых, они сами недавно страдали, старались и сдавали это. Во-вторых, эти разработчики могут прийти к ним в проект, им нужен обученный человек, реально соответствующий грейду. Мошенничество быстро вскроется. Но false positive есть.

Интересна тема управления знаниями в инженерных командах? Подписывайся на мой канал https://t.me/the_know_all