Самообучение в data science, с нуля до senior за два года
Содержание:
- Что знают и умеют дата-сайентисты
- Какая нужна математика? Если нет матбазы, я безнадёжен?
- Data Scientist: кто это и что он делает
- Зачем Data Science бизнесу
- Карьерная траектория и карьерный трек
- Кто такой Data Scientist и чем занимается?
- Как им стать
- Как стать Data scientist: лучшее обучение
- С чего начать обучение Data Science самостоятельно
- Профессия Data Scientist
- Терминология
- Программирование
- Сколько стоит специалист по данным
- Дорожная карта развития навыков Data Science
- Направления
- Что в итоге
Что знают и умеют дата-сайентисты
Вот начальный список навыков, знаний и умений, которые нужны любому дата-сайентисту для старта в работе.
Математическая логика, линейная алгебра и высшая математика. Без этого не получится построить модель, найти закономерности или предсказать что-то новое.
Есть те, кто говорит, что это всё не нужно, и главное — писать код и красиво делать отчёты, но они лукавят. Чтобы обучить нейронку, нужна математика и формулы; чтобы найти закономерности в данных — нужна математика и статистика; чтобы сделать отчёт на основе большой выборки данных — ну, вы поняли. Математика рулит.
Знание машинного обучения. Работа дата-сайентиста — анализ данных огромного размера, и вручную это сделать нереально. Чтобы было проще, они поручают это компьютерам. Поручить такую задачу — значит настроить готовую нейросеть или обучить свою. Поручить программисту обычно это нельзя — слишком много нужно будет объяснить и проконтролировать.
Программирование на Python и R. Мы уже писали, что Python — идеальный язык для машинного обучения и нейросетей. На нём можно быстро написать любую модель для первоначальной оценки гипотезы, поиска общих данных или простой аналитики.
R — язык программирования для статического анализа. Если вам нужно прикинуть, как лайки на странице зависят от количества просмотров или до какого места читатель гарантированно долистывает статью (чтобы поставить туда баннер), — R вам поможет. Но если вы не знаете математику — не поможет.
R и статистика в действии. Картинка с Хабра.
Умение получать и визуализировать данные. Не всем дата-сайентистам везёт настолько, что они сразу получают готовые наборы данных для обработки. Чаще всего они сами должны выяснить, где, откуда, как и сколько брать данных. Здесь обычные программисты им уже могут помочь — спарсить сайт, выкачать большую базу данных или настроить сбор статистики на сервере.
Второй важный навык в этой профессии — умение наглядно показать результаты работы. Какой толк в графиках, если никто, кроме автора, не понимает, что там нарисовано? Задача дата-сайентиста — представить данные наглядным образом, чтобы зрителю было легче сделать нужный вывод.
Связи в твиттере некоего Скотта Белла. Явно видны несколько разных групп фолловеров, которые мало пересекаются между собой. Это и есть наглядное представление данных.
Какая нужна математика? Если нет матбазы, я безнадёжен?
Константин башевой
Аналитик-разработчик в Яндексе и преподаватель курса «Python для анализа данных»
Вопрос про математику неоднозначный. Глубокое знание математики не является ни необходимым, ни достаточным условием. Конечно, тому, кто её знает, будет легче. Но все необходимые знания даются либо на занятиях, либо в дополнительных материалах.
Здесь как в спорте. Есть люди, которые могут без подготовки пробежать марафон. Остальным будет тяжелее, но при достаточной подготовке и они пробегут. Математическая база — это круто, но не критически необходимо.
Дарья Мухина
Продуктовый аналитик Skyeng, консультант курсов аналитики Нетологии
Кажется, что сейчас глубокую математическую базу можно заменить умением гуглить. В интернете огромное количество видео и статей, где можно получить доступно изложенную информацию — и не нужно лезть в университетские учебники. Главное знать, что тебе нужно.
Сейчас важнее навык применять знания в реальной задаче, а не просто обладать ими.
Елена Герасимова
Руководитель направления Data Science в Нетологии
Понятие «профильное техническое или математическое образование» уходит в прошлое. Уверенного в своих умениях и доменных знаниях специалиста из «гуманитарного» вуза не будут сравнивать с выпускником МФТИ по знанию математики — сравнивают по полезности бизнесу для решения задач.
Уже известны десятки рабочих алгоритмов и библиотек, которые способны всю математическую часть брать на себя без участия человека.
Data Scientist: кто это и что он делает
В переводе с английского Data Scientist – это специалист по данным. Он работает с Big Data или большими массивами данных.
Источники этих сведений зависят от сферы деятельности. Например, в промышленности ими могут быть датчики или измерительные приборы, которые показывают температуру, давление и т. д. В интернет-среде – запросы пользователей, время, проведенное на определенном сайте, количество кликов на иконку с товаром и т. п.
Данные могут быть любыми: как текстовыми документами и таблицами, так и аудио и видеороликами.
От области деятельности зависят и результаты работы Data Scientist. После извлечения нужной информации специалист устанавливает закономерности, подвергает их анализу, делает прогнозы и принимает бизнес-решения.
Человек этой профессии выполняет следующие задачи: оценивает эффективность и работоспособность предприятия, предлагает стратегию и инструменты для улучшения, показывает пути для развития, автоматизирует нудные задачи, помогает сэкономить на расходах и увеличить доход.
Его труд заканчивается созданием модели кода программы, сформировавшейся на основе работы с данными, которая предсказывает самый вероятный результат.
Профессия появилась относительно недавно. Лишь десятилетие назад она была официально зафиксирована. Но уже за такой короткий промежуток времени стала актуальной и очень перспективной.
Каждый год количество информации и данных увеличивается с геометрической прогрессией. В связи с этим информационные массивы уже не получается обрабатывать старыми стандартными средствами статистики. К тому же сведения быстро обновляются и собираются в неоднородном виде, что затрудняет их обработку и анализ.
Вот тут на сцене и появляется Data Scientist. Он является междисциплинарным специалистом, у которого есть знания статистики, системного и бизнес-анализа, математики, экономики и компьютерных систем.
Знать все на уровне профессора не обязательно, а достаточно лишь немного понимать суть этих дисциплин. К тому же в крупных компаниях работают группы таких специалистов, каждый из которых лучше других разбирается в своей области.
Более 100 крутых уроков, тестов и тренажеров для развития мозга
Начать развиваться
Эти знания помогают ему выполнять свои должностные обязанности:
- взаимодействовать с заказчиком: выяснять, что ему нужно, подбирать для него подходящий вариант решения проблемы;
- собирать, обрабатывать, анализировать, изучать, видоизменять Big Data;
- анализировать поведение потребителей;
- составлять отчеты и делать презентации по выполненной работе;
- решать бизнес-задачи и увеличивать прибыль за счет использования данных;
- работать с популярными языками программирования;
- моделировать клиентскую базу;
- заниматься персонализацией продуктов;
- анализировать эффективность деятельности внутренних процессов компании;
- выявлять и предотвращать риски;
- работать со статистическими данными;
- заниматься аналитикой и методами интеллектуального анализа;
- выявлять закономерности, которые помогают организации достигнуть конечной цели;
- программировать и тренировать модели машинного обучения;
внедрять разработанную модель в производство.
Четких границ требований к Data Scientist нет, поэтому работодатели часто ищут сказочное создание, которое может все и на превосходном уровне. Да, есть люди, которые отлично понимают статистику, математику, аналитику, машинное обучение, экономику, программирование. Но таких специалистов крайне мало.
Еще часто Data Scientist путают с аналитиком. Но их задачи несколько разные. Поясню, что такое аналитика и как она отличается от деятельности Data Scientist, на примере и простыми словами.
В банк пришел клиент, чтобы оформить кредит. Программа начинает обрабатывать данные этого человека, выясняет его кредитную историю и анализирует платежеспособность заемщика. А алгоритм, который решает выдавать кредит или нет, – продукт работы Data Scientist.
Аналитик же, который работает в этом банке, не интересуется отдельными клиентами и не создает технические коды и программы. Вместо этого он собирает и изучает сведения обо всех кредитах, что выдал банк за определенный период, например, квартал. И на основе этой статистики решает, увеличить ли объемы выдачи кредитов или, наоборот, сократить.
Аналитик предлагает действия для решения задачи, а Data Scientist создает инструменты.
Зачем Data Science бизнесу
Компании используют Data Science вне зависимости от размера бизнеса, показывает статистика Kaggle (профессиональная соцсеть специалистов по работе с данными). А по подсчетам IDC и Hitachi, 78% предприятий подтверждают, что количество анализируемой и используемой информации в последнее время значительно возросло. Бизнес понимает, что неструктурированная информация содержит очень важные для компании знания, способные повлиять на результаты бизнеса, отмечают авторы исследования.
Индустрия 4.0
Роман Нестер — РБК: «Коммерческие данные — это кровь интернета»
Причем это касается самых разных сфер экономики. Вот лишь несколько примеров отраслей, которые используют Data Science для решения своих задач:
- онлайн-торговля и развлекательные сервисы: рекомендательные системы для пользователей;
- здравоохранение: прогнозирование заболеваний и рекомендации по сохранению здоровья;
- логистика: планирование и оптимизация маршрутов доставки;
- digital-реклама: автоматизированное размещение контента и таргетирование;
- финансы: скоринг, обнаружение и предотвращение мошенничества;
- промышленность: предиктивная аналитика для планирования ремонтов и производства;
- недвижимость: поиск и предложение наиболее подходящих покупателю объектов;
- госуправление: прогнозирование занятости и экономической ситуации, борьба с преступностью;
- спорт: отбор перспективных игроков и разработка стратегий игры.
И это лишь самый краткий и поверхностный список использования Data Science. Количество различных кейсов с использованием «науки о данных» увеличивается с каждым годом в геометрической прогрессии.
Каждый интернет-пользователь и просто потребитель ежедневно десятки раз сталкивается с продуктами и решениями, в которых применяются инструменты Data Science. К примеру, аудио-сервис Spotify использует их, чтобы лучше подбирать треки для пользователей в соответствии с их предпочтениями. То же самое можно сказать о предложении фильмов и сериалах на видео-стримингах, таких как Netflix. А в Uber науку о данных рассматривают как инструмент для предиктивной аналитики, прогнозирования спроса, улучшения и автоматизации всех продуктов и клиентского опыта.
Экономика инноваций
Что такое Big Data и почему их называют «новой нефтью»
Конечно, дата-сайентисты не могут в точности предсказать будущее компании и учесть абсолютно все возможные риски. «Все модели неправильные, но некоторые из них полезны», — иронизировал по этому поводу британский статистик Джордж Бокс. Тем не менее, инструменты Data Science служат хорошей поддержкой для компаний, которые хотят принимать более информированные и обоснованные решения о своем будущем.
Карьерная траектория и карьерный трек
На каждом из этапов необходимо разное количество инструментов и навыков.
Есть роли и треки со схожими компетенциями (можно развиваться в одном направлении, а потом идти глубже или свернуть в другую сторону).
С точки зрения обучения это означает выкладку дорожки из кирпичиков знаний и умений – мы называем это модулями.
Уровень трансформации данных. ETL-специалисты преобразуют неструктурированные массивы данных в базы данных (БД):
- Data Engineer (дата-инженер) — отвечает за целостность и оптимальное хранение данных;
- разработчик БД — обеспечивает работоспособность БД;
- архитектор БД — проектирует хранение данных.
Уровень обработки данных. Анализируют собранные на предыдущем уровне данные, чтобы получить из них знание и извлечь пользу:
- Аналитик — анализирует метрики, проводит эксперименты, составляет прогнозы.
- Data Scientist — разрабатывает продукт, основанный на данных (например, рекомендательную систему).
- BI-специалист — занимается визуализацией, интерактивными дашбордами.
- ML Engineer — разрабатывает и отвечает за развитие data-driven продуктов.
Больше всего карьерных треков у ML Engineer — по сути, это разработчик алгоритмов. Это нейросети, голосовые помощники, Object detection — сфера безопасности, предсказание спроса, предиктивная аналитика, распознавание объектов. Среди более сложных направлений: GAN — работа с изображениями, RL — игровые стратегии, геймдев, Black-box AI — коробочные решения для искусственного интеллекта.
Из каких профессий быстрее всего переквалифицироваться
Кто такой Data Scientist и чем занимается?
Данные — основной объект исследования в Big Data. Вопреки стереотипам, аналитики Data Scientist работают не только в крупных компаниях. В молодой индустрии Big Data инженеры, математики, программисты и трейдеры создают визуальные модели, формируют бизнес-сценарии и тестируют их. Прогнозы экспертов интересны широкому кругу лиц — компаниям, частным предпринимателям, государственным учреждениям. Анализ Big Data — это не только статистические обзоры, но и предвидение будущих событий, вероятность которых можно вывести с математической точностью. Курс Data Scientist от Skillbox отличается насыщенной программой. Слушателей знакомят с нейронными сетями, инфографикой, работой в библиотеках.
Как им стать
Учеба обязательна для этой профессии. Причем учиться надо много, долго и основательно. Для начала надо освоить азы математики, статистики и информатики, а дальше изучить языки программирования, лучше начать с Python.
На блоге iklife.ru собраны лучшие курсы по Python для начинающих и опытных программистов, которые будут полезны при освоении должности Data Scientist.
Также рекомендую вам прочитать следующие книги:
- Брендан Тирни, Джон Келлехер “Наука о данных”
- Кирилл Еременко “Работа с данными в любой сфере”
- Уэс Маккинни “Python и анализ данных”
Куда пойти учиться
Лучшее обучение – это онлайн-обучение. Платформы Skillbox, Нетология, GeekBrains, SkillFactory, ProductStar и Stepik предлагают свои обучающие программы:
- Профессия Data Scientist
- Data Scientist
- Data Science с нуля
Ознакомиться с полным перечнем курсов для Data Scientist можно на нашем блоге.
Уточню, что на этом учеба не должна заканчиваться. Data Scientist – это такая профессия, которая предполагает непрерывное обучение. Даже если вы уже работаете, периодически повышать свой уровень надо обязательно. К тому же выбор достаточно широк – это и онлайн-курсы, и тренинги, и конференции.
Где найти работу
Сложно сказать, где именно искать работу по этой профессии. Не из-за того, что мало мест, а, наоборот, потому что нет такой сферы бизнеса, где нельзя было бы применить талант этого специалиста. Ему доступна как работа в офисе, так и удаленно на дому.
Он востребован в таких областях деятельности как:
- IT-сфера,
- медицина,
- банковские структуры,
- СМИ,
- торговля,
- политика,
- транспортные компании,
- страховые фирмы,
- сельское хозяйство,
- наука,
- метеослужбы.
Как я уже говорила, Data Scientist нужен во многих сферах, где необходимы прогнозы, анализ рисков и поведения клиентов. Поэтому список можно дополнить.
Перед откликом на вакансию надо подготовить резюме. В нем сосредоточиться в первую очередь нужно на математических и IT-навыках, опыте работе, успешных проектах и достижениях. Описание должно получиться кратким, лаконичным и простым. Специалисту надо прикрепить портфолио к резюме.
Учтите, что вакансии на эту должность не всегда называются именно “Data Scientist”. Работодатели могут написать, что требуется IT-аналитик, специалист по анализу систем, аналитик Big Data.
Как стать Data scientist: лучшее обучение
Следует помнить, что востребованным специалистом не получится стать при самостоятельном изучении всех дисциплин. В любом случае необходимо пройти профессиональные курсы.
Отличный курс для новичков с любым уровнем начальных знаний – «Data scientist» от Skillfaktory. Именно здесь обучение построено таким образом, что на каждом этапе погружения в профессию новичок работает с реальными задачами от партнеров. Каждый полученный кейс входит в портфолио выпускника.
Обучение длится 24 месяца, то есть два семестра по 6 месяцев. За это время новичок достигает уровень Junior с портфолио из 8-и кейсов различных тематик.
Следующие 2 семестра – специализация по выбору. За 12 месяцев студент наполняет свое портфолио еще пятью успешными кейсами. В результате обучения и работы над реальными задачами достигает уровня Middle.
После завершения обучения каждый выпускник обладает знаниями и навыками достигнутого уровня. Может претендовать на соответствующую оплату своего труда.
Особенность обучения на этом курсе в том, что каждый студент в ходе решения задачи может обратиться к куратору. Это помогает оперативно получить ответ на вопрос и поддержку.
За время обучения каждый студент получает 2 года стажа по специальности и профессиональное портфолио уровня Middle. Это значительно экономит время и дает быстрый старт в карьере.
С чего начать обучение Data Science самостоятельно
Научиться основам Data Science с нуля можно примерно за год. Для этого нужно освоить несколько направлений.
Python. Из-за простого синтаксиса этот язык идеально подходит для новичков. Со знанием Python можно работать и в других IT-областях, например веб-разработке и даже гейм-дизайне. Для работы нужно также освоить инструменты Data Science, например Scikit-Learn, которые упрощают написание кода на Python.
Математика. Со знанием Python уже можно работать ML-инженером. Но для полного цикла Data Science нужно уметь работать с математическими моделями, чтобы анализировать данные. Для этого изучают линейную алгебру, матанализ, статистику и теорию вероятностей. Также математика нужна, чтобы понимать, как устроен алгоритм, и уметь подобрать правильные параметры для задачи.
Машинное обучение. Используйте знания Python и математики для создания и тренировки ML-моделей. Код для моделей и наборы данных для обучения (датасеты) можно найти, например, на сайте Kaggle. Подробнее о том, зачем дата-сайентисту Kaggle, читайте в статье.
Визуальный анализ данных (EDA) отвечает на вопросы о том, что происходит внутри данных, позволяет найти выбросы в них и получить инсайты про создание уникальных фичей для будущего алгоритма.
Вот несколько полезных ссылок для новичков:
Книги:
«Изучаем Python», Марк Лутц.
«Python и машинное обучение. Машинное и глубокое обучение с использованием Python, scikit-learn и TensorFlow», Себастьян Рашка, Вахид Мирджалили.
«Теория вероятностей и математическая статистика», Н. Ш. Кремер.
«Курс математического анализа» Л. Д. Кудрявцев.
«Линейная алгебра», В. А. Ильин, Э. Г. Позняк.
Курсы:
Питонтьютор — бесплатный практический курс Python в браузере.
Бесплатный курс по Python от Mail.ru и МФТИ на Coursera.
Модуль по визуализации данных из курса Mail.ru и МФТИ.
Фреймворки, модели и датасеты
Основные библиотеки: NumPy, Scipy, Pandas.
Библиотеки для машинного и глубокого обучения: Scikit-Learn, TensorFlow, Theano, Keras.
Инструменты визуализации: Matplotlib и Seaborn.
Статья на хабре со ссылками на модели из разных сфер бизнеса на GitHub.
Список нужных фреймворков, библиотек, книг и курсов по машинному обучению на GitHub.
Kaggle — база моделей и датасетов, открытые соревнования дата-сайентистов и курсы по машинному обучению.
Дата-сайентистом можно стать и без опыта в этой сфере. За 13 месяцев на курсе по Data Science вы изучите основы программирования и анализа данных на Python, научитесь выгружать нужные данные с помощью SQL и делать анализ данных с помощью библиотек Pandas и NumPy, разберетесь в основах машинного обучения. После обучения у вас будет 8 проектов для портфолио.
Курс
Data Science с нуля
Станьте востребованным специалистом на рынке IT! За 13 месяцев вы получите набор компетенций, необходимый для уровня Junior.
- структуры данных Python для проектирования алгоритмов;
- как получать данные из веб-источников или по API;
- методы матанализа, линейной алгебры, статистики и теории вероятности для обработки данных;
- и многое другое.
Узнать больше
Промокод “BLOG10” +5% скидки
Профессия Data Scientist
Интернет и базы данных – это большие объемы неструктурированной информации, «вываленной» в сеть. И каждая компания хочет выделить и оценить конкретные данные; например, институт эпидемиологии желает получить отчет о развитии конкретного вируса, маркетинговое агентство – вычислить современные тренды, а Министерство образования сопоставить успеваемость в прошлом и текущем десятилетии.
Получается, перед Data Scientist ставится задача собрать и проанализировать информацию, а в некоторых случаях дать прогноз. Естественно, без компьютерных технологий структурировать массивы данных не получится. Но не думайте, что Data Scientist просто ищет информацию и складывает ее в правильной последовательности.
Современная наука о данных работает с алгоритмами, заменяющими людей, чат-ботами, искусственным интеллектом и так далее. Дата-сайентист должен обладать навыками программирования, так как он сам пишет нужные алгоритмы.
Data Scientist востребован везде, где есть данные, подверженные структуризации и алгоритмизации:
- Бизнес. Например, специалист может написать алгоритм, упрощающий сбор статистических данных.
- Банковские системы. Выдача онлайн-кредитов, оформление заявок на вклады и прочие банковские услуги регулируются алгоритмами, написанными дата-сайентистом.
- Транспорт. Построение оптимального маршрута, написание алгоритма выявления пробок.
- IT. Боты, поисковые системы, искусственный интеллект.
- Промышленность. Прогнозирование сбоев в работе или нехватки сырья.
- Медицина. Современные медицинские приборы предполагают автоматические диагнозы на основе симптомов. Алгоритмы анализа помогают врачам индивидуально работать с пациентами и назначать наиболее эффективное лечение.
- Другие области науки. Генетика и биоинженерия не обходятся без Data Science.
Областей применения Data Science очень много, поэтому профессия крайне востребована. Если до сих пор не совсем понятно, чем занимается Data Scientist, то вот базовая последовательность его действий при получении конкретной задачи:
- Получение технического задания от заказчика.
- Специалист оценивает задачу и пробует выполнить заказ методом машинного обучения.
- Дата-сайентист ищет дополнительные данные и критерии оценки, так как главное – эффективность модели.
- После этого он приступает к программированию и тренировке алгоритма.
- Когда модель будет готова, он испытывает ее на предмет выполнения задачи; подключаются другие специалисты, например риск-менеджеры.
- Если все работает как нужно, алгоритм внедряется в производство.
- После введения модели в эксплуатацию Data Scientist следит за процессами, по необходимости дорабатывая или улучшая алгоритм.
На данный момент это одна из самых высокооплачиваемых и перспективных вакансий в мире. В России Data Scientist уровня senior зарабатывает до 300 000 тыс. в месяц.
Терминология
Чтобы понять выбранное направление, требуется уточнить в первую очередь некоторые термины. Они крайне важны для будущего специалиста «по анализу больших данных». Вследствие работы будут встречаться повсеместно:
- Искусственный интеллект – способ, при помощи которого машины учат «думать» и принимать те или иные решения. Применяется при персонализации, а также в двойниках и имитации человеческого мышления. Некий метод автоматизации принятия решений.
- Машинное обучение – процесс создания инструментов для того, чтобы из данных извлекать знания. Сюда относят: распознавание образов, рекомендательные системы, предиктивные алгоритмы, перевод графики в текст, синтез текстовых data.
- Глубокое обучение – создание нейронных сетей многослойного типа в сферах, где требуется более быстрый и продвинутый анализ. В этом случае традиционное машинное обучение не справляется с поставленными задачами. Применяется в «масках» утилит, синтезе звука, голоса или картинок.
- BigData – большой объем информации разного вида. Совокупность подходов к невероятным по масштабам размеров неструктурированных материалов, которые поступают от источников постоянно и непредсказуемо.
- Data Science – придание смысла и понимания электронным материалам, их обработка, способ найти полезное в общей неструктурированной массе. В процессе часто задействуются облачные вычисления, а также инструментарий для создания виртуальных сред разработки.
Стоит обратить внимание на то, что при рассмотрении выбранного направления могут пригодиться языки программирования, а также познания в сфере информационных технологий и IT. Специфика направления – системы и инструменты, которые могут выдерживать огромную (повышенную) нагрузку
Программирование
Если вы планируете карьеру в области науки о данных, вам нужно изучить программирование на должном уровне. Именно по этой причине многие специалисты в области данных обладают бэкграундом в компьютерных науках: это большое преимущество. Однако, если вы читаете эту статью и не обладаете опытом в программировании — не волнуйтесь, как и большинству вещей, этому можно обучиться самостоятельно.
Программа обучения: «Профессия Python-разработчик»
Мы выяснили, что программирование — важный навык для специалистов в области данных независимо от того, в какой сфере вы находитесь. Однако программирование в целом — не совсем то, что нужно науке о данных. А вот если вы сможете писать программы для автоматизации задач, то не только сэкономите драгоценное время, но и значительно упростите использование кода в будущем.
Перейдем к некоторым ключевым навыкам. В списке я уделил больше внимания практическим навыкам.
Что надо знать
Разработка. Специалисты в области данных, знакомые с практикой разработки программного обеспечения, обычно чувствуют себя более комфортно, чем ученые, работая над крупными коммерческими проектами.
Базы данных. Логично, что специалисты в области данных постоянно используют базы данных, поэтому нужно иметь опыт в этой области. По мере роста баз данных NoSQL и количества облачных вычислений число традиционных SQL-баз данных резко сокращается. Однако работодатели по-прежнему ожидают, что вы будете иметь базовые знания о командах SQL и практику проектирования баз данных.
Сотрудничество. Сотрудничество — ключевой момент в разработке программного обеспечения. Вы, несомненно, знакомы с выражением: «Сила команды определяется её самым слабым звеном». Хоть это и банально, но правдиво для любой команды, специализирующейся в науке о данных. Большая часть работы ведется в группах, поэтому необходимо налаживать связь с командой, а также поддерживать хорошие отношения, чтобы эффективность сотрудничества была максимальной.
Полезные советы
Если спросить любого разработчика программного обеспечения или дата сайентиста о том, какой самый важный аспект программирования в работе, они обязательно ответят одинаково: простота технического сопровождения. Простой, поддерживаемый код почти всегда превосходит пусть и гениальный, но сложный код — он в конечном счете не будет иметь значения, если другие программисты не смогут его понять, оценить, масштабировать и поддерживать в дальнейшем. Есть несколько способов легко улучшить код. Вот они.
Не нужно хардкодить: не указывайте постоянных значений для каких-либо параметризуемых элементов кода, вместо этого используйте переменные и входные данные, они динамичны по своей природе и будут масштабироваться в будущем, в отличие от статических значений. Это небольшое изменение в коде значительно облегчит вам жизнь.
Документируйте и постоянно комментируйте свой код: самый эффективный способ сделать код понятнее — это комментировать, комментировать и комментировать. Кратко и информативно комментируя происходящее, вы убережете себя от бесконечных изменений и объяснений с коллегами.
Проводите рефакторинг: помните, что окончание разработки кода — это еще не конец. Постоянно возвращайтесь к прошлым работам и ищите способы оптимизации и повышения эффективности.
Что почитать
Навыки разработки программного обеспечения для специалистов в области данных (англ.) — отличный обзор важных навыков программирования.
Пять измерений дата сайентиста (англ.) — интересный подход к различным ролям, которые может взять на себя специалист в области данных
Обратите особое внимание на «Программист-эксперт» и «Эксперт по базам данных»
9 навыков, необходимых для старта карьеры в области данных (англ.) — короткая, но интересная статья.
Сколько стоит специалист по данным
На сегодняшний день только треть спроса на Data Science специалистов может быть удовлетворена. Недонасыщенный рынок не может предоставить компаниям квалифицированные кадры в области Data Mining или прогнозной аналитики, что ведёт к росту спроса и зарплат.
Согласно исследовательскому центру рекрутингового портала Superjob, зарплатные предложения для специалистов без соответствующего опыта работы в Москве начинаются от 70 тысяч рублей, в Санкт-Петербурге — от 57 тысяч рублей.
Для следующего зарплатного уровня от соискателей потребуется наличие глубоких знаний методов статистического анализа данных, навыков построения математических моделей (нейронные сети, кластеризация, регрессионный, факторный, дисперсионный и корреляционный анализы и т.п.), а также опыт работы с большими массивами данных и умение выявлять закономерности. Для таких специалистов зарплата может достигать 110 тысяч рублей в Москве и 90 тысяч рублей в Петербурге.
Специалисты с опытом построения коммерчески успешных сложных моделей поведения целевой аудитории с помощью инструментов глубокого исследования данных (Data Mining) могут рассчитывать на максимальный доход. Для них зарплатные предложения в Москве — до 220 тысяч рублей, в Петербурге — до 180 тысяч рублей.
Дорожная карта развития навыков Data Science
Итак, чтобы стать специалистом базового уровня, понадобится от 6 до 12 месяцев. Вырасти с базового уровня до среднего можно за 7–18 месяцев. Продвинутый уровень потребует ещё от 18 до 48 месяцев.
Конечно, это приблизительные сроки. Многое зависит от бэкграунда: тем, кто неплохо прокачан в физике, математике, естественных и компьютерных науках, работал инженером или финансистом, будет гораздо проще. Но в первую очередь важны усилия и время, которые вы вкладываете в изучение Data Science, — в общем, никакой магии. Просто берём и делаем.
На курсе «Профессии Data Scientist» мы даём не только базовые знания, но и часть навыков среднего и продвинутого уровней. В итоге у вас появятся портфолио проектов, стаж не менее года, заряженные единомышленники и компетентные наставники. Приходите!
Направления
Можно стать хорошим аналитиком лишь тогда, когда человек определится с областью, в которой работать. Сегодня знают несколько видов «ученых по данным». Их разделяют по уровню трансформации на:
- инженеров – работников, которые несут ответ за целостность и оптимизацию хранения;
- разработчиков БД – отвечают за работоспособность и исправность баз информации;
- архитекторов БД – занимаются проектировкой хранения баз.
Также есть разделение по уровню обработки электронных сведений. Здесь имеет место следующее разделение на направления:
- аналитик – проводит анализ метрик, реализовывает эксперименты, составляет те или иные прогнозы;
- дата-ученый – ведет разработку продукта, который основывается на полученные сведения;
- BI-специалист – отвечает за визуализацию и интерактивные дашборды;
- ML-специалист – осуществляет разработку и несет ответственность за развитие data-driven продуктов.
Последний «работник» — это своеобразный разработчик алгоритмов. Наиболее перспективное направление, но освоить его «с нуля» весьма проблематично. Стажер не сможет создать собственный качественный проект типа data драйвен без достаточного опыта.
Что в итоге
Если помнить про целостный подход и четыре компонента обучения сложному навыку, получится не только брать лучшее из статей и блогов по Data Science, но и грамотно составлять собственные планы изучения конкретного сложного навыка. Как это сделать:
- Составьте список необходимых простых навыков. Их несложно нагуглить.
- Пропишите сценарии применения этих простых навыков в рамках сложного. Скорее всего, надо будет обратиться к специализированным блогам, форумам, книгам, подкастам.
- Научитесь применять каждый навык изолированно, опираясь на инструкции, руководства и документацию. Как правило, их можно найти на официальных сайтах или в блогах разработчиков.
- Составьте серии задач с увеличением сложности, для решения которых каждый раз будет требоваться всё больше простых навыков. Поиск в интернете по фразе «<название навыка> + задачи» даст вам начальные ориентиры.
Когда составите список, посоветуйтесь с наставником или единомышленниками, чтобы понять, какие задачи стоит убрать, а каких не хватает.
Далее следуйте плану. А собранные материалы станут отличной основой для поста в блог, Telegram-канала, подкаста или видео — так вы поможете другим людям и повысите свой статус.
Если вы ещё не готовы составить свой план обучения, выберите готовую сбалансированную программу — например, наш курс «Профессия Data Scientist». Здесь уже есть всё, что нужно: списки навыков, инструкции и руководства, серии задач и проектов, а также чаты единомышленников и опытные наставники.