Почему после бакалавриата вы решили поступать именно на направление машинного обучения?

Я окончил бакалавриат в Университете промышленных технологий и дизайна, изучал там прикладную математику и информатику. К моменту выпуска я уже работал в EPAM Systems, занимался там биоинформатикой. В ИТМО была интересная программа по Big Data — моя работа как раз перекликалась с этим. И я подумал: почему бы и нет.

Мне понравилось то, что в ИТМО был индивидуальный подход к отбору кандидатов: он проходил в формате собеседований, с довольно простым экзаменом.

Как проходил процесс обучения? Насколько полезны оказались знания, полученные в ИТМО?

Наша кафедра была особенной в плане построения процесса обучения. Это была не такая магистратура, где ты ходишь на лекции, сдаешь сессию и через полтора года ты молодец. Нас всех разбили на команды: я был в команде больших данных, другие ребята были в команде визуализации и так далее. Мы работали над конкретными проектами с реальными клиентами вроде Роснефти, Siemens. Так мы учились работать с бизнесом, с индустрией. Некоторые наши проекты потом внедрялись, а наша работа оплачивалась.

Некоторые ребята с нашей кафедры вполне нормально зарабатывали и могли позволить себе не искать какую-то параллельную с учебой подработку. Поэтому у всех была мотивация. Иногда, работая над проектами, мы вообще забывали, что мы в университете. Это было похоже на HAI в Стэнфордском университете или исследовательскую группу в DeepMind. Сейчас, когда в ИТМО появился Центр компетенций по машинному обучению и искусственному интеллекту (полное название Центр компетенций НТИ по направлению «Технологии машинного обучения и когнитивные технологии» ― прим.ред.), это еще больше стало похоже на то, что есть в ведущих американских вузах.

Получается, процесс был построен так, что в течение полутора лет обучения мы делали разные проекты. И не было такого, что надо обязательно посещать занятия — все лекции были опциональны. Главным было успевать по проектам и публиковать научные результаты своей работы.

В магистратуре я научился работать с научной литературой — до этого у меня не было большого опыта изучения чужих статей, в целом поиска информации про текущие исследования. Сейчас, если я занимаюсь чем-то наукоемким, я открываю arxiv.org и ищу научные статьи с результатами, которые мне интересны. Также я углубился в теоретические основы машинного обучения и Data Science — до этого у меня были только практические навыки.

Фото: ITMO.NEWS

Фото: ITMO.NEWS

Расскажите о проектах, которыми вы занимались во время обучения. Какие были самыми интересными?

На самом деле про один из наших проектов даже написали в The Guardian. Идея проекта была в том, чтобы на основе данных из соцсетей, в частности, инстаграма, узнать, какие места популярны у туристов, а какие — у местных жителей. Для этого проекта мы собрали достаточно большой датасет — эти данные нам потом пригодились и на других проектах. Он до сих пор, кажется, хранится в дата-центре и им продолжают пользоваться. Также мы поняли, что существуют способы выкачивать большие данные из всех этих соцсетей — именно после этого проекта кафедра начала активно развивать это направление.

А как вообще начался ваш путь в IT?

С первого курса бакалавриата я работал системным администратором: мы занимались автоматизацией сельских магазинов, ездили по деревням Ленобласти. На третьем курсе я решил выбрать что-то более перспективное, при этом быстрое для входа, поэтому сел учить Java, как многие. Прошел собеседование в EPAM Systems (американская IT-компания с офисами в России и Европе, крупнейший мировой производитель заказного программного обеспечения ― прим. ред.). Устраивался я туда Java-разработчиком, но совершенно случайно меня занесло в отдел, который занимался биоинформатикой. И вместо того, чтобы заниматься «кровавым энтерпрайзом» и писать корпоративные приложения, я полтора года занимался проектами для работы с геном человека. Моим последним проектом в EPAM была система, которая помогала вести клинические испытания для лекарств против рака и диабета.

Когда я уже был на первом курсе магистратуры и все еще работал в EPAM, мне написали из стартапа Revolut — это довольно известный финтех-стартап, основанный выпускником Физтеха Николаем Сторонским. Сейчас он считается самым дорогим стартапом в Европе. Когда я туда пришел, там работало меньше ста человек, а компания стоила 300 миллионов долларов. Когда я уходил оттуда спустя два года, он стоил уже 1,8 миллиарда.

Revolut. Источник: revolut.com
Revolut. Источник: revolut.com

Вообще, в 2017 году был бум финтех-стартапов и различных мобильных банков. Мы запускали все хайповые вещи, которые были важны пользователям на тот момент: торговля криптовалютами и акциями без комиссий, обмен валют по реальному курсу биржи. Это и было главным фактором успеха и такого быстрого роста. За два года работы там я получил очень много опыта, очень многое успел сделать. Но проблема была в том, что мне приходилось очень много работать — к концу я уже практически выгорал.

Как только я окончил магистратуру, я решил переехать в Европу, а также сменить область деятельности: перестать заниматься классической разработкой, которая стала казаться мне скучной, и обратиться к Data Science и машинному обучению.

Я посмотрел, какой в Европе рынок, в какой стране больше стартапов, потому что я больше не хотел работать в большой компании. Я собеседовался, наверное, в каждую малую и среднюю компанию в Берлине и Амстердаме, в каждый активный стартап.

Почему вам так важно было устроиться именно в стартап?

Чем больше компания — тем меньше зона ответственности. В стартапе ты действительно чувствуешь, что влияешь на продукт, и все твои решения сказываются на компании, а не утопают в недрах бюрократии. В стартапе ты с большей вероятностью окружен командой мотивированных людей, которым нравится их работа и где все на равных. Большой плюс в том, что, если ты нанимаешься в такую маленькую команду в самом начале, то ты фактически имеешь долю в виде опционов, которую можно превратить через какое-то время в акции и продать в одном из последующих раундов инвестиций (в случае если они вообще будут). Быстрый карьерный рост в таких маленьких компаниях также обеспечен, если зайти достаточно рано. Также можно примерить на себя разные роли и стать вовлеченным в области, абсолютно не связанные с твоей областью деятельности, получить большую картину того, что происходит в компании и на окружающем ее рынке.

Берлин. Источник: shutterstock.com
Берлин. Источник: shutterstock.com

Почему все-таки остановились на Берлине?

Я выбрал Берлин по многим параметрам: высокие зарплаты, при этом не слишком дорогое жилье, здесь спокойно, стабильно, безопасно. Германия — это страна победившего социализма, здесь сильные профсоюзы, есть даже профсоюз программистов — их права защищены. Процесс получения визы тоже оказался крайне простым: если ты учился в ИТМО, МФТИ или ряде других вузов, тебе очень быстро ее дают. Мне визу для квалифицированных наемных сотрудников с высшим образованием (так называемую blue card) дали на следующий день. Тут очень большая нехватка работников в IT: дефицит примерно один к трем, то есть занята только треть вакансий.

Сначала я устроился в HelloFresh — это сервис доставки готовых коробок с продуктами для самостоятельного приготовления блюд. Компания основана в Германии, но работает по всей Европе, а самый крупный рынок у нее в Америке — до пандемии там заказывали около миллиона коробок в неделю, сейчас эта цифра выросла в несколько раз.

Источник: shutterstock.com

Источник: shutterstock.com

Моя команда занималась предсказанием, в какой стране сколько коробок будет заказано, а также составлением меню на основе предпочтений пользователей и питательных характеристик блюд. Но из-за того, что у нас был не очень хороший менеджмент, команда начала выгорать и распадаться уже через 10 месяцев после того, как я туда устроился. Ушла половина команды, и я в том числе.

Так я попал в Anaconda, где я теперь занимаюсь созданием платформы для Data Science на базе собственных open-source разработок компании, развитием и улучшением инструментов для дата-сайентистов. Все инструменты, которыми сейчас пользуются дата-сайентисты, так или иначе продукт Anaconda: дистрибутивы и библиотеки для языков Python и R для осуществления вычислений с большими массивами, например, NumPy. Вообще, это американская компания, но у нее есть свой офис в Берлине. Но работаю я все равно удаленно.

Работа с большими данными вам нравится больше, чем разработка?

На самом деле, программирование — это инструмент, я не представляю, как без этого навыка можно заниматься чем-либо в IT. Когда я работаю с большими данными и машинным обучением, я все равно пишу код, занимаюсь инфраструктурой. Так или иначе, всем дата-саентистам приходится уметь программировать и строить системы. Я вижу разработку как вход, после которого уже можно выбрать специализацию.

Степан Ракитин. Фото из личного архива собеседника

Степан Ракитин. Фото из личного архива собеседника

Что бы вы посоветовали нынешним и будущим студентам, которые хотят построить успешную карьеру в IT? На что им обратить внимание?

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

Еще побольше отдыхайте и не выгорайте. Очень многие думают, что чем больше они будут работать, тем быстрее пойдут вверх по карьерной лестнице. На самом деле, так не будет. Работать надо в нормальном темпе, иначе можно вообще потерять интерес к своей области.

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

Как по мне, самый простой способ войти в IT — это стать тестировщиком. Это очень востребованная профессия: их всегда не хватает, потому что все ребята стремятся в разработку, а тестирование считают чем-то недостойным. На самом деле там и по деньгам сопоставимые зарплаты, а задачи порой интереснее, ближе к бизнесу и его требованиям.