Сегодня мы решили пройтись по рейтингу экспертов по теме Data Science на Quora и посмотреть, что обсуждают наиболее активные участники сообщества.
Уильям Чен (William Chen), который работает в Quora на должности аналитика [англ. data scientist] делится опытом относительно своего инструментария. ОН говорит, что его команда использует Python и SQL. Многие другие пользуются еще и статистическим пакетом R, но в силу того, что основной код Quora написан на Python, подход Уильяма значительно ускоряет работу его коллег.
Команда Чена регулярно использует iPython Notebook и Jupyter для фиксирования результатов своих расчетов. Для анализа данных они чаще всего пользуются пакетами Pandas, Seaborn, Numpy и SciPy. Коллеги Уильяма по сфере деятельности по большей части используют Sublime Text для разработки и Unison для синхронизации файлов. Так же, как разработчики Quora, его команда использует Phabricator для управления версиями и анализа кода.
Распространено мнение, будто каждый data scientist обязан знать R, Matlab и Hadoop. Рикардо Владимиро (Ricardo Vladimiro), специалист в этой области и сотрудник Miniclip, считает, что это не так. По его мнению, чтобы по-настоящему погрузиться в изучение данных, вы должны хорошо разбираться в статистике и теории вероятностей, уметь проводить эксперименты и проверять свои гипотезы, а также знать хотя бы один язык программирования, позволяющий обрабатывать «большие данные».
Рикардо добавляет, что нужно разбираться и самой области знаний, откуда поступают данные для анализа. Кроме того, само название «наука о данных» говорит о том, что специалисту не помешают знания о способах хранения, управления, обработки и передачи данных. Среди личных качеств он выделяет стремление к новым знаниям: будь это алгоритмы, языки программирования или навыки делового общения.
Data scientist не сможет обойтись без навыков программирования:
«Вы будете постоянно себя ограничивать, вместо того чтобы добиться нужного результата. Вы сможете вырасти, только если покинете свою зону комфорта. Смиритесь с этим. Программирование – не такая сложная штука»
Если вы работаете в сфере Big Data и, скажем, хотите решать задачи динамического ценообразования, то вы должны быть экспертом как минимум в одной из данных областей: экономике, эконометрике, финансах, статистике или промышленной инженерии. Так считает Ласло Корсос (Laszlo Korsos), старший аналитик компании Uber. Уильям Чен добавляет, что наличие навыков программирования будет огромным преимуществом.
Если вы считаете, что ваши навыки программирования оставляют желать лучшего, помните, что у вас все еще есть шанс. Пол ДеВос из IBM Watson Health рекомендует обратить внимание на вакансии с акцентом на аналитику. В числе требований к таким должностям обычно указывают навыки работы в SQL, Excel, SAS и SPSS. Хорошо, если вы умеете работать с пакетом R или аналитическими инструментами для Python (Numpy, Pandas, Scipy, Scikit Learn, Seaborn, Plotly, Matplotlib). Они чуть сложнее, чем SPSS или Excel, но их можно достаточно быстро освоить без существенного опыта программирования.
При изучении темы Data Science, как пишет Джо Блицштайн (Joe Blitzstein), практика – это самое главное. Конечно, вы чему-то научитесь, если будете проходить видеокурсы, но это занятие слишком пассивное. Практические навыки приобретают лишь в ходе лабораторных работ и домашних заданий. Бессмысленно смотреть видео целыми днями: большинство едва выдерживает часовую лекцию.
Что касается дополнительной литературы, директор отдела исследований Pandora Майкл Хохстер (Michael Hochster) рекомендует прочитать «Механику комиксов» Скотта Макклауда. Довольно большую часть работы по анализу данных, по его мнению, занимает общение при помощи слов и картинок, как в комиксах. Книга наполнена глубокими рассуждениями и множеством примеров и, как считает Хохстер, она будет полезнее и интереснее, чем стандартная литература по визуализации данных.
Сегодня специалистов в сфере Bid Data можно поделить, например, на тех, кто анализирует данные в Excel, и тех, кто пишет модели на R или Python. Дмитрий Королев (Dima Korolev), проработавший в Google, Facebook и Microsoft, считает, что в скором времени будут востребованы работники с универсальной экспертизой вроде концепции «универсального Full-Stack разработчика».
Разработчик Apple и основатель нескольких IT-стартапов Шейн Ряу (Shane Ryoo) рассказывает о том, как он нанимает специалистов по Data Science. Прежде всего человек должен уметь хорошо программировать на Python, C/C++ и/или Java: владение R, Matlab и другими языками Шейна не интересует. Кандидат должен уметь составлять алгоритмы и желательно – разбираться в машинном обучении. Кроме того, он должен уметь подробно рассказать о методе максимального правдоподобия, теореме Байеса, алгоритме Витерби и регуляризации, в идеале – написать статью на эти темы.
Многих интересует уровень заработка в этой сфере. Пол ДеВос утверждает, что в прошлом году, например, по Далласу средняя зарплата составляла порядка 130 тысяч долларов. Он знаком с тремя специалистами, которые получают такую зарплату. «У каждого из них разный опыт, и у каждого есть степень магистра» – говорит Пол.
Элиас Абу-Хайдар (Elias Abou Haydar), data scientist в компании iGraal, считает, что наиболее успешных коллег отличают навыки эффективного общения, в частности, работа со СМИ. Он замечает, что это вовсе не значит, что другие, менее заметные специалисты чем-то хуже.
«Нам приходится не сладко, особенно когда вокруг много тех, кто больше хвастается, чем занимается делом», – пишет Элиас. Конечно, не последнюю роль играет опыт и навыки решения сложных аналитических задач.
Работа с данными вынуждает вас общаться с людьми из разных отделов вашей компании. В итоге вы оказываетесь в центре событий, так что вам нужно понимать, в каких направлениях работает бизнес, чем занимаются сотрудники и как с ними можно взаимодействовать. Поэтому работа в сфере Big Data дает вам явное преимущество над специалистами из близлежащих сфер деятельности и больше возможностей для карьерного роста.