У вас появился стажёр. Как сделать стажировку продуктивнее для стажёра, вас и команды: что сделать до выхода, о чём помнить и делать в процессе и при завершении. Часть 2/2
О регулярном решении задач как на leetcode/codewars и чем это полезно; 1-to-1; о делегирование ответственности; взращивании ответственности и уверенности в себе; обратная связь в процессе стажировки и в конце. Умышленно опускаю этап найма, потому что он объёмный и это отдельная большая тема, и что будет после стажировки — тут тоже варианты зависят от компании и ситуации.
У вас появился стажёр. Как сделать стажировку продуктивнее для стажёра, вас и команды: что сделать до выхода, о чём помнить и делать в процессе и при завершении. Часть 1/2
Умышленно опускаю этап найма, потому что он объёмный и это отдельная большая тема, и что будет после стажировки — тут тоже варианты зависят от компании и ситуации. В первой части: что сделать и подготовить перед выходом; про чек-лист на стажировку; виды встреч и что подготовить для них; день выхода; первые две недели.
Почему отказывают на собеседованиях на разработчика: отказы по soft/hard и примеры из опыта
5 примеров причин отказов на собеседованиях на фронтенд-разработчика по soft-навыкам + примеры отказов по hard-навыкам. О навыках и роли, как проверяют soft и hard-навыки, типы задач на технических собеседованиях и ещё 26 минут о собеседованиях — ссылка на видео.
Видео — сборная нескольких постов по теме:
Собеседования. Почему отказывают. Часть 1
Собеседования. Отказы по soft. Часть 2
Собеседования. Отказы по hard. Часть 3
Ссылки из видео:
Подборка постов на тему базовых знаний для позиции стажёр/джуниор. Что нужно знать в первую очередь: JS, CSS, HTML, инструменты, тестирование, абстракции в программировании — в виде подборки в Instagram и в виде одной статьи в Vk.
⌛ ТАЙМ-КОДЫ
00:20 — 00:55 О моём опыте собеседований.
00:55 — 03:10 Что такое софт и хард навыки (soft и hard skills), как проверяют софт и хард навыки, технические и софт-собеседования, типы задач на технических собеседованиях.
03:10 — 03:30 Не только компания собеседует соискателя, но и соискатель собеседует компанию.
03:30 — 06:06 Навыки и роль. Примеры ролей. Примеры "сдвигания" ролей.
06:06 — 07:07 Причины отказов по софт. Примеры софт-навыков. Soft-skills vs hard-skills vs роль.
07:07 — 07:41 Пример качества, которое не подходит ни под одну роль.
07:41 — 08:38 Какие примеры буду приводить в видео. Почему софты — тема деликатная. Почему их важно проверять и почему на них смотрят. Все причины с примерами и с "почему это важно":
08:30 — 10:28 Причина №1: не определился чем хочет заниматься (стажёр/джуниор).
10:28 — 12:21 Причина №2: самостоятельность.
12:21 — 15:54 Причина №3: открытость. Вопрос об ошибках.
15:54 — 18:04 Причина №4: распыление.
18:04 — 20:41 Причина №5: внимательность.
20:41 — 21:20 О причинах отказов по хард. 2 момента: навыки не подходят под роль и навыки ниже ожидаемого.
21:20 — 22:10 Как нивелировать и спасти 2-й момент.
22:10 — 22:31 Необходимые технические навыки для стартовой позиции: ссылка на пост
22:31 — 24:31 Примеры про хард "ниже ожидаемого" и их "лечение".
24:31 — 24:45 Отказы редко бывают по одной причине, это всегда суммарный результат. Больше информации о собеседованиях — у меня в Instagram, YouTube и Patreon.
24:45 — 24:53 С августа стала тимлидом.
26:08 Спасибо, что досмотрели видео :) Немножко неудачных дублей из всех 10+ попыток вступить после 3х месяцев перерыва))
Q&A #3: причины отказов, трудоустройство, выгорание, 1-to-1 встречи, архитектура, книги по программированию
1. Нормально ли узнавать причину отказа на собеседовании?
Да, полностью нормально и даже хорошо и стоит. Потому что:
- Узнаëте, что вам нужно подтянуть, это диагностика со стороны.
- Есть вероятность получить подробную обратную связь с деталями и даже полезными ссылками и рекомендациями. Невелика, но есть.
- Ну и ещё на той стороне видят, что человеку не всё равно, обратную связь спросил и что ему нужно подтянуть — вдруг через некоторое время снова будете пробовать в эту компанию, а у них история, что в прошлый раз вам было не всё равно.
2. Какие шансы устроиться на работу верстальщиком? Знаю HTML и CSS, JS учу, работы есть
Зависит от уровня знаний и... софтов.
В целом спрос есть, рабочие руки и головы всегда нужны.
Детали зависят от города (хотя уже больше возможностей работать полностью удалённо), уровня и качества знаний и практики, подойдёте ли в конкретную команду (именно сматчитесь ли как люди).
А по софтам: на сколько обучаемы, самостоятельны, усидчивы, внимательны, целеустремлённы, заинтересованы, дружелюбны, инициативны, восприимчивы к критике и прорабатываете ли её.
При прочих равных с этими прокаченными софтами возьмут с большим желанием, потому что человек быстрее вырастет.
О собеседованиях и поиске работы у меня в Instagram есть много постов по тегу #antonina_list_jobsearch, буду постепенно перевозить в вк самое актуальное и отмечать тегом #jobsearch@listopadova_a
3. Что такое встречи 1-1?
1-1 пишу сокращённо, это 1-to-1.
Это встречи руководителя с подчинённым или наставника со стажёром 1 на 1.
Обсуждаются насущные проблемы, даётся обратная связь, можно с чем-то помочь. Из целей и задач таких встреч ещё: мотивация, быть в курсе и держать контакт, быть рядом, поддержка, обучение, быстрая реакция на боли, развитие, личные планы и цели, можно обсудить любые больные и интересные темы + личные, которые нельзя обсуждать публично.
У меня на время испытательного срока такие встречи раз в неделю, а потом раз в 2 недели с каждым фронтом команды. Ну и у меня с моим руководителем тоже есть такие встречки?
Правда у меня раз в неделю, я слишком быстро созревающий фрукт и у меня много вопросов и на поговорить))
4. Как ты выстраиваешь архитектуру в реализации сложных проектов?
- Я не начинала сложные проекты с нуля: когда приходишь в продукт, он уже существует, у него уже есть архитектура, или по крайней мере её основной костяк.
- Зависит от ситуации. Буду исходить из цели, задачи и технологий. И ещё сроков и планов масштабирования. Не верю, что есть одно единственное лучшее решение для всех задач.
- Обязательно посоветуюсь с теми, кто это уже делал, а не буду строить замок в гордом одиночестве. И 10 раз подумаю.
А про проекты и пункт (1): я работала с двумя продуктами. Первый в Яндексе, второй сейчас в Рамблере. Когда пришла в Я, проекту было меньше года, но я была стажёром и до вопросов архитектуры ещё не дошла. Нынешний проект младше меня на пару лет. А мне 25)) Нынешней реализации, конечно, не так много лет, но тоже прилично. Архитектурно в нём немного меняем, но это возможно только медленно и в рамках уже существующей архитектуры.
UPD: появился небольшой опыт «с нуля», теперь могу сказать то же самое: исхожу из цели и задачи))
5. Как справляться с выгоранием?
Когда горела в прошлом году по осени, это было скорее сильное тление несколько месяцев, чем горение. Вытащила в ресурс ситуация: за пару недель я стала ответственной за разработку редизайна десктопа огромного проекта, у нас ушёл тимлид, и вообще всё дико резко поменялось, нужно было резко взять себя в лапки и затащить, терапия шоком вышла.
Ещё важное, что мне очень помогло: отношение руководителя. Для меня отношения очень важны — я могу ради них придти и из-за них уйти, даже если в первом случае остальное не фонтан, а во втором случае — фонтан.
В декабре, месяц назад, было не тление, а очень не очень. Вытащила мысль, что никто и ничто не в праве и не должно быть способно сделать так, чтобы я тратила своё невосполнимое время на просмотр потолков и стен, тем более слёзы. Это же моя жизнь — я могу либо в хорошем настроении жить классную жизнь и успевать делать много крутых штук, либо втыкать в потолок, ничего не хотеть и не двигаться. И как мне реагировать выбираю только я. И буквально за пару дней эта мысль вернула меня в полную норму))
А ещё из наблюдений:
- Чувствую себя лучше, когда работа занимает не 100% моих мыслей. Надо переключаться, иметь что-то кроме работы, иметь жизнь вне работы, увлечения, интересы.
Речь не о кардинально другой деятельности, она может быть связана с профессией. Главное не занимать всё нерабочее время мыслями именно о рабочих задачах и ситуациях.
- Сон, еда, гулять. У меня с последним беда: в декабре гуляла ноль раз? А в ноябре вроде 1... Некогда было просто невероятно)) Но в январе уже 4 раза выходила из дома не на работу и не до магазина :)
- Соблюдать личные эмоциональные границы. Никто и ничто не вправе вас поджигать. Только вы выбираете как вам реагировать. Одно дело это знать и соглашаться, другое — выйти на уровень практики. Вот я знала давно, а поняла для применения буквально пару недель назад.
6. Можешь посоветовать актуальные книги по фронтенду? Можно классику по программированию
Актуальное в онлайне :)
Книги — более фундаментальная история :)
Я читала JavaScript Подробное руководство (книга с носорогом) и JavaScript Сильные стороны (книга с бабочкой).
Сейчас мучаю Чистый код. Мучаю, потому что первая половина зашла легко и интересно, а потом начались листинги с Java на несколько страниц, отвлеклась, некогда, вот возвращаюсь (upd: дочитала).
В планах на год дочитать Чистый код, прочитать Структура и Интерпретация Компьютерных Программ (говорят, если её прочитать и прорешать, во лбу загорится 3-й глаз?) и Грокаем алгоритмы (с учётом СИКП не уверена, что дойду до них).
Дополнение к эфиру 02.10.21 (5 вопросов)
Этот пост — моя подготовка к эфиру с Владимиром Балун. Я накануне просто села и выписалась. Информация между эфиром и этим постом пересекается только частично: что-то сказать забыла, что-то не успела, а что-то в эфире было новым и ответами на дополнительные вопросы и уточнения.
1. Рост в карьере и зарплате для программиста
Устроиться в маленькую неизвестную компанию как правило проще. Уровень требуемых навыков ниже. Если говорить про джуниора, то в большинстве случаев пойти на стажёра в крупную известную компанию я считаю в долгосрок более выгодным, чем пойти в маленькую неизвестную младшим или даже мидлом.
Вопрос зарплат для меня на старте не стоит, потому что:
Стажировка идёт несколько месяцев и после неё можно выйти на младшего разработчика с зп выше, чем без стажировки. Что выгоднее: быть 2 — 4 месяца с зп X, а потом с Х2 или сразу почти на условно 1,5X и быть с ней ещё год? Первое выгоднее и с точки зрения получения опыта, и сточки зрения роста зп.
Если стажировка в крупной компании, известная стажировка, то кроме крутого опыта даёт ещё и говорящую за себя строчку в резюме. Говорящую, потому что у нанимающих разработчиков есть понимание и доверие к качеству этой строчке.
В долгосрок это работает лучше. Плюс считаю, что стоит думать и о собственном развитии хард и софт, и о том, что через несколько лет будет рассказывать о вас ваше резюме.
При выборе места работы смотреть стоит не только на зарплату здесь и сейчас, но и на то, какой тут возможен рост, занимаются ли тут развитием, какая политика повышения зарплат в компании, какие перспективы роста по грейдам, даже будет ли это место работы полезно дополнять резюме.
Про зарплаты и способы их повышения у меня есть большой пост в Ig. Там поместилась только половина, а целиком он есть в Newsletter-подписке.
В плане роста что важно:
Задача разработчика — не писать код, а решать поставленные задачи. Написание кода — это инструмент, с помощью которого программист решает задачи, но не самоцель. Развивать хард-навыки нужно и нужно знать, что именно нужно развивать. В рамках работы это нужно проговаривать с руководителем.
Если в проекте используется технология X, то нет смысла рассчитывать, что если хорошо освоить Y и Z и оставить на начальном уровне X, повысят должность или зарплату из-за прокаченных хардов. Нужно узнавать и прокачивать то, что актуально и используется в проекте, на нынешнем месте работы.
Нужно проявлять инициативу. Если человек ноет, что всё сложно, что ему лень, неохота, то ни у кого не будет желания повышать и этим наделять человека ещё большей ответственностью. Если человек активный, причём я не про крайность, это хорошо. Это может быть даже просто спокойное делание в срок. Стабильно выдавать хорошие результаты в ожидаемые сроки — это очень здорово.
Проявление инициативы — это помощь другим, взятие на себя дополнительной ответственности и её оправдание, вызов что-то сделать и делать.
Про опыт. Качество важнее количества. За одно и то же количество лет можно наработать разный объём опыта. Очень разный. Делать одно и то же изо дня в день и ничего нового не узнавать — в долгосрок для роста невыгодно.
Софты очень важны. Тут и взаимодействие с другими людьми, и понимание целей, глобальное видение "куда двигается проект и куда его надо двигать", умение доносить свои мысли так, чтобы их понимали. Умение понимать других. Умение тактично и результативно давать обратную связь и умение получать её. Эмпатия, планирование, ответственность, открытость. Много что.
Это всё нужно развивать. Кому захочется наделять дополнительной ответственностью безответственного и неисполнительного? Осознанно — мало кому. Например, для того, чтобы стать тимлидом, с одной стороны достаточно сильных хардовых навыков.
Но много ли кто захочет долго работать под руководством человека, который не занимается ничем кроме технических моментов, не интересуется мотивацией людей, их целями, не помогает им к ним идти, не уделяет им внимание? Немного. В том числе из-за этого бывает повышенная текучка кадров. Людям важно человеческое отношение к себе со стороны других людей.
Можно стать тимлидом будучи технически мидлом и с хорошо развитыми софтами. Можно вообще по-всякому.
Тут ещё вопрос: "в кого хочется расти?". В тимлида, в техлида, в просто очень сеньорного сеньора.
Время тоже может быть разным. Если знать, куда хочется идти и действовать, то можно пройти путь сильно быстрее, чем если просто идти куда-то.
Желание роста стоит проговаривать на 1-to-1 с руководителем. Спрашивать, что нужно подтянуть, изучить, улучшить, чтобы получить следующий грейд и/или повысить зарплату. Если на той стороне будут знать о ваших желаниях и целях, то смогут помочь.
Ну либо поймёте, что тут с этим не помогут и нужно принять решение идти искать место, где занимаются развитием своих сотрудников и где в этом заинтересованы. Где-то выгоднее иметь в команде "вечного джуна" для простых задач. Где-то будут растить. Везде по-разному.
Опять же возвращаемся к софтам для руководителей. Не все хотят заниматься обучением и людьми, даже если это их непосредственные обязанности. Про это стоит узнавать на собеседовании.
Я предпочитаю — и это в принципе мой стиль жизни и поведения — сначала делать и достигать какого-то уровня, а затем подтягивать должность/зарплату. Я не люблю просить авансом за ещё недостигнутое.
Я хочу сначала стать способной и подходящей на роль, а затем получить эту роль официально. Мне так комфортнее, чем если бы я сначала стала официальным руководителем группы и плохо выполняла свою работу и обязанности. Я стала перенимать обязанности своей нынешней роли за несколько месяцев до того, как стала тимлидом.
2. Junior фронтенд разработчик — каким я его вижу
Примерно опишу портрет того, кого я бы взяла на позицию джуна в нашу команду при наличии вакансии. Исходя из своего опыта работы, из того, что стажировала, обучала и собеседовала.
— Человек уже прошёл некоторую подготовку. Самостоятельно и/или курсы. Приложил много самостоятельных усилий, наработал на этом результат, базовые знания.
— В идеале есть хотя бы минимальный не домашний опыт. Это может быть любая стажировка или работа на позиции джуна. Не домашний и не фриланс, а именно в контакте с другими разработчиками, потому что так опыт и знания нарабатываются гораздо лучше. Пара месяцев стажировки порой могут равняться и затмевать год фриланса.
— Если это фриланс, то не для знакомых, а на заказа и за деньги. Потому что для себя и для знакомых — это одно, а когда другая сторона платит деньги — совсем другое. Во втором случае требования к результату гораздо выше.
— Минимальные базовые знания для джуна у меня собраны в нескольких постах в Instagram, они объединены в подборку. Перечень можно посмотреть там. На собеседовании у меня всегда заранее подготовленный перечень вопросов и на что смотреть, что важно, что критично, а что можно быстро поправить/подучить за первое время.
— Техническое высшее — желательно, но не обязательно. Несколько лет опыта могут заменить высшее техническое. Почему проще с техническим образованием: если действительно учиться, а не просто числиться, то вся база закладывается и переходит во что-то естественное. С ней будет проще. Без технического высшего тоже можно, но скорее всего будет сложнее, если опыта программирования прежде не было совсем. После тех. высшего сам род деятельности и многие концепции — это что-то само собой. Без тех. высшего подобный опыт придётся наработать самостоятельно или на работе.
Что касается софтов и качеств без которых мне нанимать не хочется, потому что потом с человеком работать, обучать и хочется, чтобы это не было игрой в одни ворота, а было результативно:
Ответственный, доводит до результата, не бросает, честный, занимается своим обучением, не считает, что за него это сделает кто-то другой. Самостоятельно прикладывает усилия. Обучаемость и внимательность очень важны. Понимает объяснения. Целеустремлённый. Дисциплинированный.
3. Что важнее: знание основ JS или популярных фреймворков
— JS важнее.
— Потому что это база, на которой строится остальное.
— Чем плотнее база (фундамент), тем проще наложить на неё всё остальное.
4. Лайфхаки и советы как учиться программированию быстрее
— Заниматься, заниматься и ещё раз заниматься.
— Я очень много времени отдавала и отдаю обучению. Со стороны может показаться, что кому-то дано, а кому-то нет. Секрет в том, что те, кто добился каких-то хороших результатов, как правило очень долго и очень сильно вкладывались.
Чтобы добыть на что-то время, нужно забрать его из какой-то другой сферы. Если я хочу добиться хороших результатов тут, значит у меня скорее всего проседают какие-то другие сферы. С одной стороны я многое пропустила, что-то потеряла, с другой стороны — результаты вроде неплохие.
— Как оно вообще вышло. Я не хотела быть программистом, мне это казалось очень неинтересным, нудным и так далее. Но у меня был физмат лицей и после него встал вопрос "куда поступать?". Как так вышло, что поступила на Информационные системы и технологии — есть пост.
Сначала я просто делала всё, что нужно было делать — все лабы, включая программирование. Просто брала и делала, сидеть в чём-то разбираться, распутывать интересно, спокойно, методично.
Потом заинтересовалась вёрсткой и JS и начала немного заниматься сама, когда было свободное от учёбы время. Во второй половине 4-го курса пошла на стажировку 20+ часов в неделю. Только тогда начала иногда пропускать пары ради стажировки.
У меня график тогда был примерно такой: часов в 5 — 6 подъём, делать дома лабы и прочую учёбу, потом пары, потом стажировка, часу в 9м вечера возвращалась и ещё часа 2 сидела либо с лабами, либо пробовала сделать то, что не получалось сделать этим днём на стажировке.
Потом, когда закончила университет, работа заменила учёбу, утренние и вечерние часы обучения остались. Прибавился блог. Для блога я тоже пропускала через себя моменты, связанные с профессией.
Потом была стажировка в Яндексе. Тут график был ещё суровее, я очень загонялась и старалась делать максимум. У меня был чек-лист того, что я должна освоить за стажировку. Почти всё время, которое я была не на работе, я занималась этим чек-листом и решала задачки.
Потом меня взяли на мидла в Рамблер. Только тут у меня около года была относительно спокойная обстановка — я впервые за много лет позволила себе чуть расслабиться и притормозить, перевести дух. Но тоже — почти всё нерабочее время у меня уходило на обучение и на блог.
И до сих пор большая часть нерабочего времени у меня уходит на обучение и блог. Обучение и hard, и soft. Читаю много. Я не смотрю сериалы, почти не смотрю фильмы, очень редко гуляю, не играю, очень мало общаюсь вне работы, у меня были проблемы со здоровьем из-за того, что я почти не отдыхала и много нервничала. С проблемами справилась, с тех пор начала серьёзнее относиться к отдыху, а не только работать.
Это та цена, которую я заплатила и продолжаю платить. Интересно ли эта сфера на столько, чтобы жертвовать чем-то другим?
Мне кажется, быстрый рост в начале — это всегда капитальный перенос времени и усилий из разных областей в одну. В перспективе, через какое-то время можно чуть сбавить обороты и выровнять сферы жизни. Например, я выровняла здоровье. Больше не беру у себя в долг здоровье, чтобы успеть большего достигнуть. В долгосрочной перспективе здоровье важнее, дороже и хрупче.
Можно вкладываться меньше и получать результат медленнее. Можно вкладываться больше и получать результат быстрее. Волшебных таблеток нет. Это методичный долгосрочный труд и вкладываемые усилия.
Что касается лайфхаков:
— Планировать время заранее.
— Развивать дисциплину.
— Отдавать себе отчёт, что не 100% будет интересным и приятным, периодически случаются сухие "надо". Если их не пропускать, а так же прорабатывать, то результат будет быстрее и лучше.
— Я считаю, что лучше играть в долгосрок и ставить на долгосрок, а не здесь и сейчас. Выгодное "здесь и сейчас" может оказаться очень невыгодным в долгосрочной перспективе. Я за оценивание возможностей с точки зрения "будет ли мне это полезно и выгодно потом, а не сейчас".
— То же самое касается того, что проще и что сложнее. Я предпочитаю выбирать не по сложности, а по тому, что лучше сыграет на перспективу.
5. Как бороться с ленью и прокрастинацией
— У меня на эту тему есть большой подробный пост.
— Я за то, чтобы не бороться против чего-то или с чем-то, а бороться за что-то и для чего-то. В одном случае мотивация от противного и поддерживается она негативными эмоциями, а в другом случае мотивация позитивная, она заряжает.
— У меня есть такой метод. Он работает, потому что это моё правило, я хочу, чтобы оно работало и потому что я с собой договорилась, что нарушать его не буду. Иначе оно перестанет работать))
Если что-то делать не хочется — читать, писать, решать, вставать с утра, вообще что угодно — я мысленно считаю до трёх и, когда произношу 3, у меня нет права продолжить не делать, иду и делаю. Если нужно что-то взять и сделать — всё, никаких размышлений, идём и делаем. Если нужно утром проснуться и начать делать зарядку — всё, никаких отговорок, начинаю делать зарядку. Работает безотказно уже лет 10, потому что я так хочу.
Ещё про лень и прокрастинацию. Они взялись не из ниоткуда.
— Это может быть неосознанным нежеланием что-то делать. Тогда нужно остановиться и подумать "почему я не хочу этого делать? зачем мне нужно это делать?". Если нет никаких аргументов тому, что это дело нужное, то может это действительно что-то ненужное?
В плане программирования: стать разработчиком и в целом быть разработчиком — это точно ваше желание и цель, или это навязано модой? Есть ведь собственные интересы и желания, а есть навязанные. Где-то увидели/услышали, как что-то здорово и заразились желанием. Но такой запал не долго держится.
— Ещё лень и прокрастинация могут быть звоночком, что ресурсов-то нет. Чтобы что-то сделать нужны ресурсы. Чем более трудоёмкое дело, тем больше нужно ресурсов и силы воли. Если топливо только расходуется и не восполняется, то далеко не уедешь.
— Про силу воли можно тоже отдельно говорить. Тоже про это недавно был пост. Если коротко, то можно полагаться на свою силу воли, а можно на работу окружения. Для меня самая выгодная комбинация — это с помощью силы воли организовать себе работающее на меня и мои цели окружение, наработать дисциплину и всё, дальше уже сила воли в больших количествах требуется редко, расходуется меньше, ресурсы на "всякий пожарный" есть.
— Ещё лень и прокрастинация, как ни грустно, могут быть привычкой, частью характера, привитый и привычный формат поведения. Это воспитывается. В детстве воспитывается взрослыми рядом, с более осознанного возраста можно воспитывать самостоятельно. Можно менять и корректировать. Чем старше, тем возможно сложнее, не знаю, не проверяла на себе.
Про себя знаю, что не ленивая и что умышленно себе это прививала. В общем случае нужно осознать причину своей лени и прокрастинации и работать с причиной.