Меня часто спрашивают, с чего начать. Отвечаю по-разному, потому что универсального ответа нет, но есть несколько вещей, которые повторяю почти всем. Собрал их здесь.
Как я сам сюда попал
Образование у меня математическое, мехмат КазНУ, математическое моделирование. Специальности дата-сайентист тогда не существовало, направления такого не было. При том что математики и программирования на факультете хватало, меня занесло в веб-разработку, и я довольно долго ей занимался с 2006 года.
Потом я оказался в банке. Там было много задач с большими объёмами данных, в основном про транзакционный фрод. Компетенции для этого были нужны внутри, а у меня оказался самый близкий технический бэкграунд. Начал заниматься, и мне понравилось больше, чем тем, что я делал до этого.
Два фактора: удачное стечение обстоятельств и то, что зашло. Никакого продуманного перехода не было.
Откуда берутся дата-специалисты

Из моих наблюдений за теми, кто начинал примерно тогда же: большинство пришли из разработки. Есть заметная часть экономистов, у них своя сильная база по эконометрике и статистике, технически они послабее, но добирали навыки на ходу.
Общее у всех одно. Технический склад и какая-то математика за спиной, пусть даже подзабытая. Когда база есть, остальное добивается.
Тогда в казахстанских вузах не было четырёхлетней специализации по DS, и людям приходилось собирать себя самим. Сейчас программы появились (Data Science в МУИТ, в Astana IT University, магистратура по ML в Сатпаева), так что этот пункт можно считать закрытым для тех, кто поступает сегодня.
Если технической базы нет
Будет тяжелее, тут нечего смягчать. Наверстывать придётся больше, и курсы эту разницу не закроют: они сильно разжёвывают материал, и после них остаётся ощущение понимания без самого понимания.
Что работает: сходить в университет вольным слушателем. Договориться и сесть на лекции по статистике или линейной алгебре. Не поступать, не платить за четыре года, просто прийти на нужные темы и послушать. Раньше это точно было можно, и я не вижу причин, почему нельзя сейчас.
План примерно такой: сначала статистика, потом базы данных, потом машинное обучение. Не наоборот.
Не увольняйтесь сразу

Это, наверное, главное, что я говорю людям, которые пришли спросить про смену профессии.
Если на вашей текущей работе есть данные, начните с них. Бухгалтер, аудитор, любой, кто разбирает таблицы руками, может применить новые знания прямо у себя, пусть даже примитивно, пусть даже в Excel. Тогда гораздо понятнее, как знания ложатся на реальную задачу, и не нужно прыгать в пропасть, чтобы это проверить.
Многие вообще не хотят бросать свою работу. Им просто интересно, и этого достаточно.
С чего начинать в инструментах
Меня часто спрашивают, не начать ли с Excel, SQL и Tableau, а к программированию перейти позже. Я бы поставил Python на первое место.
BI-инструменты похожи друг на друга и осваиваются на базовом уровне быстро. Построить графики, выгрузить данные, отфильтровать, повизуализировать — это не то, на что стоит тратить много времени. Excel вообще может подключаться к базе и забирать данные оттуда напрямую.

Но с Python есть нюанс. Не надо начинать с углублённого изучения его как языка. Начните с работы с данными: pandas, подключиться к источнику, прочитать, посмотреть, визуализировать выводы. Этого хватает, чтобы понять, ваше это или нет.
А вот дальше — алгоритмы, структуры данных, ООП, то, как вообще устроено программирование — имеет смысл закапываться, только когда вы уже уверены, что хотите идти глубоко. Если решение ещё не принято, вы просто потратите месяцы не на то.
Сколько нужно математики
Для прикладной работы: линейная алгебра и математический анализ примерно на уровне первого курса технического вуза. Этого достаточно. Если вы не занимаетесь научным ресёрчем, дальше углубляться не обязательно.

Отдельно про статистику. Аналитик выдаёт не красивые графики, а выводы, и статистика нужна, чтобы эти выводы правильно интерпретировать. Без неё легко увидеть закономерность там, где её нет.
Дата-сайентист или ML-инженер ближе к инженерным практикам, там свои требования.
И отдельным пунктом — знание предметной области. Если вы хороший специалист в своей сфере и вдобавок умеете что-то делать с данными, это весомый плюс. Вы знаете нюансы и закономерности, которых человек со стороны не видит. Инструменты между отраслями переносятся легко, доменное знание — нет, и именно оно делает специалиста эффективным.
Аналитик или дата-сайентист
Зайти сразу в Data Science без опыта тяжело. Если с машинным обучением у вас пока пусто, а на тестовом задании нужно построить модель, шансы невелики.
Поэтому аналитика — нормальный вход. Оттуда видно и предметную область, и данные, и дальше можно уходить вглубь.
Есть ещё вариант, который зависит от компании. Иногда берут человека с хорошей теоретической базой и парой учебных кейсов, где он что-то делал с моделями. Что-то вроде «джун-минус». Единого рецепта тут нет, всё упирается в то, кто именно нужен команде.
Что реально ускоряет
Через мои онлайн-встречи прошло около сотни человек, и разница между теми, у кого получилось, и остальными оказалась не в базе.
Самые успешные — те, кто активен. Задают много вопросов и охотно рассказывают, что и как сделали, а заодно сами замечают, что можно было лучше.
Про вопросы у меня есть история. Несколько лет назад я был на бесплатной лекции по машинному обучению. Лектор вывел формулу, и по залу было видно, что половина не поняла. Спросил один человек. Лектор вернулся и расписал вывод подробно — и выиграли все, потому что ту математику большинство проходило лет шесть-семь назад и успело забыть. Один человек не постеснялся, и от этого стало лучше целой аудитории.
Второе, что помогает, — учиться не в одиночку. Мы когда-то собрали небольшую группу под бесплатный курс: в течение недели каждый смотрит лекции и читает статьи, а в выходные встречаемся в кофейне и разбираем домашки. Где кто застрял, кто как решил, у кого получилось интереснее. Дошли до конца далеко не все, но те, кто дошёл, дошли именно из-за этих встреч.
Про сообщества и рефералы
Локальных DS-сообществ в Казахстане немного, особенно если сравнивать с разработкой, где своя группа есть у каждого стека и почти у каждого города. Причина, по-моему, простая: ODS большой, русскоязычный, и всё нужное находится там, поэтому острой необходимости плодить локальные чаты не было.
Из наших — DSML Kazakhstan, чаты вокруг конференций Kolesa, тусовка дата-аналитиков.
Теперь неприятная часть. Не рассчитывайте, что вы зайдёте в чат и вам сразу дадут реферал. Незнакомого человека реферить готов далеко не каждый, и это нормально: человек ручается своим именем. Сначала надо себя показать — поспрашивать, поучаствовать в обсуждениях, скинуть, что делаете. После этого просить гораздо проще.
Спрашивать, впрочем, стоит. Если не спросите, точно никто не подскажет.
Вопросы к себе
Если вы сейчас решаете, идти или нет:
- Есть ли на моей текущей работе данные, с которыми я могу начать уже завтра, ничего не меняя?
- Хватает ли мне статистики, чтобы объяснить, почему модель выдала именно это, или я пока умею только запускать её?
- Я задаю вопросы или тихо сижу и надеюсь, что дойдёт само?
Последний вопрос по моему опыту решает больше всего.
Регулярность работает как сложный процент: час-два в день незаметны на дистанции недели и очень заметны на дистанции года. Резкие рывки почти никогда не доводят до конца, дисциплина доводит.