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



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


Один наставник, один стажёр


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


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


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

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


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


Обучение на реальных задачах


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


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


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

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

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

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


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

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


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


Итого (и шесть вакансий)


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


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

Комментарии (9)


  1. dedyshka
    28.02.2019 16:02
    +1

    aglotova, скажите, а каков смысл этого опроса если в статье ни слова о том, что такое «MNZ.Presense» и чем оно отличается от «Api4biz»…


    1. Andrey_Kravchenko
      28.02.2019 16:08

      Перед опросом есть ссылка на лендинг, где есть описания каждого направления


      1. dedyshka
        28.02.2019 16:12

        по ссылке вы найдёте форму заявки, подробные описания вакансий и тестовые задания
        где про «описания каждого направления»?
        Впрочем, может у Авито это такое задание для отсева не понявших… :)
        Наличие краткого описания направлений, перед опросом, имхо, было бы удобнее.


    1. aglotova Автор
      28.02.2019 16:30
      +1

      dedyshka, на лендинге стажировок можно найти описания задач (и если интересны задачи, значит интересен юнит).

      Но, и правда, стоит расшифровать, чем занимаются юниты:
      DBA — юнит, поддерживающий персистентные хранилища данных;
      MNZ.Presenсe — формирование модели/способов монетизации работы профессиональных прользователей с Авито;
      Api4biz — разработка инструментов интеграции с Авито;
      AvitoPro — разработка инструментов для профессиональных пользователей;
      Billing — процессинг платежей;
      Информационная безопасность — ревизия продуктов, фаерволы, решения для предотвращения киберугроз.


  1. Vadem
    28.02.2019 16:14

    Как всегда вопрос следующий — можно ли подавать заявки не молодым и не студентам?


    1. aglotova Автор
      28.02.2019 16:32

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


  1. ARMOR888
    28.02.2019 17:09

    Откройте 7-й юнит: AvitoLikePro — чтобы сделать, наконец, сервис удобным для продвинутых пользователей. Когда, наконец, можно будет указать радиус поиска или, черт возьми, хотя бы указать список населенных пунктов? Регулярки в строке поиска где? Потому что в 2019г искать отдельно по каждому населенному пункту и слову это днище.
    Уже сторонние сервисы зарабатывают деньги на вашем кривом поиске, делая из одного удобного пользовательского запроса N-штук и регулярно их опрашивая.
    Из преимуществ: нравятся заметки.
    Несмотря на вашу огромную базу предпочитаю пользоваться вашими конкурентами, т.к. выдача более релевантна моим запросам.


  1. Legtarrr
    01.03.2019 11:06

    Мне не нравится что если задать поиск по одним станциям метро с определенными фильтрами при изменении станций метро фильтры пропадают и их опять нужно выбирать(((( Можно же их запоминать в сессии и при замене одних остальные оставлять.


  1. evr1ka
    01.03.2019 11:30

    Не могу понять за счет чего живет сервис. Даже в тексте прямо указано, что: "… Код, попавший в бой.." То есть признаются что воюют. Причем то с Покупателями, то с Продавцами.
    Делая все, чтобы одни не смогли найти и купить то, что нужно, а другие продать. Не благодаря, а вопреки.
    Если нужны отсылки о чем я — то есть пара примеров:
    Когда искал купить дом, то ничего толкового нельзя было найти, для поиска его из другой страны стоит запрет на показ нужной инфы (например телефона) и ограничение в выдаче. Тупизм. Зачем?
    Другой вариант при продаже этого же дома через пару лет (так бывает), первым же делом он заинтересовал только тех, кто уже пришел и тупо сбил цену в 3 раза, так как желающих нет, а все цены на рынке, всего лишь хотелки. Как находить покупателей — не понятно, со стороны сервиса помощи в этом нет.
    При попытке работать с API сайта, чтобы помочь себе же, так как функционала мало, будет отлуп и бан — тут да, они молодцы, борьба с покупателями. При этом твое же объявление уже автоматом скопипастчено на третьи сервисы, о которых ты не в курсах. Ходишь потом через гугл, ищещь, и удаляешь (если можешь, так как например висит старое объявление от предыдущего продавца).
    Про кучу фейков и агенств с нереальными объявлениями вообще молчу. С этим они не умеют работать, или их еще больше, и пробиваются реальные профи.
    Про местоположение уже тоже написали, сложно, но ладно, можно в личке уточнить.
    Зачем я это все написал? Ну а потому что где еще? В тех.поддержку их пробовал как-то. Тупо напишут что это не баг, а фича.
    Хотя да, это крупный агрегатор, чего уж тут, если надо — ишещь и тут, но сначала в других местах, с более лояльным подходом.
    Хорошего дня, дочитавшим.