Фронтенд до Питера доведет
Седьмого сентября в Москве стартует обучение в Школе разработки интерфейсов. Она рассчитана на тех, кто хочет погрузиться в боевые фронтендерские задачи. Студенты не только прослушают курс лекций от разработчиков Яндекса, но и получат опыт командной разработки, научатся системному мышлению и прокачают практические навыки фронтенда. За семь лет ШРИ прошли 539 студентов, 244 из них пришли работать в Яндекс. В прошлом году Школу закончил студент и разработчик из Алматы Евгений Телегин. Он рассказал о вступительных испытаниях, обучении в Петербурге и о том, как он в конце концов попал в команду Яндекс.Денег.
Путь во фронтенд
Я увлекался информатикой еще в школе, ездил на олимпиады и довольно быстро осознал, что другого выбора, кроме как стать программистом, у меня нет. Поэтому и учиться пошел на вычислительную технику и программное обеспечение в Международный университет информационных технологий в Алматы. Один из преподавателей пригласил меня в свою студию на стажировку, и я остался там работать. Сначала писал мобильные приложения на Swift, затем постепенно перешел на фронтендерские задачи.
В конце четвертого курса на одной из конференций я увидел, как один из слушателей задавал каждому докладчику очень каверзные вопросы по фронтенду. Оказалось, что его зовут Эльдар Амантай и он работает в екатеринбургском офисе Яндекса. Эльдар рассказал мне про Школу разработки интерфейсов и посоветовал попробовать себя на собеседовании в компанию. Я собеседовался на вакансию стажера-фронтендера, но завалил алгоритмы и никуда не попал.
Верстка умного дома и алгоритмы
Так что как только начался новый набор в ШРИ, я сразу начал делать тестовые задания. Первое из них показалось довольно простым, нужно было взять код и исправить в нем баги исходя из технического задания. Это имитирует ситуацию, когда ты приходишь в новый проект и нужно разобраться в том, что до тебя сделали другие.
Второе испытание — верстка макета умного дома со множеством сложных элементов. Пришлось просидеть над заданием недели три, хотелось всё сделать идеально, а параллельно приходилось еще и работать. Третьим заданием опять были алгоритмы, а кроме олимпиад у меня не было никакого опыта их практического использования. Я читал теорию, искал решение схожих задач в интернете, а когда понял, что сроки поджимают, сделал как мог — какие-то кейсы работали, какие-то нет.
Но письмо с отказом стало настоящей неожиданностью! Я был уверен, что кроме третьего задания всё сделал как надо. По счастливой случайности моя командировка в Москву совпала с разбором вступительного задания. Я начал задавать вопросы, а потом дискутировать с преподавателем Школы. В конце мероприятия организаторы пригласили меня в ШРИ в Санкт-Петербурге. Недолго думая, я договорился со своей студией, что буду работать парт-тайм и приехал в Петербург.
Мир JavaScript и задание «со звездочкой»
Первые недели в Питере дались непросто, я пропустил несколько домашних заданий, и свободного времени практически не было: по вечерам ходил на лекции, а днем работал и делал домашки. Потом наконец освоился, и стало полегче, стал выходить в город и общаться с другими ребятами, которые учились в ШРИ.
Оказалось, что это не менее важно, чем лекции и задания! Каждый вечер ты приходишь и общаешься с людьми, которые тоже пришли получать знания. У вас начинается дискуссия по поводу домашки или каких-то технологий. Мне кажется, что трудно проводить ШРИ дистанционно, просто транслируя лекции. При личном общении растешь гораздо быстрее.
Непосредственно на учебе я узнал и тонкости работы с гридами, и то, как работает Redux, и даже создал свою библиотеку, основой которой является Flux-архитектура. Научился делать интеграционное тестирование, при помощи скриншотов и много чего еще.
Мир JavaScript развивается очень быстро, новые библиотеки выходят ежечасно. Есть много шуток в таком стиле, что если ты уйдешь в армию на год, а потом вернешься, то весь фронтенд уже поменяется и придется переучиваться. Получать знания здесь и сейчас и сразу же их применять было просто отлично.
Практически в каждом домашнем задании было необязательное задание «со звездочкой», которое очень хотелось сделать, чтобы доказать себе, что ты можешь. Запомнилось интересное задание вывести четыре потоковых видео на страницу, добавить фильтры и сделать анализатор громкости звука. Так как на каждом видео есть какое-то движение, то заданием «со звездочкой» было создание детектора движения. Движущиеся объекты должны быть подсвечены квадратиком на видео.
На завершающем этапе студенты ШРИ поделились на команды и занялись выпускными проектами, связанными с настоящими боевыми задачами Яндекса. Каждую субботу наша команда собиралась на так называемые «шрикатоны». Мы обсуждали проект, ругались, рисовали на доске маркером, придумывали какие-то идеи и постоянно всё переделывали. В итоге мы успели доделать проект в срок, и продакт-менеджер хорошо о нём отозвался. Показывал его другим командам. Вообще день презентаций ШРИ получился суперинтересным, некоторые проекты можно было прямо в продакшн выпускать.
Как я попал в Яндекс.Деньги
После ШРИ я решил пройти собеседование еще раз. Так я попал на беседу к команде Яндекс.Денег, и это было просто отлично! Меня собеседовали Андрей Мелихов и наш руководитель Илья Кашлаков. Андрей — это очень популярная личность именно во фронтенд-комьюнити, с собственными подкастами и роликами на YouTube. Я очень волновался, но собеседование прошло отлично, и меня взяли.
У нас маленькая команда, которая сложилась совсем недавно под маркетинговые задачи. Например, недавно мы запустили новую акцию Iron Money, где пользователи могут выполнять задания, получать награды и таким образом узнавать больше о возможностях сервиса.
Оглядываясь назад, я нисколько не пожалел, что поехал в другой город ради того, чтобы поучиться в ШРИ. Иногда стоит выходить из зоны комфорта. Это крутой опыт. Хочется сказать всем, кто будет поступать в этот раз, что не стоит бояться выполнять вступительное задание, даже если не получится сразу попасть в Школу, вы получите опыт, который будет полезен в будущем.
Хочется посоветовать посмотреть записи разборов прошлых вступительных заданий:
Если вы попали в Школу, то, возможно, будет трудно, главное — не забросить всё это. Результат стоит всех этих усилий.