Мегапосты:
Обо мне

Senior Full-Stack Data Scientist, Machine Learning Specialist. Имею большой опыт в анализе данных.

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

  • рекомендательные системы (начиная от реализации алгоритмов и заканчивая из внедрением в бой)
  • поиск (начиная от генерации признаков и тестирования гипотез и заканчивая построением модели ранжирования поисковой выдачи и внедрением поисковой модели в backend)
  • кредитный скоринг (генерация признаков и построение модели, визуализация)
  • глубокое обучение, сегментация изображений (чтение англоязычной литературы; реализация новых подходов глубокого обучения; построение, тестирование и обучение различных архитектур нейросетей)
  • Предсказание временных рядов (выявление закономерностей в различных временных рядах, поиск аномалий, выявление трендов и сезонностей, построение моделей)

Занимаюсь консультациями по машинному обучению и его внедрением в production. Являюсь действующим преподавателем ВШЭ

Уровень английского: upper-intermediate

Опыт работы
Национальный исследовательский университет «Высшая школа экономики»
Research Fellow
Сентябрь 2017 — По настоящее время (2 года и 5 месяцев)
Машинное обучение для обработки фото и видео
Senior Machine Learning Specialist
Апрель 2017 — Сентябрь 2017 (6 месяцев)

Deep Learning, Convolutional Neural Networks, Image Recognition

Double Data
Москва
Data Scientist, Scala-developer
Май 2016 — Март 2017 (11 месяцев)

Задачи

Разработка и поддержка сервиса поиска людей в социальных сетях Тестирование и улучшение Machine Learning - моделей

Построение, тестирование и реализация новых критериев поиска

• Разработка высоконагруженного сервиса поиска с использованием Scala иAkka

• Анализ различных данных, выявление закономерностей

Анализ огромных (>1TB) социальных графов на Apache Spark

Software engineering (Java, Scala), Testing (Specs2, JUnit)

Предсказание кредитного мошенничества с использованием Machine Learning - алгоритмов

Достижения и полученные навыки

• В команде из 4 человек за очень короткие сроки (3 месяца) написал движок для поиска людей в социальных сетях

Научился эффективно применять Apache Spark на очень больших объёмах данных (>1 TB)

• Почти в совершенстве овладел применением Python, Pandas, Numpy, etc.для анализа данных и тестирования гипотез. Сделал очень много различных отчётов, анализов и исследований на Jupyter. Научился качественной презентации исследований и полученных результатов

Научился эффективному использованию TDD в разработке высоконагруженных систем на Scala (с использованием фрэймворковSpecs2, Mockito, TestNG, JUnit и т.д)

Data Scientist
Октябрь 2015 — Апрель 2016 (7 месяцев)

За время работы в компании я добился следующего:

- С нуля за кратчайшие сроки (4 дня) написал отказоустойчивый, многопоточный планировщик задач для Spark'a (на Java), который позволил сервису запускать пересчёт алгоритмов в 3 раза чаще.

- Сократил время выполнения некоторых алгоритмов на Spark'e до 5 раз за счёт уменьшения числа wide transformatinos

- Полностью переделал организацию исходных кодов рекомендательных алгоритмов и проделал почти полный их рефакторинг

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

- Оптимизировал ElasticSearch-запросы

- Участвовал в продумывании и реализации новой архитектуры хранения и вычисления данных

- Написал кучу скриптов для аналитики на Spark'e

- Написал алгоритм, который повысил CTR рекомендаций для низкопосещаемых урлов почти до уровня рекомендаций на частопосещаемых урлах (на некоторых крупных площадках CTR таких рекомендаций отличался всего лишь на 0.09 %)

- Написал предсказание популярности урлов по динамике репостов в социальных сетях и динамике просмотров

- Написал распараллеленную платформу для пересчёта алгоритмов в онлайн-режиме (Akka)

- Придумал и реализовал алгоритм для стриминговой сегментации урлов по их содержимому на семантические группы

Steppechange
Санкт-Петербург
junior Java developer
Июнь 2015 — Сентябрь 2015 (4 месяца)
Разработка, проектирование, тестирование и поддержка высоконагруженного Big Data сервиса с использованием Apache Hadoop и Amazon Web Services (SQS, SNS, EMR, EC2, S3). Научился писать качественный код по TDD (TestNG, JUnit), работать с NoSQL-БД и распределенными хранилищами. За время работы прочитал дофига гайдов про AWS (все на английском, в сумме около 1000 страниц), хорошо разобрался в инфраструктуре Hadoop'a
Высшее образование
Национальный исследовательский университет «Высшая школа экономики»
Москва
Факультет: Факультет компьютерных наук
Сентябрь 2016—По настоящее время (3 года и 4 месяца)

Являюсь студентом очного отделения НИУ ВШЭ (г. Москва) факультета компьютерных наук (ФКН) направления Data Science.

Преподавание: Веду во ВШЭ семинары по курсу "Прикладные методы Машинного Обучения"

Диплом: Кросс-доменная адаптация с помощью нейронных сетей на прямом распространении ошибки

Новосибирский государственный университет
Новосибирск
Факультет: Физический; ФФ
Сентябрь 2011—Июнь 2015 (3 года и 9 месяцев)

Победитель студенческой олимпиады МФТИ по математике (2015)

Призёр студенческой олимпиады МФТИ по физике (2015)

В школе (СУНЦ НГУ) достиг следующих достижений:

  • победителель Всесибирской олимпиады школьников по математике
  • победителель Регионального этапа Всероссийской олимпиады школьников по физике
  • победителель Всероссийской студенческой олимпиады МФТИ по математике "Магистратура МФТИ"
  • призером Всероссийской студенческой олимпиады МФТИ по физике (диплом 2 степени)
Дополнительное образование
Бесплатная образовательная программа от компании «Яндекс»
Москва
Сентябрь 2014—Май 2017 (2 года и 8 месяцев)

Являюсь выпускником ШАД Яндекса. Посетил следующие курсы:

Algorithms and Data Structures of Search 1: Data Structures, Sorting Algorithms, Dynamic Programming, Algorithms on Trees

Algorithms and Data Structures of Search 2: Finite State Machines, Grammars, Algorithms of Substrings Search

Discrete Math and Statistics

C++: Basics, C++11, Smart pointers, Memory Allocation, Iterators, OOP

Parallel and Distributed Calculations: C++11 Multithreading, OpenMP, MPI, MapReduce, Hadoop

Python: Functional Programming, Iterators and Generators, Unit-testing, Collections, OOP

Machine Learning 1: Metrical algorithms (KNN), Linear Regression, Decision Trees and Random Forest Ensemble (C4.5, ID3, CART), SVM, Gradient Boosting, XGBoost, Feature Selection, Grid Search, Cross Validation, SVD

Machine Learning 2: Stacking, Clusterization (K nearest mean), Page-Rank (Pair-wise, Point-wise, SVM Light), Collaborative filtering (Pure SVD), AdaBoost

Deep learning: Image segmentation, patterns recognition, image classification Frameworks: Tensorflow, Keras, Theano, Lasagne.

Reinforcement learning: Q-learining, Monte-Carlo methods (Cross-entropy), SARSA, N-step Q-learning, N-step SARSA, Expected value SARSA, Deep Reinforcement Learning Frameworks: Tensorflow, Keras, Theano, Lasagne.