Стажировки для разработчиков в Авито: боевые задачи и работа с опытными наставниками

Почему работа в боевых проектах высоконагруженной разработки для новичка зачастую лучше короткой летней практики? Почему личный контакт с наставником — залог успешного входа в профессию? И какие они, стажировки для начинающих разработчиков в Авито? В этой статье я отвечаю на все эти вопросы, рассказываю о впечатлениях наставников и стажёров и анонсирую новые стажёрские вакансии в Авито.

yq0cc-pqrr-zgssqgly4em0eboq.png

Мы хотим предлагать начинающим разработчикам действительно полезную программу стажировки. Для этого мы проанализировали опыт лучших IT-компаний. И вот что у нас получилось.

Мы прикрепляем к разработчику-наставнику только одного стажёра: считаем, что так работа идёт продуктивнее. Находясь рядом с наставником, стажёр может рассчитывать на подробный и регулярный анализ кода, встречи 1:1, рекомендации для самостоятельного изучения — всё это обеспечивает быстрый рост. А у наставника, напротив, стажёрская программа не отнимает много времени, и он остаётся всё так же погруженным в свои рабочие задачи.

image
Дмитрий Хасанов, наставник, Senior Engineer:


В крупных компаниях организационная структура разветвлённая, проекты сложные, процессы выстроены особым образом, есть пласт исторического наследия. На часть вопросов стажёра эффективнее ответить сразу, не отправляя его читать документацию или спрашивать в общих чатах. При регулярном общении со стажёром постоянно обращаешь внимание, становятся ли его вопросы сложнее. Это позволяет понять прогресс: с какой кодовой базой, процессами, людьми стажёр познакомился, насколько хорошо изучил технологии и устройство компании, насколько самостоятельнее стал.

image
Никита Окунев, стажёр:


Я считаю, что при менторстве нельзя распылять внимание на многих стажеров. Когда ты проходишь стажировку, некоторые вещи могут сильно останавливать твой прогресс. Поэтому гораздо комфортнее получать ответы на вопросы сразу (если не находишь их в гугле, конечно), а не ждать своей очереди. Опять же, если у ментора много стажёров и все они его отвлекают, довольно сложно дёргать человека, не опасаясь вызвать волну неодобрения в свой адрес.

Мы даём опыт highload-разработки. Каждый стажёр оформляется в штат компании и подписывает NDA, таким образом становясь полноценным сотрудником. Продолжительность стажировки для разработчиков в Авито — от шести месяцев до года. Такая «длинная дистанция» работает на перспективу гораздо лучше — и в части развития стажёра, и в части пользы для компании.

image
Дмитрий Хасанов, наставник, Senior Engineer:


Обратная связь. Код, попавший в бой, начинает использоваться. Выявленные ошибки становятся сигналом о недостаточном качестве, а для автора кода означают необходимые доработки. Таким образом, боевые задачи требуют хорошего качества кода. Это также значит, что код стажёра, написанный для боевых задач, пройдёт более тщательное ревью команды. Обратим внимание на корректность решения, соответствие профилю нагрузки, орфографию в документации, форматирование кода.

Ответственность. Если в процессе эксплуатации кода стажёра возникнут ошибки, стажёр примет участие в их устранении. И наверняка сможет понять, адекватно ли проводится ревью, на какие моменты обращать больше внимания в будущих задачах; задумается, что труднее: перепроверить код до релиза или восстанавливать данные после.

Знание инфраструктуры. Первые же настоящие задачи приведут к вопросу, в каких случаях стоит писать логи, как пользоваться метриками и настраивать алерты. Где живут проекты, как зарелизить сервис, и правда ли, что мы в тимсити пишем баш-скрипты прямо в textarea. Это поможет быстро решать множество оперативных задач.

image
Иван Кострулёв, стажёр:


На мой взгляд, длинная стажировка оптимальна по многим параметрам. За это время ты успеваешь не спеша погрузиться в работу, узнать как налажены процессы в компании и хорошо познакомиться с коллегами, понять логику своих задач и их взаимодействия с другими людьми, успеть показать себя в конце концов! А так как я ещё учусь в магистратуре, я не смог бы работать полный день. Сейчас совмещаю учёбу и работу.

image
Александр Лукьянченко, наставник, Senior Engineer:


Стажировка — отличный инструмент как для компании, так и для студентов. В декабре 2018 года взяли к себе в юнит стажера из магистратуры МАИ — развивать проект PaaS. Во время периода адаптации стажёр изучил внутреннюю архитектуру проекта, оптимизировал подход работы с секретами для микросервисов, внес несколько важных улучшений для user experience в утилиту деплоя и работы с микросервисами.
Этому способствовало полное вовлечение во все процессы команды. С первого дня стажер попадает в среду, в которой находятся все разработчики и становится её частью.

boyeu43kab4en4-a1wffhayxgmo.gif

Подытожим. Стажировки для начинающих разработчиков в Авито длятся от 6 месяцев до года. Это работа 20 часов в неделю. С зарплатой и оформлением в штат. Мы принимаем заявки от студентов очной формы обучения. Основная цель стажировки — перевести стажёров на позиции Junior/Middle разработчиков и значительно прокачать во время программы.

Если у вас есть вопросы про организацию стажировки — задавайте их в комментариях.
Если вам интересно стать стажёром Авито, по ссылке вы найдёте форму заявки, подробные описания вакансий и тестовые задания. Вливайтесь в команду!

© Habrahabr.ru