Несколько месяцев назад мы решили собирать истории наших стажеров и публиковать на портале их советы и впечатления от первых дней работы. Своим опытом с нами уже поделились Михаил Сандул, Ксения Стройкова и Артем Клюквин. На этот раз о перспективах и необходимых навыках стажера рассказывают выпускник Техносферы Денис Дорожкин и его наставник Николай Шуляковский - заместитель технического директора проекта Мой Мир@Mail.Ru. Николай работает в компании с 2013 года, а с 2016 преподает Perl в наших образовательных проектах. Сейчас у него учится более 100 студентов, и многие из них уже стажируются в Mail.Ru Group.Старт карьеры
В первый рабочий день стажер получает простую задачу на знакомство с кодом. Как правило, это изменение 2-3 строк, например, мелкая бага. Человек знакомится с workflow, учится, как “сливать” код из git, как коммитить git и отдавать на тестирование. Наблюдает, как тестировщики проверяют задачу и как возвращают ее, как эта задача попадает в релиз. Одним словом, в начале стажер просто изучает процесс - обычно на это уходит не больше недели. Затем он получает более серьезное задание. Иногда это обособленная задачка, которую нужно сделать, не вмешиваясь в чужой код: написать большой кусок, проследить, как этот кусок запустится, скоординироваться с администраторами. Иногда - задача из рутинного пула, который распределяется между всеми сотрудниками.
Вместе с задачей наставник всегда дает стажеру подробное устное объяснение: что и как нужно делать, почему нужно делать именно так, а не иначе, и т.д. В процессе решения происходит еще несколько таких разговоров - это делается исключительно для того, чтобы человек получил как можно больше знаний.Code review
Когда стажер только приходит в компанию, в его workflow есть два code review. Первое - код на альфа-сервера. Второе - код, который “выезжает” на боевые сервера, то есть тот, который видят люди. Ревьюер смотрит и комментирует код, мержит либо просит что-то исправить и дает объяснения.
Когда стажер вырастает (как правило, это происходит через год), одно code review пропадает: на альфа-сервера он коммитит код сам и “выливает” его тогда, когда считает нужным. Остается только “боевое” code review. Так человек чувствует большую ответственность за свой код: то, что он написал, так или иначе выезжает в бой. Если он допустил ошибку, тестировщики на альфа-серверах протестировали, но ревьюер заставил переписать - приходится переписывать и делать задачу заново.
Чтобы сразу делать все верно, задачу нужно правильно понять и реализовать с использованием правильных технологий. Для этого стажер должен обрести скиллы по общению с коллегами и менеджерами - в первое время стажеров учат и этому.
Но наставник никогда не пытается задавить инициативу. Любой стажер, если он чувствует в себе силы и желание, может написать большой кусок кода, выпустить его в бой и радоваться, что код работает на больших нагрузках. Наш проект - это highload. Человек держит руку на пульсе и смотрит, как быстро взлетают графики, когда он раскатывает свой код, видит, если что-то начинает падать. По первости это вдохновляет - ты вывел кусок кода, и за 5 минут на него посмотрели 5 миллионов человек!Из стажеров в штат
Единственное отличие стажера от штатного разработчика заключается в том, что стажера в большей степени направляют на обучение. Важно не число задач, которые он выполнит, а количество знаний, которые получит. Каждого стажера, который дорастает до разработчика, переводят в штат. Нужно понимать: штатный сотрудник - это полная занятость, 40 часов в неделю. Разработчик должен регулярно находиться в офисе и выполнять определенный пул задач.Из первых рук
О стажировке на проекте Мой Мир@Mail.Ru рассказывает Денис Дорожкин, выпускник Техносферы:
Главное - не бояться задавать вопросы, даже если они кажутся тебе очень глупыми. Поначалу ты не знаешь, как все устроено и как этим пользоваться. Но надо помнить: раз тебя взяли, значит, ты того стоишь. Первое время может быть некомфортно оттого, что никого не знаешь, но это быстро проходит. Очень помогает начать здороваться со всеми коллегами, даже незнакомыми - так ты автоматически включаешь себя в коллектив, и очень скоро люди сами начинают с тобой здороваться и завязывать разговоры. Что касается косяков - они есть всегда и у всех: у кого-то больше, у кого-то меньше... В Mail.Ru Group ценится открытость, умение слушать и задавать вопросы. А еще полезно сразу завести файлик с описанием нужных команд, утилит и всего прочего. В первое время будет много новой информации, которую надо запомнить.
Если и ты хочешь стать стажером Mail.Ru Group, ищи подходящую вакансию здесь. Присылай резюме, проходи собеседование и присоединяйся к нам - возможно, в следующей статье мы опубликуем именно твою историю. Об условиях стажировки, собеседовании и необходимых качествах стажера мы периодически рассказываем в статьях на портале.