Архив недели @nat_davydova
Понедельник
Приветище всем!
На этой неделе в вами буду я, Наташа Давыдова, фронтенд-разработчица из питерского финтеха Devim и "матерь джунов" в тви.
Год назад я создала нетоксичное фронтед-коммьюнити и стала организовывать митапы для участников.
Коммьюнити, внезапно, разрослось до уже 1600+ человек, и продолжает расти, оставаясь все таким же мирным и славным.
Наше коммьюнити вот - t.me/jun_mid_front
Мой тви вот - @nat_davydova
В нем я говорю на околорабочие темы, в основном.
В свободное от работы, учебы и коммьюнити время воспитываю трех попугаев и собаку, много читаю, смотрю киношечки и гуляю по Питеру, который люблю всей душой.
На этой неделе я хочу вещать вот о чем:
- о нетоксичности (почему она важна);
- об опыте организации сообщества и митапов;
- о менторстве в IT;
- о джунах (почему они не обуза);
- о критике (как сделать ее полезной);
- о самообучении;
- о том, как впихивать в день миллион дел;
Если вам интересно, чтоб я рассказала о чем-то конкретном, буду рада вопросам и пожеланиям, постараюсь раскрыть все темы, которые вы мне накидаете 🌸
Тред (Наталия Давыдова)
Ну что ж, погнали по сегодняшней теме: нетоксичные коммуникации. Собственно, начать имеет смысл с того, а зачем вообще переводить коммуникации в нетоксичную тональность.
Когда говоришь с людьми резко, агрессивно, когда доносишь до них свою позицию жестко, собеседники легко отвлекаются с сути твоих слов на форму высказывания.
Воинственное обрамление не дает согласиться с сутью мысли, оно перетягивает внимание на себя.
Более того, в ряде случаев у собеседника есть устойчивая связка "согласиться с грубо высказанной мыслью" = "проиграть в дискуссии".
И там, где мог бы быть компромисс, получается конфликт, порой - вообще на ровном месте.
А вот когда акцентируешься в своем высказывании на корректности формулировок и тона, когда подаешь мысль дружелюбно, оппоненту куда проще согласиться с тобой или пойти на компромисс. Ну или тебе - с ним.
В нетоксичном общении нет проигравших, это буквально win-win общение.
Еще один неочевидный плюс: нетоксичная коммуникация попросту быстрее и экономнее.
Там, где мог бы развернуться жесткий спор или конфликт на несколько часов, дружелюбная и комфортная коммуникация требует куда меньше времени, даже в сложных ситуациях.
Обычно, когда начинаются дискуссии за нетоксичность, звучит два аргумента против:
- это лицемерие: например, если я хочу сказать собеседнику, что он - козел, а я не говорю;
- это слабость: собеседник, может, сам - токсичная зараза, а я с ним нянькаться буду, что ли?
Про оба эти аргумента я расскажу сегодня позже, во втором треде, в котором сформулирую мои принципы нетоксичного общения, но главное я вынесу прямо сейчас: нетоксичность - не про вечный позитивчик.
Нетоксичность не означает, что вы всегда должны быть милашкой. Это не про то, что вам хамят, а вы - солнышко.
Выражать свое "фу" - можно, отстаивать свою позицию и защищать свои границы - тоже, оставаясь в рамках корректности и нетоксичности.
А о том, как это конкретно работает в моем случае (и в случае сообщества, которое я создала), я расскажу в следующем треде, через 2 часа примерно.
Тред (Наталия Давыдова)
Окей, в прошлом треде я говорила о том, что нетоксичный подход экономит силы и время, если смотреть на него с утилитарной точки зрения, а сейчас попробую рассказать, что же это за подход и как им пользоваться.
С чем не стоит путать нетоксичность:
- с отсутствием личных границ;
- с неумением дискутировать и отстаивать свою позицию;
- с бесконечным позитивом;
Нетоксичность не о том, чтобы не выражать негативные эмоции, она о том, чтобы делать это... собственно, нетоксично 😂
А как это - нетоксично? В чем суть подхода?
- в презумпции добрых намерений оппонента (пока не доказано обратное);
- в уважительном отношении к чужой позиции и личности;
- в корректном выражении своих мыслей, включая критические;
- в спокойной, жесткой защите, если понадобится;
Презумпция добрых намерений заключается в том, что мы изначально подходим к собеседнику с идеей, что он:
имеет осмысленную конструктивную позицию;
не замышляет дурного;
настроен на продуктивную дискуссию;
В таком случае любая внезапная ситуация изначально рассматривается как недопонимание и поле для взаимодействия, кооперации и свободного выражения позиций с обеих сторон.
Мне в код-ревью, например, нравится говорить не "ты тут неправильно сделал", а "почему ты решил сделать тут именно так, а не, например, эдак?".
Может, это я что-то не учла? Может, мы сейчас вместе придумаем вариант лучше? Или ревьюемый просто примет мое "эдак", и так бывает
Подчеркну тут, что презумпция добрых намерений имеет место только до тех пор, пока оппонент не сделал что-то, что эту презумпцию рушит.
Грубость, игнорирование ваших границ, какие-то откровенно неэтичные действия выводят оппонента из-под этой презумпции.
Следующий пункт - уважительное отношение к чужой личности и к позиции этой личности.
Если вкратце - это о том, что нетоксичность возможна только тогда, когда мы не причиняем добро, не наносим пользу и не подвергаем нашей помощи принудительно.
Наш оппонент имеет право на свои границы, на личное мнение (даже если это мнение неправильное 😂).
Он вообще не обязан с нами соглашаться и вести себя, как нам удобно (пока дело не доходит до конкретных соглашений).
Когда дискутируешь, исходя из этой логики, без давления на человека, появляется место для контакта и компромисса.
На примере код-ревью: я не вахтерствую и не продавливаю вкусовщину. Предложить другой вариант - да, говорить, что мои вкусы круче вкусов другого - нет.
Корректное выражение мыслей - это:
- "я"-сообщения вместо "ты-сообщений";
- отсутствие прямой и пассивной агрессии, ехидства и злого юмора;
- базовое сопереживание (не говорить так, как не хотелось бы, чтобы говорили с вами/с вашим близким человеком);
- упор на факты;
Грубо говоря, не "ты хреново накодил", а "мне кажется, что тут, тут и тут можно сделать лучше вот так-то. А здесь и здесь, кажется, ошибки по невнимательности. Это нормально, что что-то упустил, глаз может замылиться. Теперь ты знаешь, что еще стоит проверять перед отправкой =)"
Да, так писать дольше и зануднее. Поначалу хочется рубануть с плеча: "шо за говнокод ты мне тут принес?", но зачем? Чему это научит человека? Как поможет вам в долгосрочной перспективе, человеку, команде?
Краткосрочно, это поможет не париться. Долгосрочно - испортит отношения
Ну и напоследок: как обороняться нетоксично? Лично я использую 2 стратегии:
- объясняю из "я"-сообщений, что мне не ок, и как сделать, чтоб было ок;
- если не работает - рву контакт;
Предположим, мне хамят.
Первая стадия: "мне некомфортно, когда беседа идет в такой манере. Давай, сбавим обороты или вернемся к теме позже".
Вторая стадия: "я не буду общаться дальше на таких условиях, конец дискуссии".
Теперь предположим, что мне нахамили на работе, и на прямую просьбу прекратить не останавливаются.
Тогда я бы собрала скрины, если это письменно, (если нет скринов - не страшно) и пошла бы к непосредственному руководителю или в эйчар-отдел. И пусть разбираются уже они.
Если резюмировать: лично у меня от этих правил качество общения крепко возросло, а количество конфликтных ситуаций резко уменьшилось. Еще они мне очень помогают в менторстве.
Я не утверждаю, что они помогут всем во всех вообще ситуациях, что они 100% универсальны.
Побочный эффект этих правил вылился в то, что в моем фронт-сообществе конфликтов нет вообще, совсем никаких.
Культурные дискуссии - да, горячие диспуты - да, но никто не переходит черту и не обижает других участников.
Тред (Наталия Давыдова)
Вторник
@itunderhood Могу посоветовать книгу "Я слышу вас насквозь". Она мне позволила чуть по другому взглянуть на тему. Некоторые ещё хвалят "Ненасильственное общение", но мне лично не так зашло
Кто спрашивал, какие книги по теме можно почитать 🌸 twitter.com/NazimSuleimano…
Сегодня перескочу через тему и расскажу о менторстве.
Тредов будет три:
зачем менторить и что это дает;
что я делаю, как ментор, чтобы мои менти лучше усваивали информацию;
по запросу от @daniil_vodopian - как воспитать в джунах не только технавыки, но и проактивность
Первый тред: зачем вообще менторить и что это дает.
Перед тем, как начинать технически растить, например, джуна или миддла, надо понимать, а нафига нам самим это надо. Какой профит-то? Иначе любой менторинг превратится в обузу. Ну и о минусах поговорим тоже.
Первый плюс менторинга - повышение собственных технических скиллов.
Когда начинаешь объяснять что-то, само собой разумееющееся, внезапно, понимаешь, что есть какие-то нюансы, которые ты плохо помнишь, какие-то дыры в знаниях или места, которые неплохо бы углубить.
Кроме того, новички иначе смотрят на инфу, которая для нас привычна, они по-другому ее воспринимают, экспериментируют с ней.
Менти как зададут какой-нибудь хитровывернутый вопрос, так и пригрузишься на некоторое время, пока формулируешь ответ. Тоже ведь полезно.
Второй плюс - прокачка софтов, необходимых для собственного повышения грейда.
Сейчас в ряде компаний недостаточно только хардов, чтобы перейти на грейд выше. В план развития включают и софты, тренировать которые, в некотором смысле, сложнее, чем харды.
Менторство - возможность вкачнуть навыки лидерства, выдачи обратной связи, мотивации человека, пресловутой нетоксичной коммуникации.
Например, если в карьере есть амбиции на тимлидство, обкатывать эти амбиции лучше с менторинга.
Ну и вообще, если ты можешь объяснить новичку какие-то фундаментальные концепты так, чтобы он их понял и смог использовать на практике, ты вообще что угодно и кому захочешь сможешь объяснить 😆
Третий плюс - самооценочный.
Когда ты видишь, как под твоим руководством человек фигачит в рост, когда его скиллы на глазах улучшаются, уверенность повышается, и ему становятся по зубам задачи, еще несколько месяцев назад казавшиеся невыполнимыми, это офигенно драйвит
Теперь пройдемся по минусам.
Первый минус - время.
Мало того, что надо выкраивать время для занятий с людьми, надо еще и самому учиться менторить. Менторство - такой же навык, первое время придется жить с тем, что получается не очень-то, что надо учиться учить
Тут я могу сказать, что, лично для меня, оно того стоит. Навыки, которые я приобрела, пока училась менторить, потом не раз помогли мне и в других сферах (например, на собесах 😆). Так что не жалею ни минуты, что вкладывалась в развитие менторских навыков.
Второй минус - может не повезти с учениками.
Первое время, пока вы менторите, например, бесплатно, для обкатки навыков, можно вляпаться в учеников, которые пропускают занятия или не шибко заинтересованы. Или стажеры на работе могут морозиться и не стараться.
Тут только могу сказать, что, да, так бывает. И лучшее, что можно сделать - слезть с дохлой лошади и не пинать труп.
Если человек не хочет учиться - да и фиг с ним, на каждого нехочуху найдется десяток мотивированных ребят, работа с которыми окупится сторицей.
Если резюмировать. Как и у любого занятия, у менторства есть ряд своих достоинств и недостатков.
Стоит ли пробовать? Мне кажется, точно стоит, а там уже порефлексировать над результатами и подумать, продолжать ли и в каком виде.
Тред (Наталия Давыдова)
@itunderhood @ok_webdev Менторинг помогает посмотреть на себя критически)
Да, согласна 🌸 это, в некотором роде, экзамен на харды и софты. С каждым новым человеком, с каждой новой темой и задачей.
Этим он крут и сложен одновременно. twitter.com/VadimCpp/statu…
Про то, зачем менторить, мы поговорили. Теперь поговорим о том, как менторить.
Я сразу скажу, что говорю именно о моем опыте и о том, какие фишечки сработали на моих менти.
Только онлайн, только с видеозаписью
Когда человек слушает твою лекцию, особенно, если совсем новичок, велика вероятность, что половину он забудет через час, а другую - не сходу поймет. В этом случае, очень важно, чтобы у ученика был материал, к которому он может вернуться
Еще один плюс записывания видеосозвонов в том, что ученику не надо отвлекаться на конспекты. Он весь погружен в вашу коммуникацию и процесс, а позже, после занятия, он может пересматривать видео столько раз, сколько нужно, делать пометки или конспекты в спокойной обстановке
Хвалить не за успехи, а за старание и осмысление результатов
Когда человека хвалим за успехи, он привыкает, что он хороший только тогда, когда правильно отвечает. Поэтому такой подход, сопровождающий нас с детства, буквально подталкивает к тому, чтобы не ошибаться
А не ошибается, как водится, или тот, кто ничего не делает, или тот, кто занят не получением знаний, а деланьем вида, что все ясно-понятно.
Поэтому я хвалю за попытки, мотивирую экспериментировать при мне, ошибаться и чинить поломанное, выдвигать гипотезы, пусть даже ошибочные
Сначала мои ученики офигевают от такого и не понимают, это что за ерунда такая вообще. Они зажаты, они боятся пробовать и пытаются производить впечатление.
Но как только они понимают правила игры, перестают бояться ошибиться при мне или оказаться некомпетентыми.
Это - один из способов воспитать в стажерах и джунах проактивность.
Когда у людей акцент на старание и рефлексирование результата попыток, они становятся свободнее, появляется больше интереса, любознательности и вдумчивости.
Рисунки для наглядности
Людям часто сложно воспринимать рассказ в отрыве от какого-то визуального контента. Поэтому мне очень помогает доносить какие-то концепты черкание в онлайн-рисовалке параллельно рассказу.
Моя любимая рисовалка эта - excalidraw.com
Еще в этой штуке удобно набрасывать схемы-конспекты, по которым классно восстанавливать информацию. Приложу для наглядности мою схему по промисам, которую рисовала, когда менторили меня.
Не важно, сколько времени пройдет с занятия, я легко восстановлю забытые нюансы по рисунку
Повторение своими словами
Фигачить человеку лекцию целым полотном, как по мне, не лучшая идея. Нет контроля за процессом, нет понимания, что менти уяснил, а в чем плывет.
Так что лучше работает подход вида: кусок инфы - просьба повторить своими словами.
Когда ученик повторяет тебе только что сказанное своими словами, сразу видно, где он "плывет", где пытается "срезать углы".
Можно попросить его покодить иллюстрацию к рассказанному куску, чтобы на месте подкрепить теорию практикой.
Аналогии запоминаются
Рассказанная тема усваивается лучше, если ее объяснять на простых примерах, на забавных и ярких аналогиях. Такие штуки потом "застревают" в голове у ученика, и ему легче запомнить и вникнуть.
Такие аналогии лучше готовить заранее. Когда я прогоняю рассказ по той или иной теме, попутно и придумываю примеры, иллюстрации и подходы, как лучше инфу подать.
Предлагаем рассуждать
Перекликается с пунктом 2. Хороший урок, в идеале, не монолог, а диалог. Чем активнее менти пытается рассуждать сам, экспериментировать с кодом в рамках темы, лайвкодить прямо на уроке, тем быстрее будет рост.
Пусть менти что-нибудь сломает и сам починит, пусть попробует набросать какую-то фичу или компонент, попутно рассуждая.
Это прокачает куда лучше, чем просто пассивное слушание.
Разнообразие упражнений
Например, сейчас я на митапах стала устраивать для джунов дебаг-сессии: готовлю демки с разнообразно поломанным кодом и предлагаю им починить. Пока они чинят все, что сломано, успевают напрактиковать и разные подходы, и порассуждать
Форматы навскидку: блиц-опросы, парный кодинг, кодинг забавных демок, рефакторинг, обратный доклад (когда ученик пытается презентовать тему, словно это он - ментор), тестовые собесы.
Главное, чтобы задания были челленджами и помогали закреплять пройденное
Помним, как это - быть новичком
Без этого учить будет сложновато: объяснять человеку надо на том уровне, какой он может осмыслить, иначе урок пройдет без толку.
Тут важно прицельно вспоминать, с какими сложностями сталкивался сам при освоении темы.
Я сама стараюсь по ходу роста запоминать точки моей личной боли в учебе, это потом очень помогает учить других продуктивнее.
Ну и последнее: если менти не хочет учиться, если он не заинтересован, если нет контакта, можно попробовать разово поговорить, но, если это не спасло, этого товарища больше не менторить. Не хочет - и ну его.
Забыла еще одну фишечку, так что вот:
Акцент на проблеме
Классно рассказывать о каком-то концепте в прицельной связке с проблемой, которую этот концепт решает.
Он же был создан для чего-то, с какой-то целью, понимание которой поможет лучше встроить концепт в систему знаний
"Вот у нас промисы" - это, хорошо, но когда ученик понимает, а нафига они нужны, какую боль закрыли, тут у него сразу эти промисы лучше лягут.
Пусть он этот коллбэк-хелл, который до промисов был, руками потрогает, самолично напишет, ужаснется и обрадуется тем промисам 😂
Тред (Наталия Давыдова)
Среда
Вчера не успела написать тред о том, как воспитать в стажерах и джунах проактивность, если мы говорим о менторстве на работе.
Попробую сейчас расписать, как я это вижу.
Дать четкие инструкции, к кому за каким вопросом ходить
Новички в профессии, что логично, не в курсе, кто за что в команде отвечает и у кого какие компетенции, поэтому всю свою тыщщу вопросов они кидают в ментора.
В худшем случае, ментор будет на все отвечать сам.
Правильный вариант - дать джуну четкое понимание, с каким вопросом к кому стучаться. С этим - к тестеру, с вот тем - к аналитику, а по этой проблеме - к бэкам.
Первое время, все равно, все вопросы будут сыпаться ментору, и задача ментора - раз за разом адресовать к нужным людям
Показать, что окружение доброжелательно настроено
Несмотря на то, что джуну сказали, за какой инфой к кому ходить, джун, скорее всего, будет морозиться и, поначалу, тыкать ментора.
Новичку кажется, что за неправильный вопрос его обругают или сразу уволят за бестолковость
Поэтому лично я говорю не просто: "сходи узнай у тестера Васи", а "сходи узнай у тестера Васи, он классный и совсем не страшный, он все тебе расскажет".
К "классному и не страшному" морально идти куда проще, чем к просто незнакомому чуваку.
Показывать джуну, что он - часть команды
Прямо акцентировать на том, что новичок, несмотря на свою маленькость, уже полноценный член команды. Так что зовем его на командный движ, приглашаем высказывать мнение по дискуссионным вопросам и поощряем это высказывание
То есть, буквально, команда решает за код-стайл, все высказывают мнение, джун молчит. Спросите его, а что он думает, а почему, а как ему больше нравится, покажите, что его мнение такое же важное, как у остальных участников процесса.
Кто-то может сказать: "да шо там тот джун понимает, да как ему давать права". Это тоже позиция, но не та, которая приведет к быстрой интеграции джуна в команду и проактивному поведению.
Проактивность же про права и ответственность, если не дать прав, проактивности не выйдет
Показывать джуну, что его работа значима
Не "компания на тебя деньги тратит, а ты тут кнопки красишь", а "круто, что наконец-то кноки покрашены, у ребят все руки не доходили".
Большой вклад всегда начинается с маленьких шагов. И маленькие шаги могут сделать жизнь куда лучше
Если джун проявляет энтузиазм, не гасить его
Если вы хотите, чтобы человек вел себя с вами, как вам нравится, имеет смысл поощрять желательное поведение. Стало быть, если вы хотите проактивного джуна, поощряйте, когда он что-то предлагает, воспринимайте его идеи всерьез.
Это не значит, что любую идею надо непременно принимать, нет. Это значит, что "предложил - молодчина". Это значит, что, если что-то сделать нельзя или можно, но потом, надо объяснить, а почему нельзя или почему потом.
"Нельзя потому что плохая идея/рванет/херня" - не объяснение
Объяснить важно корректно и понятно, чтобы вводить человека в контекст проекта с разных сторон, чтобы у новичка формировался какой-то пак знаний о внутрянке проекта, планах на него, процессах, как в общем, так и в деталях
Если резюмировать, на мой взгляд, воспитание проактивности строится на трех китах:
- поощряем зачатки проактивности;
- работаем со стандартными новичковыми страхами;
- выказываем уважение к новичку, как к любому другому разработчику;
Тред (Наталия Давыдова)
@itunderhood Я бы добавил про безопасность делать ошибки. В идеальной системе никакое действие джуна не должно приносить непоправимый ущерб. Если такого нет, то возникает желание за каждым чихом бежать к тимлиду
Кстати, тоже отличный момент. Джун не должен мочь ронять прод и удалять незабэкапленные базы данных парой неправильных функций, иначе просто не выйдет интегрировать его нормально.
Это тот уровень ответственности, который нельзя взваливать на новичка. twitter.com/daniil_vodopia…
@fxfxdxdx @itunderhood Менторить обязательно, без этого они как раз и будут разбегаться. А то можно оказаться в ситуации "все вокруг синьоры, за водкой послать некого", т.е. забивание гвоздей микроскопом и отсутствия резервов рабочей силы.
Это - одна из важнейших причин, зачем на проекте нужны джуны.
Скидывать новичковую рутину на миддлов/сеньоров - прямой путь к тому, что они поразбегаются или выгорят.
Если на проекте есть джуны, то им эти новичковые задания на радость и пользу, а старшие смогут поменторить. twitter.com/kleschby/statu…
В долгосрочной перспективе это лучше, чем если простую верстку/легкие компоненты будут, позевывая, левой ногой, писать миддлы.
Куда интереснее качать свои софты, менторя джунов, или иметь возможность сосредоточиться на задачах посложнее, отдав простые задачи младшим для кача
Предвижу аргументы про "этих джунов наберешь, а они потом разбегутся через месяц", но эту тему предлагаю поднять позже, прицельным тредом
У меня тут вся неделя, получается, про софты и то, как их можно применять на радость команде.
А давайте поговорим о случаях, когда в команде по софтам не очень, а то и вообще из рук вон плохо.
Сталкивались с таким? Что делали в этой ситуации?
Пятница
Сегодня поговорим о том, зачем имеет смысл брать стажеров/джунов в команду и как к этому всему подходить.
А начнем с того, чего не стоит делать при найме джунов и их адаптации, чтобы не разочаровываться и не тратить впустую свое время и время бизнеса.
из новичка за месяц до миддла специалиста вырастить нереально. Это так не работает.
Я, реально, сталкивалась с кейсами, когда нанимали джуна-нулевку и ждали, что он за месяц-другой "выучит весь JS наизусть" (цитата) и начнет фигачить здоровенные фичи.
Если нужно, чтобы кто-то бегом влился в процессы и начал закрывать таску за таской, это не про джуниор-позицию. Это миддл или сеньор, в зависимости от того, что там за таски и какое соотношение спешки к качеству приоритетно.
При адекватном менторинге, бизнес-польза от джуна пойдет через 1-2 месяца. Вот тут уже будут активно закрываться задачки, и есть натурально риск обвалить ревьюеров мерж-реквестами 😂
Конкретно мои стажеры полноценно раскрылись примерно через 1.5 месяца совместной работы.
если джуну не дать ментора, расти он будет в неконтролируемом темпе, хаотично и как попало.
Если оставить новичка один на один с кодом, мол, разбирайся сам, он потихоньку что-то сможет понять и как-то решить задачу. Но если нужно быстрее и лучше, без ментора никак
Тут надо решить, что мы хотим растить в итоге: условно, сорняк или цветок. Это разные требования и разные подходы к обучению и мотивации.
Если растим "сорняк", то времени на него тратим меньше, результат получаем непредсказуемый, а еще человек с бОльшими шансами сбежит.
Если растим "цветок", то мы в него вкладываемся: даем ему план развития, выделяем ментора, который хочет менторить, выделяем ментору время, чтоб он не выгорел в угли, нарезаем джуну частично посильные задачи на вырост.
Это более затратно, но рост будет быстрее и лояльность выше
В план развития не стоит пихать все фреймворки разом, алгосики, CS и "JS наизусть".
Если не расставить приоритеты человеку и не дать ему внятный, измеримый и выполнимый план, получите на выходе офигевшего, выгоревшего и бесполезного джуна. Кому оно надо?
Не стоит ждать, что джун сразу поставит внятные дедлайны задачам и впишется в них
Ставить правильные дедлайны и верно оценивать задачи - тоже навык, который приходит с опытом. Поэтому лучше не ставить новичка на задачи, которые горят еще с прошлого релиза.
Резюме: начинающие специалисты - это инвестиция как в будущее компании, так и в миддлов, которые будут учиться менторить и тем прокачивать свои навыки.
Ждать от джунов выхлопа сразу бесполезно, но и думать, что джуны не нужны вообще - тоже не стоит. Об этом будет следующий тред
И еще очевидный момент. Ежели джуну не платить, то он или сбежит, или помрет.
ЗП придется держать по средней джуновской зп рынка и потихоньку повышать.
Потому как лояльность лояльностью, а кушать всем хочется. Плюс, повышение - это отличный мотиватор фигачить и расти быстрей
Тред (Наталия Давыдова)
О том, что с нанятым джуном не делать, мы поговорили.
Теперь поговорим о том, а как растить, чтоб продуктивно было. Опять же, я так ращу и ребят, которых менторю вне работы, и стажеров на работе. Делюсь именно моим подходом.
С джунами, вопреки расхожему заблуждению, не надо сидеть круглые сутки, над ними не надо висеть и бдить с контролем. Это не маленький ребенок, ему не нужна "мамка" каждые пять минут.
В принципе, часа-полутора в день достаточно будет на все про все поначалу, потом - меньше
Первое, что важно для продуктивного обучения: научить правильно задавать вопросы. Правильно заданные вопросы снимают кучу нагрузки с ментора и дисциплинируют менти.
Я считаю, что вопрос от менти должен строиться так:
- текстовое описание проблемы со скринами;
- список вещей, которые человек попробовал, и результаты этих попыток;
Пока нет "списка" - ментора не дергаем. Пока не прошло, условно, 30-90 минут разнообразных попыток - тоже
Количество затраченного на попытки времени зависит от того, что не получается и что мы, собственно, делаем. Это лучше обговорить на берегу, чтобы джун точно знал, раньше какого времени ментора имеет смысл беспокоить только в крайнем случае
В итоге, мы получим ситуацию, в которой, по ходу развернутого написания вопроса, с 90% шансами, джун сам разберется, где и что пошло не так. И до ментора будет долетать только самое актуальное и действительно важное.
Второе: научить декомпозировать и дебажить. Если говорить человеку сразу: поди туда, поправь то, он не особо научится чинить свои ошибки и не так быстро станет самостоятельным, как нам хотелось бы. Соответственно, такой подход, в перспективе, натратит больше времени ментора
Как учим: даем алгоритм поиска проблемы в коде, дальше, в рамках ответа на вопрос помогаем пройти путь по этому алгоритму несколько раз в режиме монолога. Аналогично - с декомпозицией.
Несколько таких заходов, и самостоятельность стажера сильно увеличивается.
Третье: дать направление роста.
Выдать книгу/статью/видосик (актуальные для роста на этом проекте) и предложить потом обсудить минут на 15-30. Потом еще и еще. Выдавать имеет смысл по одному за раз.
Лично я одной из первых вещей люблю кидаться "Чистым кодом". Отличная штука.
Составить тезисный план развития на испытательный срок (не напихивая туда все лучшее сразу) и синкаться по нему 1-2 раза в неделю, тоже минут на 15.
План должен включать как фундаментальные вещи для общего развития, так и конкретику для данного проекта.
Четвертое: код-ревью.
В код-ревью делаем акцент на "почему надо не так, а эдак". Чем развернутее поначалу будет ваше "почему", тем быстрее менти вырастет.
Отдельно делаем акцент на том, что один раз объясненную ошибку второй-третий раз повторять - безобразие.
Ну а поскольку мы - не роботы с идеальной памятью, я люблю предлагать джунам вести какой-то текстовый файл, в котором они первое время будут хранить объясняшки из ревью.
Выполнять или нет - на их усмотрение, главное, чтобы одни и те же косяки не мигрировали из мр в мр.
Еще один классный момент: подключать джуна к перекрестному ревью, чтоб он и сам поревьюить мог. Это и понимание код-стайла проекта прокачает, и самого джунчика как специалиста.
Лично меня это, в свое время, очень бустануло: качается сразу куча навыков.
Пятое: повышаем градус ответственности.
Сначала - маленькие баги, потом маленькие фичи, потом фичи побольше;
Сначала - делаем в своем темпе, потом постепенно начинаем помещаться в релиз;
Сначала - ставим дедлайны совсем на глазок, потом постепенно повышаем точность;
В результате, мы даем стажеру не рыбу, а удочку, чтобы эту рыбу ловить, и освобождаем себе кучу времени, сил и нервов.
Если человек понимает, как отлавливать баги, как разбивать страшную задачу на нестрашные, как задавать вопросы и куда расти, он очень шустро прогрессирует
Тред (Наталия Давыдова)
Ну и последнее. А зачем брать стажеров и чему-то там учить, если можно взять готового миддла, который сразу все сможет, без этих ваших подготовительных работ?
Потому что миддлам тоже хочется расти
И если им регулярно подсовывают слишком простые таски, миддлы быстро свалят в закат и будут правы: в чем кайф сидеть на скучных задачах и тем портить себе карьеру в перспективе?
А деньги на найм и онбординг уже потрачены. Вот радость-то
Потому что миддлов на всех не хватает
Джунов много: умных, толковых, дельных ребят, готовых вгрызаться, пашущих так, что только искры летят.
Берешь такого, учишь под себя, через месяцок-другой он тебе уже таску за таской закрывает с азартом.
А миддла поди найди еще
Первый тред: зачем вообще менторить и что это дает. Перед тем, как начинать технически растить, например, джуна или миддла, надо понимать, а нафига нам самим это надо. Какой профит-то? Иначе любой менторинг превратится в обузу. Ну и о минусах поговорим тоже.
Потому что менторство растит не только джунов, но и самих миддлов/сеньоров
Я про это на днях уже писала тред, вот этот - twitter.com/itunderhood/st…
Потому что из таких джунов при адекватном отношении вырастают чертовски лояльные сотрудники.
Потом эти же бывшие джуны воспитают вам новое поколение стажеров, когда понадобится расширяться 😄
Стандартный противоджуновский аргумент: а вот им будешь платить, а они уйдут.
Возможен ли такой исход? Возможен. Можно ли, тем не менее, дискутировать с этой позицией? Даже нужно.
Все сотрудники так или иначе уйдут, и что теперь, не вкладываться в их обучение? Отправишь так миддла на конфу, а он возьми да и прими после оффер повыше. Может такое быть? Может.
С такой логикой легко получить ребят, которые не растут или сваливают туда, где в них вложатся
Основная причина ухода джунов - низкая зп.
Если вы нанимаете джуна на нерыночную зп или не повышаете его по ходу дела, да, он уйдет, как и любой другой сотрудник.
И дальше каждая компания сама решает: хочет ли она промоутить этого сотрудника или вкладываться в найм нового
Стало быть, чтоб процесс был повыгодней, надо оптимизировать обучение джуна и процесс менторства, а не экономить крохи на, и без того, маленькой зп.
Но вообще, процесс промоушна сотрудников внутри компаний сейчас болезненный не только для джунов. Многим миддлам выходит тоже проще сменить компанию, чем искать продвижения в текущей.
Вторая основная причина ухода джунов - всратый проект
Какое-то дикое легаси на неподдерживаемых фреймворках, страшный лапшекод, который не понять без пол-литра кофе раз в час, отсутствие пресловутого менторства, горящие сроки и прочий чайка-менеджмент
Такие компании говорят: "вооот, мы наймем джуна, а он свалит, не принеся прибыли". Но, будем честны, оттуда любой свалит, забив на прибыль, кроме особо дзеновых ребят со стальными нервами.
Это не вина начинашек, это вина тех, кто организовал процессы таким дивным образом.
Я очень много общаюсь с джунами сейчас, и не видела за год ни одного, кто ушел бы с хорошего проекта, где учат, где вменяемо платят и не выматывают нервы.
Ребята прикипают к такими проектам, становятся очень лояльными сотрудниками и чуть ли не зубами цепляются, чтобы остаться
Бывают ли исключения? Несомненно. Как бывают (редко, но все же) джуны не мотивированные, незаинтересованные и не вписывающиеся в команду. Но таких мало.
А вот понимающих, ради чего пришли в профессию, активных и заинтересованных - дофига. Бери - не хочу.
Тред (Наталия Давыдова)
Воскресенье
Небольшой тред про самообучение: как лучше организовать процесс, если хочется поднять уровень.
Сама я по этой логике сейчас расту в миддл+, но подойдет и джунчикам, получившим первую работу, например.
Мне лично кажется, что учиться в хорошей компании проще, чем одному (и это при том, что очень долго я училась исключительно в одиночку), поэтому сейчас я занимаюсь в мини-группе с людьми, с которыми мне комфортно и с которыми совпадают цели.
Так что, первый совет - найти 1-3 ребят плюс-минус вашего уровня/целей и организоваться учиться совместно.
Больше, чем 4 человека, брать не советую: такую команду сложно организовать.
Если кто-то несколько раз пропускает по неуважительной причине - лучше убрать из команды
Окей, хорошо, собрались, а что делать дальше?
Парный кодинг. Можно решать задачки вместе, можно делать какие-то некрупные сниппеты. На большие проекты закладываться не советую: есть большой шанс потерять и мотивацию, и команду в процессе.
В чем плюс парного кодинга:
- классно наблюдать за тем, как мыслит другой человек, как подходит к задаче;
- привыкаешь кодить и рассуждать вслух;
- пока пишешь сам, второй участник может подсказать и ход получше, и указать на недостатки кода;
Вместе учиться
Читать книги, проходить курсы, экспериментировать, обсуждать какие-то сложные места.
Что недопонял один - ухватит и объяснит второй. С чем не сталкивался в работе один, второй мог видеть и тыкать на живом проекте и делиться опытом.
Это очень обогащает
Код-ревьюить друг друга
Например, встречаетесь на полтора часа. Час кодите каждый в своем углу, обсуждая общие подходы к задаче, потом обмениваетесь кодом и полчасика ревьюите получившееся.
Я считаю код-ревью крутым упражнением, прокачивающим обоих участников процесса.
Именно по этой причине, я за то, чтобы джунов с первых же недель на новой работе подключали к перекрестному ревью.
Ревью развивает навык чтения чужого кода, умения понять, что и где не так, обосновать это и найти варианты, как сделать лучше
Конкретно у меня сейчас 4 командных занятия в неделю по 1.5+ часа (во внерабочее время)
Одно занятие - парный кодинг, три - совместная учеба. Это тяжелый график, подходит для тех, кому хочется бустануться скорее
Если вам не горит срочно вырасти, оптимально - 2-3 раза в неделю
Ну и несколько фишек про самообучение, когда учишь сам с собой что-то, в одиночку.
Мне очень помогает делать конспекты. Причем, такие, чтобы потом, когда заглянешь, сразу восстановить всю цепочку логики и знаний.
Конспекты веду в Notion, сопровождаю кусками кода и схемами.
Зачем писать, если можно нагуглить? Затем, что так лучше запоминается: подключаем моторную память и вот это все. Ну и нарисованные схемы помогают лучше раскладывать и усваивать инфу.
Да, так получается медленнее охватывать материал, зато он застревает крепче и лучше.
Если это видео-курс, и лектор говорит: "а сейчас мы будем делать такую-то штуку", я торможу видео и пытаюсь сделать штуку сама. Когда сделала, возвращаюсь к видео, не раньше.
Опять же, это сильно замедляет, но повышает эффективность процесса.
В среднем, на час видеоматериала у меня уходит 2-3 часа на усвоение и обработку, на параллельные эксперименты, на дополнительный гуглинг и конспекты.
С книгами и текстовыми туториалами посчитать сложнее, но читаю я их по той же логике.
Ну а глубже закрепить какие-то темы мне помогает менторинг или код-ревью на добровольных началах. Например, я время от времени ревьюю чужие тестовые задания, когда с таким обращаются в личку или в чат коммьюнити.
А вы как учитесь чему-то новому? Как не забываете свежепрочитанное/просмотренное?
Тред (Наталия Давыдова)
Ну а я завершаю свое вещание.
Спасибо всем, кто читал, спасибо пригласившим оргам. Это был классный и интересный опыт 🌸
И, напоследок, тред со всеми тредами моей недели
Приветище всем! На этой неделе в вами буду я, Наташа Давыдова, фронтенд-разработчица из питерского финтеха Devim и "матерь джунов" в тви.
Обо мне:
twitter.com/itunderhood/st…
Ну что ж, погнали по сегодняшней теме: нетоксичные коммуникации. Собственно, начать имеет смысл с того, а зачем вообще переводить коммуникации в нетоксичную тональность.
Тред о нетоксичных коммуникациях: зачем они нужны?
twitter.com/itunderhood/st…
Окей, в прошлом треде я говорила о том, что нетоксичный подход экономит силы и время, если смотреть на него с утилитарной точки зрения, а сейчас попробую рассказать, что же это за подход и как им пользоваться.
Тред о нетоксичных коммуникациях: как реализовать?
twitter.com/itunderhood/st…
Первый тред: зачем вообще менторить и что это дает. Перед тем, как начинать технически растить, например, джуна или миддла, надо понимать, а нафига нам самим это надо. Какой профит-то? Иначе любой менторинг превратится в обузу. Ну и о минусах поговорим тоже.
Тред о менторстве: зачем менторить?
twitter.com/itunderhood/st…
Про то, зачем менторить, мы поговорили. Теперь поговорим о том, как менторить. Я сразу скажу, что говорю именно о моем опыте и о том, какие фишечки сработали на моих менти.
Тред о менторстве: как менторить?
twitter.com/itunderhood/st…
Вчера не успела написать тред о том, как воспитать в стажерах и джунах проактивность, если мы говорим о менторстве на работе. Попробую сейчас расписать, как я это вижу.
Тред о менторстве: как воспитать проактивность в джунах и стажерах?
twitter.com/itunderhood/st…
Сегодня поговорим о том, зачем имеет смысл брать стажеров/джунов в команду и как к этому всему подходить. А начнем с того, чего не стоит делать при найме джунов и их адаптации, чтобы не разочаровываться и не тратить впустую свое время и время бизнеса.
Тред о том, что не стоит делать при найме стажеров и джунов
twitter.com/itunderhood/st…
О том, что с нанятым джуном не делать, мы поговорили. Теперь поговорим о том, а как растить, чтоб продуктивно было. Опять же, я так ращу и ребят, которых менторю вне работы, и стажеров на работе. Делюсь именно моим подходом.
Тред о том, как продуктивно растить нанятого стажера/джуна
twitter.com/itunderhood/st…
Ну и последнее. А зачем брать стажеров и чему-то там учить, если можно взять готового миддла, который сразу все сможет, без этих ваших подготовительных работ?
Тред о том, зачем вообще нанимать джунов:
twitter.com/itunderhood/st…
Небольшой тред про самообучение: как лучше организовать процесс, если хочется поднять уровень. Сама я по этой логике сейчас расту в миддл+, но подойдет и джунчикам, получившим первую работу, например.
Небольшой тред о самообучении:
twitter.com/itunderhood/st…
Тред (Наталия Давыдова)