Меня зовут Богдан, я ментор и ML Engineer. Давайте знакомиться)
За 4 года карьеры в ML я успел поработать в крупных IT компаниях(Тинькофф, Сбер, Озон и ВК). Так же закончил школу 21 от Сбера и MADE от VK. В основном занимаюсь рекомендательными системами и классическим ML.
Также занимаюсь менторством с весны - тут можно почитать более подробно
Я прошел более 100 собеседований и мне есть о чем вам рассказать)
В этом канале я собираюсь писать про разное связанное с ML и поиском работы
Пишите про что вам интересно было бы почитать)
За 4 года карьеры в ML я успел поработать в крупных IT компаниях(Тинькофф, Сбер, Озон и ВК). Так же закончил школу 21 от Сбера и MADE от VK. В основном занимаюсь рекомендательными системами и классическим ML.
Также занимаюсь менторством с весны - тут можно почитать более подробно
Я прошел более 100 собеседований и мне есть о чем вам рассказать)
В этом канале я собираюсь писать про разное связанное с ML и поиском работы
Пишите про что вам интересно было бы почитать)
Telegraph
Богдан | Ментор по ML/DS
Кто я? Меня зовут Богдан, я Senior ML Engineer. У меня за плечами более 4 лет работы в сфере обработки данных в крупных IT компаниях(Тинькофф, Сбер, Озон и ВК). Так же закончил школу 21 от Сбера и MADE от VK. В основном занимаюсь рекомендательными системами…
Раскатываем ML кабины pinned «Меня зовут Богдан, я ментор и ML Engineer. Давайте знакомиться) За 4 года карьеры в ML я успел поработать в крупных IT компаниях(Тинькофф, Сбер, Озон и ВК). Так же закончил школу 21 от Сбера и MADE от VK. В основном занимаюсь рекомендательными системами и…»
Где искать работу ML инженеру?💼
Я своим ученикам рекомендую всегда 5 источников для поиска работы в ML:
- hh.ru - здесь много вакансий, но отвечают не так хорошо как хотелось бы.
- Хабр карьера - ML вакансий не так много, но обычно HR сами пишут. К кандидату относятся более внимательно, чем на hh
- GetMatch - в боте присылаются новые вакансии по вашим фильтрам, если загрузить резюме, то можно включить активный поиск, где HR смогут сами просматривать ваше резюме и предлагать работу. Из плюсов почти всегда указана вилка ЗП и работадателя пушат, чтобы он вернулся с обратной связью по вашему резюме.
- singularis.ai - cообщество специалистов, связанных с данными. В канале #jobs выкладывают вакансии лично сотрудники и лиды. С ними можно напрямую пообщаться и узнать подробности вакансии. Обычно конверсия в собеседование там очень хорошая. Еще есть канал #jobs_hr, где публикуются вакансии от HR.
- ods.ai - прородитель сингуляриса) На сайте есть специальный раздел вакансий, где написаны контакты HR и куда можно откликаться. Вакансии появляются стабильно и тоже пишут вилки
- LinkedIn - про него все знают:) Эта платформа больше нацелена на поиск работы заграницей, но и HR из российских компаний писали мне в личные сообщения
Как-то так)
Пишите, если пользуетесь другими сервисами для поиска работы
Раскатываем ML кабины вместе
Я своим ученикам рекомендую всегда 5 источников для поиска работы в ML:
- hh.ru - здесь много вакансий, но отвечают не так хорошо как хотелось бы.
- Хабр карьера - ML вакансий не так много, но обычно HR сами пишут. К кандидату относятся более внимательно, чем на hh
- GetMatch - в боте присылаются новые вакансии по вашим фильтрам, если загрузить резюме, то можно включить активный поиск, где HR смогут сами просматривать ваше резюме и предлагать работу. Из плюсов почти всегда указана вилка ЗП и работадателя пушат, чтобы он вернулся с обратной связью по вашему резюме.
- singularis.ai - cообщество специалистов, связанных с данными. В канале #jobs выкладывают вакансии лично сотрудники и лиды. С ними можно напрямую пообщаться и узнать подробности вакансии. Обычно конверсия в собеседование там очень хорошая. Еще есть канал #jobs_hr, где публикуются вакансии от HR.
- ods.ai - прородитель сингуляриса) На сайте есть специальный раздел вакансий, где написаны контакты HR и куда можно откликаться. Вакансии появляются стабильно и тоже пишут вилки
- LinkedIn - про него все знают:) Эта платформа больше нацелена на поиск работы заграницей, но и HR из российских компаний писали мне в личные сообщения
Как-то так)
Пишите, если пользуетесь другими сервисами для поиска работы
Раскатываем ML кабины вместе
Please open Telegram to view this post
VIEW IN TELEGRAM
hh.ru
Работа в Москве, поиск персонала и публикация вакансий - hh.ru
hh.ru — сервис, который помогает найти работу и подобрать персонал в Москве более 20 лет! Создавайте резюме и откликайтесь на вакансии. Набирайте сотрудников и публикуйте вакансии.
Как искать работу?
В первую очередь у вас должно быть резюме в PDF на русском (и опционально на английском), которое вы будете отправлять HR лично. Это нужно для сервисов ODS.ai и singularis.ai. В остальных сервисах используется внутренний конструктор резюме.
Резюме должно быть идеально отполировано и готово к бою. Также важно подготовить сопроводительный рассказ для HR о своем опыте целях и желаниях.
Далее используем тактику Click Rush - откликаемся на все вакансии, которые видим, кроме тех, на которые мы действительно хотим попасть.
Зачем? Все просто, мы тренируемся проходить собеседования, чтобы прийти максимально подготовленными к целевым вакансиям. Возможно еще в процессе клик раша вам приглянется какая-нибудь компания.
Эта процедура может длиться больше месяца, но результатом работы будет уверенность на собеседованиях, способность их проходить и несколько офферов
Желаю успехов!
В первую очередь у вас должно быть резюме в PDF на русском (и опционально на английском), которое вы будете отправлять HR лично. Это нужно для сервисов ODS.ai и singularis.ai. В остальных сервисах используется внутренний конструктор резюме.
Резюме должно быть идеально отполировано и готово к бою. Также важно подготовить сопроводительный рассказ для HR о своем опыте целях и желаниях.
Далее используем тактику Click Rush - откликаемся на все вакансии, которые видим, кроме тех, на которые мы действительно хотим попасть.
Зачем? Все просто, мы тренируемся проходить собеседования, чтобы прийти максимально подготовленными к целевым вакансиям. Возможно еще в процессе клик раша вам приглянется какая-нибудь компания.
Эта процедура может длиться больше месяца, но результатом работы будет уверенность на собеседованиях, способность их проходить и несколько офферов
Желаю успехов!
Давненько не выходил на связь😅
Сейчас активно пишу статью про прохождение алгоритмических секций или live-coding интервью, так что в этом году она точно доедет🐸 🐸 🐸
Вспомнил, что не указал еще один важный источник вакансий - сайты компаний, в которые вы хотите попасть.
Вот несколько из них:
- Яндекс
- Озон
- VK
- T-Банк
- МТС Финтех
- Авито
- Lamoda
- СБЕР
Тут приведен не полный список, но остальное можно нагуглить.
Идеальный пайплайн действий следующий:
1. Находите желаемые вакансии
2. Можно откликнуться на сайте, но лучше найти людей из этих комапний и просить их закинуть ваше резюме. Реферальная система устроена так, что вас точно посмотрит нанимающая команда, а рекомендатель получитнемножко балдежки и денежное вознаграждение.
3. Done
Но где искать таких людей?
Можно написать мне или в беседу группы, я закину или поспрашивать у знакомых. Если такого человека не нашлось можно поспрашивать в профильных комьюнити, кстати ставь 👍, если хочешь разбор МЛ комьюнити.
На крайний случай можно дойти до LinkedIn, там найти человека из компании и написать в личку, кто-нибудь точно согласиться.
Как-то так. Дерзайте🎹
Сейчас активно пишу статью про прохождение алгоритмических секций или live-coding интервью, так что в этом году она точно доедет
Вспомнил, что не указал еще один важный источник вакансий - сайты компаний, в которые вы хотите попасть.
Вот несколько из них:
- Яндекс
- Озон
- VK
- T-Банк
- МТС Финтех
- Авито
- Lamoda
- СБЕР
Тут приведен не полный список, но остальное можно нагуглить.
Идеальный пайплайн действий следующий:
1. Находите желаемые вакансии
2. Можно откликнуться на сайте, но лучше найти людей из этих комапний и просить их закинуть ваше резюме. Реферальная система устроена так, что вас точно посмотрит нанимающая команда, а рекомендатель получит
3. Done
Но где искать таких людей?
Можно написать мне или в беседу группы, я закину или поспрашивать у знакомых. Если такого человека не нашлось можно поспрашивать в профильных комьюнити, кстати ставь 👍, если хочешь разбор МЛ комьюнити.
На крайний случай можно дойти до LinkedIn, там найти человека из компании и написать в личку, кто-нибудь точно согласиться.
Как-то так. Дерзайте
Please open Telegram to view this post
VIEW IN TELEGRAM
Про изменение найма в рекомендательных системах🐸
Уже 2.5 года я занимаюсь рекомендательными системами и очень интересно наблюдать как меняестя найм за такое короткое время.
Вот немного временных отсечек:
Весна 2022
Работал в сбере в классическом мл и хочу менять работу. Хорошо рассказываю про бустинги, обрабтоку данных. В это время закончил первый семестр MADE и уверенно чувсвтую себя на собеседованиях по лайвкодингу и NLP.
По итогу 2 месяцев поиска работы и какого-то неимоверного количества собеседований получаю офферы в:
- ДомКлик - рекомендации
- Озон - рекомендации
- Еаптека - классический мл
- Яндекс - команда занималась рекламой вроде, деталей не помню, но помню, что лид не понравился и решил не рассматривать
При этом мои знания по рекомендательным системам около нуля😄
Сентябрь 2023
Уже накопил 1.5 года опыта работы с рекомендательными системами, уверенно себя чувствовал в около млопсовом направлении. И в целом искал вакансии по рексису. Вот что получилось через 2 месяца:
- WB - рекомендации + mlops
- Циан - классик мл
- Яндекс плюс - классик мл
- Дзен - рекомендации
- X5 - классический мл
- Rubbles - классический мл
Самое смешное, что про АЛС или как работает pairwise boosting я очень плохо знал и мое математическое понимание рекомендаций заканчивалось на map и ndcg. Важно заметить, что понимание устройства рексиса озона у меня было хорошее с точки зрения архитектуры, хоть я и не мог объяснить большую часть алгоритмов.
Здесь все секции по рекомендациям без проблем проходились, кроме Т-Банка. Там меня жестко разбомбили вопросами про архитектуру ALS, работу бустингов и нейро подходы. И там я понял, что мне еще очень много нужно выучить.
Декабрь 2024
Я не меняю работу, но мои ученики активно ходят по собеседованиям и вот, что я наблюдаю:
Намного жестче спрашивают про архитектуру рекомендаций. Спрашивают, что под капотом у разных методов, какие методы сам знаешь. Смотрят на то, насколько хорошо умеешь дизайнить рексис (это и раньше спрашивали, но поменьше)
И вакансий как будто стало сильно больше, чем раньше.
Видно что рынок рексиса растет и со временем критерии найма тоже растут. Будем смотреть, что будет дальше🙃
PS прикладываю таблички по компаниям, где проходил собесы в 2022 и 2023 годах
Раскатываем ML кабины
Уже 2.5 года я занимаюсь рекомендательными системами и очень интересно наблюдать как меняестя найм за такое короткое время.
Вот немного временных отсечек:
Весна 2022
Работал в сбере в классическом мл и хочу менять работу. Хорошо рассказываю про бустинги, обрабтоку данных. В это время закончил первый семестр MADE и уверенно чувсвтую себя на собеседованиях по лайвкодингу и NLP.
По итогу 2 месяцев поиска работы и какого-то неимоверного количества собеседований получаю офферы в:
- ДомКлик - рекомендации
- Озон - рекомендации
- Еаптека - классический мл
- Яндекс - команда занималась рекламой вроде, деталей не помню, но помню, что лид не понравился и решил не рассматривать
При этом мои знания по рекомендательным системам около нуля😄
Сентябрь 2023
Уже накопил 1.5 года опыта работы с рекомендательными системами, уверенно себя чувствовал в около млопсовом направлении. И в целом искал вакансии по рексису. Вот что получилось через 2 месяца:
- WB - рекомендации + mlops
- Циан - классик мл
- Яндекс плюс - классик мл
- Дзен - рекомендации
- X5 - классический мл
- Rubbles - классический мл
Самое смешное, что про АЛС или как работает pairwise boosting я очень плохо знал и мое математическое понимание рекомендаций заканчивалось на map и ndcg. Важно заметить, что понимание устройства рексиса озона у меня было хорошее с точки зрения архитектуры, хоть я и не мог объяснить большую часть алгоритмов.
Здесь все секции по рекомендациям без проблем проходились, кроме Т-Банка. Там меня жестко разбомбили вопросами про архитектуру ALS, работу бустингов и нейро подходы. И там я понял, что мне еще очень много нужно выучить.
Декабрь 2024
Я не меняю работу, но мои ученики активно ходят по собеседованиям и вот, что я наблюдаю:
Намного жестче спрашивают про архитектуру рекомендаций. Спрашивают, что под капотом у разных методов, какие методы сам знаешь. Смотрят на то, насколько хорошо умеешь дизайнить рексис (это и раньше спрашивали, но поменьше)
И вакансий как будто стало сильно больше, чем раньше.
Видно что рынок рексиса растет и со временем критерии найма тоже растут. Будем смотреть, что будет дальше🙃
PS прикладываю таблички по компаниям, где проходил собесы в 2022 и 2023 годах
Раскатываем ML кабины
Алгоритмическая секция | Live-coding - как проходить?
Очень мало компаний, которые выделяют алгоритмы (или лайвкодинг, далее все это будет алгоритмами😎 ) в отдельную секцию. Обычно данные секции вставляют вместе с вопросами по ML или по питону. Но идея везде одна, и она поможет вам проходить алгоритмический секции максимально эффективно. Более того, данный подход уместен на практике и взять ровно оттуда.
Что проверяет алгоритмическая секция?
Дело в том, что алгосекция не проверяет ваши знания алгоритмов. Она проверяет, можете ли вы написать несложную программу с первого раза. Она проверяет, можете ли вы думать, прежде чем делать. И все. Не нужно иметь колоссальных познаний о алгоритмах и типах данных. Достаточно быть внимательным и предусмотрительным.
Но как?
В программировании есть шикарная техника разработки TDD(Test Driven Development). Идея метода состоит в том, что сначала мы пишем тесты для программы, а потом сам функционал.
Эта техника является ключевой для правильного решения задачи, и сейчас расскажу подробнее.
Рассмотрим на примере:
В магазине есть подарочные карты заданного номинала, по одной штуке на каждый номинал. Покупатель хочет приобрести 2 карты, чтобы их суммарный номинал был равен N. Написать алгоритм, который бы определил номиналы карт, который бы ему подошел.
Алгоритм решения:
Читаем условие задачи и пытаемся придумать примеры, которые могут быть критичны. Например:
- А что если миниммальная сумма стоимости карт меньше номинала?[10, 20], [30, 40], 5 -> ?
- А если один из списков пустой?
- А если подходящих номиналов несколько?
Сразу фиксируем данные тесты для последующей проверки. Если есть тесты, которые вызывают вопросы, спрашиваем у интервьюера.
Проговариваем решение вслух.
Как только мы учли все случаи, которые нам пришли в голову переходим к решению. Сначала придумываем самое простое решение, которое вы можете придумать:
"В данной задаче можно пройтись сначала по первому списку, потом по второму и считать, когда сумма будет равняться номиналу, но данное решение будет работать за O(N * M) и кажется слишком простым, возможно, получится быстрее решить задачу."
PS N и M длины первого и второго списка соответственно.
И потом начинаем рассуждать над его улучшением:
"На каждом шаге основного цикла мы просто проверяем вхождение элемента в список за O(M) N раз, возможно, можно оптимизировать этот процесс. Есть смысл использовать словарь для второго списка, так как скорость проверки наличия элемента в словаре равен O(1). Таким образом, нам удастся снизить время выполнения до O(max(M, N)), что вполне себе линейно"
Пытаемся понять, можно ли быстрее:
"Так как данные у нас не отсортированы, и нам нужно пройтись по всем данным быстрее, чем за линейное, не удастся реализовать данный метод"
И учитываем тонкости новой реализации:
"Так как нас попросили посчитать все возможные комбинации таких карт, нужно не забыть учесть дубли"
И тут дописываем еще один тест на этот случай.
Все, теперь мы готовы написать код программы!
Пишем само решение и после прогоняем несколько тестов.
Вы великолепны!
Немного общих советов
- В таких собеседованиях программу оформляем в виде функции, поэтому не забывайте писать тайпинги, подробнее про них можно прочитать тут
- Всегда проговаривайте, что вы делаете, чтобы у экзаменатора всегда было ощущение, что вы понимаете, что делаете
- Тесты стоит писать между условием и решением, чтобы они были перед глазами. Пишите тесты в одном формате
- Используйте короткие тесты. Очень тяжело и опасно прогонять длинные тесты (обычно в условии задачи именно такие). Пишите минимальные тесты, закрывающие конкретную проблему
- Когда прогоняете тесты, фиксируйте в блокноте промежуточные значения, иначе вероятность того, что вы запутаетесь, возрастет в разы
- Не забывайте про нейминг!
Желаю удачи!
Раскатываем ML кабины
Очень мало компаний, которые выделяют алгоритмы (или лайвкодинг, далее все это будет алгоритмами
Что проверяет алгоритмическая секция?
Дело в том, что алгосекция не проверяет ваши знания алгоритмов. Она проверяет, можете ли вы написать несложную программу с первого раза. Она проверяет, можете ли вы думать, прежде чем делать. И все. Не нужно иметь колоссальных познаний о алгоритмах и типах данных. Достаточно быть внимательным и предусмотрительным.
Но как?
В программировании есть шикарная техника разработки TDD(Test Driven Development). Идея метода состоит в том, что сначала мы пишем тесты для программы, а потом сам функционал.
Эта техника является ключевой для правильного решения задачи, и сейчас расскажу подробнее.
Рассмотрим на примере:
В магазине есть подарочные карты заданного номинала, по одной штуке на каждый номинал. Покупатель хочет приобрести 2 карты, чтобы их суммарный номинал был равен N. Написать алгоритм, который бы определил номиналы карт, который бы ему подошел.
cards_1 = [1, 2, 3, 4, 5]
cards_2 = [20, 5, 10, 15, 30]
nominal = 20
Алгоритм решения:
Читаем условие задачи и пытаемся придумать примеры, которые могут быть критичны. Например:
- А что если миниммальная сумма стоимости карт меньше номинала?[10, 20], [30, 40], 5 -> ?
- А если один из списков пустой?
- А если подходящих номиналов несколько?
Сразу фиксируем данные тесты для последующей проверки. Если есть тесты, которые вызывают вопросы, спрашиваем у интервьюера.
Проговариваем решение вслух.
Как только мы учли все случаи, которые нам пришли в голову переходим к решению. Сначала придумываем самое простое решение, которое вы можете придумать:
"В данной задаче можно пройтись сначала по первому списку, потом по второму и считать, когда сумма будет равняться номиналу, но данное решение будет работать за O(N * M) и кажется слишком простым, возможно, получится быстрее решить задачу."
PS N и M длины первого и второго списка соответственно.
И потом начинаем рассуждать над его улучшением:
"На каждом шаге основного цикла мы просто проверяем вхождение элемента в список за O(M) N раз, возможно, можно оптимизировать этот процесс. Есть смысл использовать словарь для второго списка, так как скорость проверки наличия элемента в словаре равен O(1). Таким образом, нам удастся снизить время выполнения до O(max(M, N)), что вполне себе линейно"
Пытаемся понять, можно ли быстрее:
"Так как данные у нас не отсортированы, и нам нужно пройтись по всем данным быстрее, чем за линейное, не удастся реализовать данный метод"
И учитываем тонкости новой реализации:
"Так как нас попросили посчитать все возможные комбинации таких карт, нужно не забыть учесть дубли"
И тут дописываем еще один тест на этот случай.
Все, теперь мы готовы написать код программы!
Пишем само решение и после прогоняем несколько тестов.
Вы великолепны!
Немного общих советов
- Всегда проговаривайте, что вы делаете, чтобы у экзаменатора всегда было ощущение, что вы понимаете, что делаете
- Тесты стоит писать между условием и решением, чтобы они были перед глазами. Пишите тесты в одном формате
- Используйте короткие тесты. Очень тяжело и опасно прогонять длинные тесты (обычно в условии задачи именно такие). Пишите минимальные тесты, закрывающие конкретную проблему
- Когда прогоняете тесты, фиксируйте в блокноте промежуточные значения, иначе вероятность того, что вы запутаетесь, возрастет в разы
Желаю удачи!
Раскатываем ML кабины
Please open Telegram to view this post
VIEW IN TELEGRAM