Менторство, новый набор
Всем привет! Возможно вы помните мой прошлый пост про поиск стажеров.
Прошло уже три месяца, и думаю стоит поделиться результатами.
О менторстве
Свой образовательный эксперимент я назвал “предполетная подготовка”, чтобы не путаться в терминах “проект” как менторство и “проект” как кодовая база.
Основной идеей так же остается концепция командной работы над проектом: я даю задачи, команда их декомпозирует, распределяет между собой. После того как фича сделана - оформляется пулл-реквест, команда ревьювит его сначала сама, а затем ревью провожу я.
Разумеется, при необходимости я консультирую, отвечаю на вопросы и оказываю помощь, но стремимся мы к тому, чтобы человек научился самостоятельно делать задачи простого уровня.
Как все было
- Всего мне пришла 21 заявка.
- В 16 из них было указано кол-во свободного времени около 8 часов. Остальные - меньше
- Оставил 13 тех, у кого были какие-то минимальные (по моей субъективной оценке) знания. Исходил из описания в заявке и коде на гитхабе
- В дальнейшем (после основного набора) не было ответа по 6 заявкам, кажется.
Я выбрал 4 кандидатов, 2 фронта и 2 бека. После знакомства мы потихоньку начали работать над проектом. С самого начала работало по факту только 2 человека. Один из фронтов почти сразу нашел работу (не моя заслуга, разумеется). Второй бэкендер за 2 месяца по различным причинам не сделал ни одного коммита. Я предлагал помощь и был всегда готов ответить на любые вопросы, но, видимо, проект не был в приоритете и мы расстались по моей инициативе.
Еще через некоторое время, ссылаясь на недостаток времени, к сожалению, ушел еще один бэкендер - достаточно способный товарищ, было приятно с ним работать.
В какой-то момент у нас в команде бэкендеров не было, и мне пришлось сделать кое-что самому. Пройдя по списку заявок, я нашел еще 2 бэкендеров - одним уже доволен, а от другого пока жду первых результатов.
Фронтендер тоже нашелся, но времени и скилов ему пока не хватает, поэтому я решил взять третьего. Надеюсь найти его после этого поста.
О проекте
Не столь важно, что мы делаем, важно, что мы это делаем очень медленно :) Я не знаю точно, сколько времени в неделю тратят ребята в действительности. Пытался напоминать им про выставление часов в тикетах - не пошло. Буду пробовать еще раз, возможно, другим путем. Дедлайнов у нас нет т.к. все люди взрослые, у всех семья, личная жизнь и все такое, поэтому каждый работает по мере своих возможностей.
Впечатления
Хоть мне пока и не удалось получить тот технический опыт, на который я рассчитывал, в связи с тем, что работа идет медленнее, чем я планировал, мне нравится этим заниматься. Лучший способ что-то хорошо изучить - это объяснить тему другим. Каждый раз, когда объясняю что-то: как надо делать, как не надо, почему и как это работает - даже имея многолетний опыт работы, я все равно лезу сверяться с документацией или другими источниками, иногда отмечая для себя какие-то нюансы.
Одна из сложностей при код ревью - это найти баланс между количеством итераций ревью и качеством кода. Код ревью иногда затягивается, и это может тормозить прогресс. А темп работы тоже важен, потому как бесконечные правки по ревью могут наскучить, да и не всегда приносят столько же опыта, сколько нафигаченный за тоже время говнокод.
Отзыв от одного из участников:
Участвую в проекте 3 месяца. Изначально хотела подтянуть свои навыки от trainee до джуна. По факту было очень полезно узнать насколько многого я не знаю (и что до trainee еще тоже нужно дойти), даже из тех вещей, которые уже проходила и практиковала на курсах, по книгам и т.д. В жизни всё оказалось несколько по другому.
Иван дает очень подробные ответы на все вопросы и код ревью, и обращает внимание на теорию. Теорию нужно тоже читать и перечитывать. Узкие места JS становятся понятнее, как и книга с носорогом (мы все ее купили, 7-е издание 2020 г). А также становится понятным, как нужно задать вопрос, чтобы получить на него ответ (а не совет обратиться к Гуглу).
Так же из плюсов - свежий стек, фронт на React + TypeScript + Material UI, бэк на Python + Django + можно по согласованию попробовать все самые модные инструменты.
Из минусов - 1) легко не будет, тк предполагается что участники взрослые люди, которые умеют искать и применять нужную информацию + обычно это не информация из распространенных уроков на ютубе, а например из документации, каких нибудь видеогайдов на английском языке, ответы на стаковерфлоу и т.д.
2) Это не TDD, но юнит-тесты нужно писать на всё. Нет, на ВСЁ. На фронте это react-testing-library, по которой тоже не много мануалов и ответов на вопросы в сети. И мок-тесты, по которым в принципе не ясно, как они работают. Но это очень важный и полезный навык.
И все эти пункты дают + 100500 к уверенности на собеседованиях и еще столько же к способности воспринимать критику.
В общем, рекомендую!
Анализ работы
Резюмируя полученный опыт, сейчас я остановился на следующем:
- Для стажеров кол-во затрачиваемого времени должно быть где-то 7-8 часов. Меньше совсем не вариант, больше - лучше.
- Нужно давать тестовые для кандидатов, чтобы убедиться в наличии хоть какого-то минимального уровня, и в целом оценить подготовку.
- Возможно, стоит собирать информацию по затрачиваемым часам
- Возможно, стоит подумать над дедлайнами. Тут сложно: с одной стороны должен быть механизм который “наказывает” за пропуск дедлайнов. Но с другой - у всех со временем по-разному, и при этом нужно еще синхронизировать команду между собой.
- При сборе заявок собирать не только почту, но и мессенджеры - для оперативной связи. На почту часто не отвечают.
- Стоит подумать над проведением семинаров/лекций/презентаций по темам. Идея пока в глубокой пре-альфе т. к. есть более приоритетные задачи.
Спасибо, что дочитали.
Хорошего вам дня.
Лига программистов
1.5K постов11.4K подписчик
Правила сообщества
- Будьте взаимовежливы, аргументируйте критику
- Приветствуются любые посты по тематике программирования
- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества