Курс молодого бойца для Spark/Scala

    Хабр, привет!

    Команда Retail Rocket использует узкоспециализированный стек технологий Hadoop + Spark для вычислительного кластера, о котором мы уже писали обзорный материал в самом первом посте нашего инженерного блога на Хабре.

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



    Как происходит отбор стажеров в Retail Rocket?


    Всегда первый раз звоню по Skype или телефону и задаю простые вопросы, начиная от того как вы нас нашли (находят наши вакансии часто через поиск в Google), заканчивая элементарными вопросами про машинное обучение.

    Для прохождения собеседования с нами очень желательно пройти курс от Coursera по машинному обучению. Этот курс очень фундаментальный и учит понимаю, а не зазубриванию формул и использованию готовых библиотек в Python. Это для нас очень важно, так как часто приходится писать алгоритмы руками.

    Если ответы меня устраивают, то приглашаю на очное собеседование, на котором мы уже ближе знакомимся с кандидатом, вопросы уже задаем посложнее, но не на зубрежку, а на понимание. В заключении, как правило на дом, мы даем задание изучить научную статью с конференции RecSys, «закодить» алгоритм и прогнать его через тестовый набор данных.

    Что происходит после того, как человека выбрали?


    Мы используем онлайн-курсы для повышения квалификации новых аналитиков, чтобы затратить минимум усилий для обучения новых сотрудников. До перехода к нам рекомендуется пройти серию очень коротких курсов от Big Data University с тестами:
    1. Hadoop — 4 часа. Простой курс про компоненты Hadoop.
    2. Spark 1 — 3 часа. Про Spark, RDD, Api на Java, Python, Scala, создание простых приложений, Spark SQL, MLLib, Spark Streaming, Graph X.
    3. Spark 2 — 4 часа. Продвинутый курс про создание приложений на Spark.


    Затем с первого дня работы аналитик должен успешно изучить и сделать задания следующих курсов:
    1. Курс по азам языка программирования Scala, очень легкий и понятный. Из кандидатов Scala почти никто не знает, поэтому этот курс помогает очень быстро влиться в процесс.
    2. Курс по рекомендательным системам. Рекомендательные системы — это одна из ветвей Machine Learning, достаточно узкая тема. Для работы у нас этой темой нужно владеть в совершенстве. От кандидатов не требуется знаний и опыта построения рекомендательных систем. Этот курс для нас большая помощь, чтобы втянуть человека в основную часть работы.


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

    Опциональный, но очень важный для нас курс после прохождения испытательного срока, который я бы рекомендовал — принципы реактивного программирования, где объясняются нетривиальные подходы при программировании на функциональных языках программирования на примере Scala: Монады, Futures, Actors и т.д. Задания в этом курсе довольно сложные, но жутко интересные.

    Эта система успешна внедрена в Retail Rocket в течение последних полутора лет и показала себя очень хорошо.

    P.S. Рекомендую совсем свежий и всеобъемлющий курс по Scala и Spark.

    P.P.S. Мы всегда рады новым членам команды и у нас открыто сразу несколько вакансий на позицию “.NET Разработчик”. Наш технологический стек и уровень задач можно оценить в самом первом посте на Хабре. Резюме можно прислать на почту avchizh@retailrocket.ru (HR-ов у нас нет, общаться будем сразу напрямую).
    • +15
    • 18,8k
    • 8
    Retail Rocket 95,65
    Платформа для персонализации интернет-магазинов
    Поделиться публикацией
    Похожие публикации
    Комментарии 8
    • +1
      программируем мы исключительно на Scala

      у нас открыто сразу несколько вакансий на позицию “.NET Разработчик”.

      Хех)
    • 0
      Спасибо. Думал, что знания с курсов с coursera.org (именно те, которые указаны в статье) далеки от коммерческого применения.
      • –3
        Далеки, как впрочем большинство фундаментальных вещей
        • +1
          не думаю, что там фундаментальные вещи указаны. Если Вы в целом о MOOC — то думаю Вас обрадовать — за онлайн образованием — будущее.
      • 0
        какие фундаментальные вещи далеки от коммерческого применения? Личный интерес просто
        • 0
          на самом деле почти все применимо, но есть одно но. Внедрение требует очень много инженерной работы. Как правило реализация алгоритма требует 10-20% временных ресурсов, а инженерная обвеска остальные 80-90%

        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

        Самое читаемое