Как войти в IT: новый набор в Школу программистов HeadHunter

в 10:05, , рубрики: Блог компании HeadHunter, Карьера в IT-индустрии, карьера программиста, Учебный процесс в IT, школа программирования

Как войти в IT: новый набор в Школу программистов HeadHunter - 1

Привет. Меня зовут Лев, и я разработчик в HeadHunter. Хотите узнать, как я им стал? Пожалуй, начну с самого начала — когда мои юношеские прыщи по количеству могли сравниться лишь с часами, проведенными за игрой в плейстейшен. Какими-то силами вселенной (мам, пап, спасибо:) я стал работать в инвестиционном банке и торговал валютами, акциями, облигациями (да-да, как в фильме “Волк с Уолл-стрит”).

Поначалу жизнь в банке была довольно скучна: много ручного труда и пафосных, старомодных маклеров, которые думали только о своей комиссии.

Все изменилось с приходом в мою жизнь программирования. Ручной труд ушел на второй план, я начал писать код, который делал мою работу. Поначалу он был простым и понятным, но со временем обрастал сложными кейсами. Потом в один прекрасный момент “что-то пошло не так” и банк потерял нехилую кучу бабла. Так я узнал, что пластическая операция — это дорого и больно разработка — это не только код, но еще и тестирование, контроль качества и другие интересные и крайне полезные практики.

Стало ясно, что знаний не хватает и нужно учиться. Я пошел на известные ресурсы в поисках знаний, прошел несколько курсов на coursera.org, даже закончил специализацию Fundamentals of Computing. Но мне этого было мало, хотелось общения с реальными людьми из индустрии IT, и тут на глаза попался пост о наборе в Школу программистов HeadHunter 2014/2015, в которую я успешно поступил.

Как войти в IT: новый набор в Школу программистов HeadHunter - 2
Примерно такие темы пришлось изучать во время школы.

Отмечу самые полезные, на мой взгляд, лекции.

Методологии разработки

На лекциях по процессу разработки я получил лишь теоретические знания, которые, в принципе, можно найти в сети или в книгах. Основная ценность — это практический опыт, который я получал во время командной работы над проектом. У нас были стендапы два раза в неделю, демо для заказчиков и ретроспективы. Мы учились работать командой, доверять и помогать друг другу.

Инженерные практики

На лекциях и домашних заданиях по инженерным практикам я получил практические навыки по рефакторингу кода, TDD, unit-тестированию в целом, CI и, конечно, ревью кода. Данные навыки помогли успешно справиться с командным проектом.

Командная строка

Одна из самых первых лекций оказалась для меня довольно сложной, поскольку до этого я никогда не работал в консоли. Материала оказалось много, да и bash не самый очевидный язык, но практические задания помогли немного освоиться и начать использовать консоль как удобный инструмент.

После курса лекций последовал командный проект — мы делали Slack для HR, который сильно интегрирован с API HeadHunter. В ходе проекта мы все проявили себя с хорошей стороны и каждому поступил офер на работу в hh.ru, который я с радостью принял и вышел на работу.
В первый же год работы в HeadHunter я пошел помогать родной школе, участвовал в собеседовании новичков в школу. Интересный был опыт — смотреть, как думает человек, успокаивать его, помогать ему искать варианты, а не нервничать и впадать в ступор из-за трудной задачки. Ведь главное, на что мы смотрим на собеседованиях, — это мышление: если не знаешь как решить задачу, надо задавать вопросы, рассуждать, двигаться вперед, а там, глядишь, и вылезешь к ответу. Конечно, без основных знаний, к примеру, что такое O(n) или стэк, пройти практически нереально, но это лишь основа, на которой надо строить свое мышление.

В следующей школе 2016/2017 я провел первую лекцию по инженерным практикам. Выступать публично нелегко, и это все знают. У нас был внутренний семинар, на котором всех начинающих лекторов учат, как выступать. Мы тренировались, как правильно стоять и жестикулировать, в каком ритме говорить и как удержать внимание аудитории. Тренинг сильно помог в подготовке к лекции и в самом выступлении. Все начинаешь понимать еще лучше, детальнее и точнее, когда рассказываешь другим. Страшно конечно, но оочень интересно) Получил фидбек, в этом году лекция будет еще лучше и их будет больше, приходите!

Как я уже писал, обучение в школе делится на два этапа: лекции и практические задания.
В школе 2016/2017 мне повезло стать куратором одного из проектов. Куратор проекта — довольно размытая позиция, тут каждый выбирает, какую роль в команде играть: product-менеджера, project-менеджера или тимлида.

Product-менеджер

Больше всех знает, как будет выглядеть продукт в итоге. Умеет приоритизировать отдельные задачи. Принимает решение с точки зрения, что делать, а что нет.

Project-менеджер

Занимается организацией работы команды, налаживает процессы — стендап, ретро, демо и т. д. Помогает решать организационные вопросы.

Тимлид

Занимается организацией работы команды изнутри, отвечает за техническую сторону продукта. Выступает помощником любому члену команды, а если сам не обладает технической экспертизой — знает, к кому обратиться за помощью.

Я выбрал вторую роль и немного первую, отдав роль тимлида в саму команду. Наша команда занималась проектом с кодовым именем Проверятор. Главная цель была в автоматизации проверок вступительных заданий от абитуриентов Школы программистов. В команде было 5 человек и я, менеджер :) Своих заказчиков мы нашли среди людей, которые больше всего времени уделяли школе. Работа со школой начинается задолго до ее открытия — это списки лекторов, работоспособность сайта, маркетинговая поддержка и многое другое. Но еще больше усилий требуется, чтобы проверить анкеты поступающих, выдать им тестовые задания и прособеседовать. Мы собрали эти активности, проанализировали боли, приоритизировали, декомпозировали на отдельные этапы и задачи и начали работать. Я постарался внедрить в работу все основные практики из hh.ru (код ревью, стендапы, декомпозиция задачи и ее оценка, личная ответственность за дату выпуска, демо, ретро). У нас получилось нечто вроде Scrum с 4-недельными итерациями и демо после них.

После каждого демо мы делали ретро и улучшали процессы. Ретро — на мой взгляд, одна из самых сложных встреч во всем процессе разработки. Чтобы ее провести качественно, нужно полное доверие внутри команды, нужно быть на одной волне и быть готовыми что-то изменить и прогрессировать. Наше первое ретро меня приятно удивило хорошей рабочей атмосферой, количеством честно высказанных проблем и эффективными путями их решений, которые мы приняли к действию.

Как войти в IT: новый набор в Школу программистов HeadHunter - 3

Большое спасибо ребятам, которые реально росли, становились крутыми разработчиками. Очень здорово, что вся моя команда дошла до конца и мы все вместе теперь работаем в hh.ru!

Как войти в IT: новый набор в Школу программистов HeadHunter - 4

Наш проект станет первым проектом за 7 лет школы, который дойдет до прода, теперь новые заявки будет проверять робот с частичкой бывших студентов, так что он не очень злой и суровый))

Я по-прежнему учусь в нашей школе. Поначалу я был в ней студентом, помогал собеседовать ребят, стал лектором, потом менеджером проекта и сейчас я куратор. Школа — очень многогранный проект, в котором при желании можно получать огромные знания и опыт, которые помогают двигаться дальше в своем развитии. Я выбрал путь тимлида, другие выбирают путь в сторону работы с технологиями, и оба пути могут найти основу в школе программистов.

Мы начинаем новый набор 2017/2018. В этом году мы ждем 30 студентов, приходите!

Автор: llev

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js