Ultimate Guide по карьере в AI: как выбрать специальность, прокачаться и найти классную работу

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!



3 августа в наших соцсетях выступал Сергей Ширкин, специалист по ML и искусственному интеллекту.

Сергей занимался автоматизацией финансовых технологий и базами данных в «Сбербанке» и «Росбанке», построением финансовых моделей на основе машинного обучения и аналитической деятельностью в компании Equifax. Прогнозирует телесмотрение с применением методов искусственного интеллекта в Dentsu Aegis Network Russia. Приглашённый преподаватель ВШЭ (магистерская программа «Коммуникации, основанные на данных»).

Также Сергей исследует квантовые вычисления в приложении к ИИ и машинному обучению. Он стоит у истоков факультетов Искусственного интеллекта, Аналитики Big Data и Data Engineering онлайн-университета Geek University, на которых работает деканом и преподавателем.

Делимся с вами расшифровкой эфира и записью.

***

Меня зовут Сергей Ширкин, сегодня мы поговорим об искусственном интеллекте. Обсудим начальные пути – как попасть в искусственный интеллект, как обучиться необходимым предметам, какие курсы пройти, какую литературу читать, как начать карьеру. Также про различные направления.

Сегодняшние темы могут быть интересны не только новичкам, но и опытным программистам – например, как перейти из сферы программирования в сферу машинного обучения, искусственного интеллекта, нейронных сетей. В зависимости от того, в какой технологии человек занимается и какие языки изучает, практичный переход в эту сферу может проходить по-разному. Специальностей в ИИ очень много.

Порекомендуйте материалы по самостоятельному погружению в ИИ?


Если вы совсем новичок, то лучше начать с изучения Python. Быстрый способ для этого, как я видел на примере других новичков – это сайт PythonTutor.ru. Там надо изучить теорию и порешать задачи – хотя бы процентов 70. Задачи могут показаться сложными, если вы совсем не программировали до этого.

Следующий шаг – язык запросов SQL, и здесь поможет сайт SQL-EX.ru: там есть упражнения по SQL. Они организованы по этапам: обучающий этап, этап для получения рейтинга – можно занять определенное место в рейтинге. Здесь вы научитесь работать с базами данных. Параллельно там есть обучающие материалы от автора Моисеенко, и их довольно легко изучить.

Потом потребуется изучить само машинное обучение. Различные алгоритмы, начиная с линейной регрессии, логистической регрессии, вплоть до градиентного бустинга. Здесь очень много материалов. Потом можно перейти к нейронным сетям – для компьютерного зрения, для NLP; вы изучите сверточные, рекуррентные нейронные сети, и самые современные – трансформеры, Берт и т.д.

Расскажу про развитие ИИ. Если посмотреть на историю этого развития до 2010, то она достаточно скудна: были, конечно, некоторые великие свершения в ИИ и в смежных областях – в больших данных, например, и были готовы многие математические алгоритмы. Но для ИИ было недостаточно вычислительной мощности и данных. Начиная с 2010 года – скорее, с 2012 – пошел бурный рост ИИ. В 2012 году на одном из соревнований нейросеть победила классические алгоритмы машинного зрения и научилась распознавать около 1000 классов изображений.

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

Сейчас компьютерное зрение достигло больших успехов. Параллельно развивается обработка естественного языка – NLP. С появлением модели GPT-3, которые создала компания OpenAI пару месяцев назад, нейросеть научилась генерировать текст (а также музыку и другие последовательности). Это один из важных шагов в NLP – скорее всего, в этом десятилетии она достигнет расцвета. Появятся чат-боты, которые смогут полноценно поддерживать диалог с человеком.

SQL и Python немного. После курсов по data science, без опыта, можно сразу устроиться data scientist, или сначала надо поработать аналитиком БД?


Сейчас попасть в data science сложнее, чем 5 лет назад. Тогда можно было принять участие в каком-нибудь конкурсе на Kaggle и занять место – не обязательно самое первое, например, в первых 10% — в каком-нибудь интересном соревновании, не обучающего уровня. После этого можно было уже ходить по компаниям, отвечать на несложные вопросы по машинному обучению, и такого человека могли взять. Специалистов было мало.

Сейчас все гораздо сложнее, поэтому иногда не получается сразу после того, как вы изучили машинное обучение и математику, попасть на вакансию своей мечты – специалиста по ИИ или data scientist.

Хороший путь – сначала поработать с данными, аналитиком баз данных или аналитиком данных. Факт в том, что вы должны научиться предварительно обрабатывать, чистить данные, применять статистику. Это могут быть технологии БД, Python в том числе. Когда вы наберетесь опыта, появится у вас бэкграунд, то вы сможете, используя свои знания по библиотекам data science в Python – Pandas, NumPy, SKLearn, устроиться на вакансию, связанную с ИИ или data science.

В чем отличия специалистов от ИИ от data scientists?


Нужен ли C++ специалисту по ИИ? Что посоветуете изучить для того, чтобы стать спецом по компьютерному зрению?

Сейчас в вакансиях западных компаний появилось разделение: помимо data scientist есть отдельные вакансии для специалистов по ИИ. Раньше подразумевалось, что data scientist – это человек, который занимается и анализом табличных данных, и задачами компьютерного зрения, и задачами NLP. Также существовала вакансия аналитика данных – она оплачивалась меньше, хотя и была также довольно престижной; такой человек должен был анализировать данные, но не слишком углубляться в ИИ, связанный с речью, текстом и изображениями, работая в основном с табличными данными. Затем произошло смешение вакансий: в Долине всех аналитиков данных стали называть data scientist, включая и тех, кто работает только с табличными данными, и тех, кто работает с NLP и компьютерным зрением. И одновременно, чуть позже, начали выделять отдельно специалиста по ИИ. В российских компаниях обычно такого разделениям нет, хотя иногда бывают специализированные вакансии – например, «инженер NLP/компьютерного зрения». Data scientist’у желательно понемногу уметь все.

Насчет С++: самый основной – это Python. То есть, если вы работаете специалистом по ИИ, вы должны использовать TensorFLow, Keras или PyTorch – он сейчас на первом месте. Но если вы пишете более низкоуровневые программы – например, если вакансия связана с робомобилями, то часто будет требоваться код на C++. Python не всегда быстро работает. Библиотеки для машинного обучения обычно написаны на C++, но иногда нужно всю программу написать на C++: помимо самих моделей может работать логика (if-else и т.д.), и на С++ это работает быстрее. Конечно, сразу приходить на такую вакансию сложно, и лучше сперва поработать на такой, где будет достаточно Python – например, там, где идет аналитика соцсетей с анализом изображений, без потребности в быстрой обработке.

Для того, чтобы стать спецом, надо научиться работать с библиотеками для нейронных сетей, изучить библиотеку OpenCV для Python – она также есть для C++. Так вы получите инструментарий. Еще желательно уметь работать с библиотекой NumPy, понимать саму математику анализа изображений – то есть, разбираться в линейной алгебре и матанализе, также – знать архитектуру нейронных сетей. И так далее.

Почему на собеседованиях в ML задают вопросы о том, как разруливать конфликты в hash-таблице?


Почему это – маркер при приеме на работу, если это можно загуглить по ходу?

Не в каждой вакансии это спрашивают. Если вы идете на аналитику табличных данных, то вряд ли у вас это спросят. Точно спросят, если вы претендуете на место ML-инженера: то есть, вы не просто создаете модели ML, вы их еще и внедряете, и вам надо знать алгоритмы и структуры данных. А если вы разрабатываете что-то наподобие робомобиля, то – тем более: там придется писать код высокого и низкого уровня, и это знание обязательно. А иногда такое знание требуется и в анализе табличных данных – допустим, вы пишете модуль для этого на C++.
Если вы пока не готовы на такие вакансии претендовать, можно пройти побольше собеседований. Допустим, если вы пойдете устраиваться data scientist’ом в банк, то там подобных вопросов будет меньше.

Пишу на Python 10 лет, но без высшего образования. Насколько сложно входить в сферу ИИ без вышмата?


Высшая математика нужна. Придется пройти курсы или изучить литературу, и это будет долгий процесс. Вам будет нужна подготовка по линейной алгебре, математическому анализу, теории вероятности и математической статистике. Обычной школьной программы явно не хватит для того, чтобы заниматься ИИ; конечно, программы бывают разные – в некоторых школах и в 10-м классе проходятся темы из ВУЗов, но такое редко бывает.

Pandas, SKLearn, Catboost, Seaborn, результаты в тренировочных соревнованиях Kaggle – 3% и 13%. Нужно ли погружаться в DL, или уже можно искать работу?


По библиотекам уже все хорошо; у вас уже есть Pandas – библиотека для работы с табличными данными, и SKLearn – модели машинного обучения, и Catboost – градиентный бустинг, и Seaborn – для визуализации. Результаты 3% и 13% — значит, если это не учебные соревнования, то с такими результатами у вас уже должна быть какая-то медаль.

Deep Learning не всегда нужен. Вы можете уже пробовать искать работу, я думаю. Но, если вам нужна именно работа с DL, то нужно еще поучить нейронные сети.

Какой базовый набор книг нужно прочесть?


Я собираюсь показать свои книги в конце стрима. Я выбрал базовый набор, ничего особенно продвинутого.

Насколько сейчас востребованы эти профессии? Будет ли много вакансий через 2 года?


Если вспомнить 2015-16 годы – тогда, например, на Headhunter было не больше 5-10 вакансий data scientist. То есть, был практически пустой рынок. Конечно, потом было переименование аналитиков в data scientist, но этого тоже было немного.

Сейчас одномоментно требуется несколько сотен, если смотреть по тому же сайту. Говорят, есть вакансии, которых там нет. Например, на ODS – OpenDataScience – если посмотреть, есть отдельный раздел вакансий. В целом, пока вакансии не кончаются – я думаю, через 2 года их будет только больше. Не только крупные компании этим занимаются: есть стартапы, мелкие компании; data scientist’ы сейчас требуются и в госучреждениях – например, в разных муниципальных департаментах, в налоговой службе и так далее.

В какой отрасли ИИ наиболее востребован?


Самое простое применение ИИ, где его явное применение может автоматизировать большое количество умственной работы специалистов – это финансовая сфера. Есть огромное количество банков. Каждому из них нужно, например, оценивать кредитоспособность заемщиков – то есть, определять по различных признакам, стоит ли выдавать кредит, не переоценивает ли человек свои силы и сможет ли вернуть кредит. Это самое очевидное использование ИИ.

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

Сто ценится больше при приеме на работу в data science: знание математики, понимание работы конкретных алгоритмов, опыт работы?


За плечами техническая магистратура и год работы аналитиком данных в консалтинге.

У вас хороший бэкграунд – технический вуз, год работы аналитиком данных. Если вы уже изучили технологии и умеете программировать, то попасть в data science легко. Если вы работали а анализе БД и знаете SQL – это большой плюс, а если прибавить программирование и машинное обучение – это очень хороший набор.

Расскажу о том, как я строю модели машинного обучения на работе. Компания, в которой я работаю – это Dentsu Aegis, очень известная компания, особенно среди тех, кто работает в маркетинге. Это коммуникационная группа, входящая в топ-5 в мире; ее штаб находится в Токио, есть офисы в 145 странах. Российский филиал – Dentsu Aegis Network Russia. В России работает 25 лет и выступает пионером медиа-инноваций.

Я расскажу про тот участок, за который отвечаю как data scientist. Это как раз то применение, о котором я рассказывал как о наиболее очевидном в практическом применении. ИИ в маркетинге помогает автоматизировать многие задачи специалистов, и одна из них – прогнозирование просмотра различных видов контента различными целевыми аудиториями. Я расскажу подробнее про одну из своих непосредственных задач – прогнозирование телесмотрения.

Аудиторий может быть несколько сотен, и для того, чтобы их прогнозировать вручную, требовалась бы работа десятков специалистов. Это непомерно. Очень большое количество данных – до миллиардов строк в таблицах. Надо заботиться не только о том, чтобы построить модель машинного обучения, но и о том, чтобы она быстро работала. Для такой работа надо хорошо знать реляционные и нереляционные БД, работать с Linux, иметь навыки devops и вообще разбираться в архитектуре приложения, в IT-инфраструктуре компании, хорошо знать Python, возможно – C++.
Когда мы строим прогноз телепросмотров, мы применяем современные методы машинного обучения. Для табличных данных это градиентный бустинг и случайный лес. Если анализируется текст, мы применяем нейронные сети; помимо них – тематическое моделирование, TF-IDF и другие распространенные методы NLP.

Мы применяем градиентный бустинг, потому что, если мы прогнозируем с использованием табличных данных, то по работе с такими данными градиентный бустинг опережает все известные алгоритмы. В Kaggle, начиная с 2018 года, все основные достижения в соревнованиях с использованием табличных данных достигались именно с помощью градиентного бустинга. Большинство кегглеров тогда перешло на XGBoost – это была первая известная библиотека для градиентного бустинга, а позже многие освоили LightGBM от Microsoft или CatBoost от Yandex. Для задачи прогноза просмотров телепередач также хорошо подходит применение временных рядов, но такие методы не всегда хорошо работают – периодически появляются неожиданные события, на которые нужно вовремя реагировать или предвосхищать. Иногда встречаются большие аномальные периоды – от нескольких дней до месяцев: например, ЧМ по футболу в 2018 году сильно повлиял на просмотры. Карантин тоже стал аномальным периодом: люди начали проводить больше времени дома и больше смотреть ТВ. Это тоже надо как-то учитывать, предвосхищать. Вообще, этот период – это своеобразный вызов для машинного обучения и ИИ, потому что нужно постоянно осуществлять мониторинг моделей и контролировать их, чтобы они работали корректно. Помимо аномальных периодов на прогноз оказывают влияние праздники, погодные условия, изменения трендов в просмотрах конкретных передач и каналов. В итоге модели получаются достаточно сложными, потому что надо учесть все возможные варианты, учесть или предвосхитить аномалии и отклонения.

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

Один из самых объемных по времени этапов работы с данными – это feature engineering: обработка или создание признаков. Для этой части data science нужен большой опыт: заранее известных рецептов либо нет, либо они слишком просты, и способы подготовки признаков приходится придумывать на ходу.

Иногда в данных встречаются курьезы: допустим, зритель включает ТВ вечером и засыпает. Получается так, как будто он всю ночь смотрел передачи. Это один из примеров шума в данных – вроде бы данные точные, а вроде бы и нет, и это нужно учиться угадывать, хотя это и сложно. Кроме того, ночью обычно показывается очень мало рекламы.

Когда мы строим модель, надо не просто сделать так, чтобы она работала, но и обеспечить тестирование и мониторинг. Для этого нам нужны метрики. Так как у нас задача регрессии, наш набор метрик будет отличаться от набора для классификации, например. Это среднеквадратичная ошибка и коэффициент детерминации – они все очень важны. Также есть метрики, которое приходится создавать самостоятельно для решения определенной бизнес-задачи – например, задачи оптимизации расходов на рекламную кампанию. В таком случае нам надо предсказывать не только телевизионный рейтинг, но и охват рекламной кампании; у нас работает не только машинное обучение, но и сложные статистические и эконометрические методы. Это тот случай, когда знаний машинного обучения оказывается недостаточно: здесь нужен матанализ, линейная алгебра, методы математической оптимизации. В отличие от обычных задач машинного обучения – регрессии, классификации, кластеризации – здесь приходится придумывать собственные методы, и одного программирования не хватит.

Хочу упомянуть программу Высшей школы экономики – «Коммуникации, основанные на данных». Приходилось по ходу работы помогать студентам на этой программе, они занимаются маркетингом и предметами, связанными с машинным обучением. Собственно, для чего машинное обучение и data science маркетологу? Раньше не предполагалось, что специалист такой области будет программировать и делать сложные модели, но сейчас это – навык, который дает преимущества на рынке труда. Если специалист, дополнительно к своей профессии, овладел data science, то он получает возможность либо поменять работу и стать data scientist’ом, либо продолжить развиваться в своей предметной сфере, но с большими конкурентными преимуществами. Знаток машинного обучения сможет делать более точные прогнозы, но для этого потребуется многое изучить.

Стоит ли обратить внимание на курс Data Science МФТИ/Yandex, или, возможно, посмотреть в сторону Udacity?


Я так понимаю, вы имеете ввиду курс от МФТИ/Yandex на Coursera. Udacity – это отдельная площадка для обучения; там не только data science, хотя для ИИ и data science и предназначена довольно большая часть курсов. Я рекомендую не зацикливаться на одном ресурсе, а попробовать пройти несколько курсов. Курсы не совпадают на 100%, вы всегда можете найти что-то новое, чего раньше не знали. Также новый курс можно использовать для повторения. Например, курсы на GeekBrains на наших факультетах ИИ, data engineering и аналитики big data. Так как я являюсь их деканом и преподавателем, я могу более подробно рассказать о них.

Курсы объединяются в факультеты – например, на факультете искусственного интеллекта есть 17 курсов, плюс 8 дополнительных. Почти в каждом курсе есть практическая работа как финальный проект. Таким образом, у обучающегося на нем специалиста появляется практика. Я рекомендую не просто изучать теорию, а делать проекты: хорошие практические умения приблизят вас к прохождению собеседований и началу карьеры.

Я сам обучался некоторое время назад на Udacity – проходил курс по робомобилям, очень длинный, запланировано было 9 месяцев, но курс длился около года. Действительно узнал много нового, впечатления от платформы положительные. Но, конечно, все курсы там преподаются на английском.

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


Неприятный процесс. Для этого нет готового рецепта – нужно огромное количество тестов. Точнее, есть готовые модели, но они рассчитаны только на обнаружение аномалий в прошлом, а их нужно не только обнаруживать, но и предвосхищать.

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

Если даже в будущем не будет аномалий, прошлые аномалии могут повлиять на ваш прогноз. Здесь есть много методов; самый простой – удаление аномальных данных, но, если их много, это может привести к выпадению целого периода временного ряда из рассмотрения, поэтому такой способ не всегда подходит.

Каким образом устроиться на работу без подтвержденного опыта?


Хороший опыт – это ваши проекты. То есть, если вы не просто учите теорию, а сразу делаете проект — желательно, под руководством ментора (человека с опытом в data science и ИИ) – то вы знаете, что вы делаете. Вы не просто умеете применять теорию, или применять модель к данным, найденным в интернете, а решать практические задачи. При работе над такими проектами вы получаете знания, которые нельзя получить из книг и курсов, и помощь ментора здесь неоценима.

Поговорим о книгах – я приготовил небольшую стопку.

Если вы работаете в data science, то, скорее всего, вам придется работать в среде Linux. При этом вы не будете администратором – то есть, слишком глубокие знания вам не понадобятся – но уверенное знание этой платформы для простых административных задач (планирование запуска скриптов или распоряжение ресурсами ОС) будет обязательно. Здесь поможет книга «LINUX – карманный справочник» Скотта Граннемана. Его можно изучить за пару дней.

По теории вероятностей я бы порекомендовал книгу Г. Г. Битнера «Теория вероятностей» — в ней есть и теория, и задачи. Теория вероятностей пригодится вам и на собеседовании, и в работе.
Любому, кто работает в IT, требуется минимальный набор знаний и навыков. Соответственно, книга «Теоретический минимум по Computer Science – все, что нужно знать программисту и разработчику» (Фило Владстон Феррейра) — это ликбез по computer science.

Если вы будете погружаться в программирование и низкоуровневые разработки, то вам будут нужны алгоритмы. В книге «Алгоритмы для начинающих – теория и практика для разработчика» Паноса Луридаса даются алгоритмы без привязки к конкретному языку. Есть более объемная книга для C++ — «Алгоритмы на C++» Роберта Седжвика; она полезна, если вы хотите исключить какие-то высокоуровневые операции, которые есть в Python, и создавать алгоритмы с нуля.

Если вы хотите получить общее представление о верхнеуровневой работе специалиста по data science, то вам подойдет книга «Работа с данными в любой сфере – как выйти на новый уровень, используя аналитику» Кирилла Еременко. Здесь нет программирования. Но, если вы уже специалист, она пригодится вам только в том случае, если вы еще не работали с данными.
Далее: «Data Science. Наука о данных с нуля» Джоэля Граса – тоже полезная книга. От того же издания – «Практическая статистика для специалистов Data Science. 50 важнейших понятий» Питера Брюса и Эндрю Брюса. Здесь тоже можно изучить статистику.

Если вы будете работать с данными в Python и использовать библиотеку Pandas, то вам обязательно нужна «Python и анализ данных» Уэса Маккини – автора самой библиотеки Pandas.
По машинному обучению я рекомендую две книги: «Машинное обучение» Петера Флаха и «Python и машинное обучение» Себастьяна Рашки.

Для глубокого обучения есть книга «Глубокое обучение на Python» Франсуа Шолле, там можно изучить нейронные сети для задач NLP и компьютерного зрения. Конкретно по NLP есть «Прикладной анализ текстовых данных на Python» — Бенджамин Бенгфорд, Ребекка Белбро и Тони Охеда.

Если хотите изучить TensorFlow для глубокого обучения – есть одноименная книга Бхарата Рамсундара и Реза Босаг Заде.

Также есть книга, в которой просто и понятно объясняются принципы работы нейронных сетей – книга Эндрю Траска «Грокаем глубокое обучение». Есть также «Грокаем алгоритмы» — там хорошо объясняются алгоритмы, которые могут пригодиться на собеседовании и на практике.

Что вы спрашиваете на собеседованиях?


Есть небольшой сборник вопросов. Есть вопросы по классическому машинному обучению – специалист, который устраивается в сферу data science и ИИ, должен знать, как работают классические модели машинного обучения: линейная, логистическая регрессия, градиентный спуск, регуляризация L1-L2. Нужно, чтобы человек рассказал про принцип работы деревьев решений, про критерий информативности для задач классификации и регрессии; чтобы человек знал, как работает случайный лес, градиентный бустинг. Очень хорошо, если он знает отличия моделей градиентного бустинга – Catboost, LightGBM, XGBoost – то есть, чем отличаются эти библиотеки, как в них реализован градиентный бустинг. Также нужно, чтобы человек владел библиотеками для машинного обучения – Pandas, NumPy, SKLearn. Если специалисту нужно будет работать с нейронными сетями, с компьютерным зрением, с NLP, то будут вопросы по этим темам.
Вопросов может быть очень много. Если человек хорошо отвечает, то интересно бывает расспросить его о каких-то его проектах – если человек что-то сделал, у собеседующего сразу появляется много вопросов, связанных именно с проектами. Если у вас на GitHub есть личные проекты, или учебные проекты с курсов – будет очень хорошо, если вы сумеете подробно рассказать про технологии и алгоритмы, которые вы применяли.

Помимо этого, на собеседовании можно спрашивать разные базовые вопросы. Обычно, если человек хорошо отвечает на них – скорее всего, хороший специалист. Конечно, важно, чтобы он сумел выполнить тестовое задание. Теория – это одно, а вот то, как человек сможет решить практическую задачу, запрограммировать ее, какой он напишет код – это тоже важно. Если человек знает всю теорию, но присылает код, в котором не используется OP, когда это нужно – значит, он не знает, как правильно применять теорию. Кроме того, конечно, сам код должен быть читабельным и комментированным.

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

Что должно быть написано в резюме, чтобы получить приглашение на собеседование?


Резюме – это ответственный момент. Во-первых, оно не должно быть раздутым по объему: в нем должен быть только релевантный опыт. Если вы работали по специальности, не связанной с IT – это не нужно. Перечислите свои достижения вкратце, проекты, пройденные курсы, релевантные для вакансии. Вписывайте то, что показывает вас как специалиста, который способен выполнять эту работу. И, конечно, резюме должно быть читабельно.


Что было ранее


  1. Илона Папава, Senior Software Engineer в Facebook — как попасть на стажировку, получить оффер и все о работе в компании
  2. Борис Янгель, ML-инженер Яндекса — как не пополнить ряды стремных специалистов, если ты Data Scientist
  3. Александр Калошин, СEO LastBackend — как запустить стартап, выйти на рынок Китая и получить 15 млн инвестиций.
  4. Наталья Теплухина, Vue.js core team member, GoogleDevExpret — как пройти собеседование в GitLab, попасть в команду разработчиков Vue и стать Staff-engineer.
  5. Ашот Оганесян, основатель и технический директор компании DeviceLock — кто ворует и зарабатывает на ваших персональных данных.
  6. Сания Галимова, маркетолог RUVDS — как жить и работать с психиатрическим диагнозом. Часть 1. Часть 2.
  7. Илья Кашлаков, руководитель фронтенд-отдела Яндекс.Денег — как стать тимлидом фронтендеров и как жить после этого.
  8. Влада Рау, Senior Digital Analyst в McKinsey Digital Labs — как попасть на стажировку в Google, уйти в консалтинг и переехать в Лондон.
  9. Ричард «Левелорд» Грей, создатель игр Duke Nukem 3D, SiN, Blood — про личную жизнь, любимые игры и о Москве.
  10. Вячеслав Дреер, гейм-дизайнер и продюсер игр с 12-летним стажем — про игры, их жизненный цикл и монетизацию
  11. Андрей, технический директор GameAcademy — как видеоигры помогают прокачивать реальные навыки и найти работу мечты.
  12. Александр Высоцкий, ведущий PHP-разработчик Badoo — как создаются Highload проекты на PHP в Badoo.
  13. Андрей Евсюков, заместитель CTO в Delivery Club — про найм 50 синьоров за 43 дня и о том, как оптимизировать фреймворк найма
  14. Джон Ромеро, создатель игр Doom, Quake и Wolfenstein 3D — байки о том, как создавался DOOM
  15. Паша Жовнер, создатель тамагочи для хакеров Flipper Zero — о своем проекте и другой деятельности
  16. Татьяна Ландо, лингвист-аналитик в Google — как научить Google-ассистента человеческому поведению
  17. Путь от джуна до исполнительного директора в Сбербанке. Интервью с Алексеем Левановым
  18. Как Data Science продает вам рекламу? Интервью с инженером Unity



Источник: https://habr.com/ru/company/ruvds/blog/520730/


Интересные статьи

Интересные статьи

Почему утренняя лента начинается с трех подряд записей бывшего коллеги? Кого соцсети показывают в «Рекомендованных друзьях»? Как оказаться в ленте у людей, которых хочется узнать поближе?...
Мобильные устройства стали практически единственным типом средств корпоративных коммуникаций во время пандемии.Поэтому решение задачи обеспечения информационной безопасно...
В этой самоизоляционной статье я расскажу о разварке проволочных микровыводов (англ. wire bonding). В контексте печатных плат речь пойдёт о технологии монтажа кристаллов на печатную плату (англ. ...
Для начала, давайте разберёмся, что из себя представляет комплект усиления связи и сам усилитель. Сердце комплекта — репитер, или по-другому повторитель, усилитель сигнала. Он принимает и уси...
Сегодня мы будем измерять производительность разных реализаций функции toupper, ведь именно этим и занимаются по вторникам. Вообще-то мне нет никакого дела до функции toupper, просто я недавно...