Причём здесь дата и почему ею должен заниматься целый инженер?
Учёный может открыть новую звезду, но не сможет её создать. Ему придётся просить инженера сделать это.
Информация может быть разной: от статистических данных потребителей зубной пасты до списка переменных и их значений в условиях некой формулы. Как раз благодаря возможностям сбора, накапливания и последующей обработки данных получилось создать все концепции и технологии “умных” городов, “интеллектуальных” алгоритмов рекомендаций и прочие новомодные взаимодействия с информацией.
Накопленная информация сама по себе ничего не даёт: для получения выгоды её нужно обработать. Тут в дело вступает дата-инженер.
Чем дата-инженер отличается от аналитика?
Термин дата-сайентист (от англ. data scientist) у всех на слуху и обозначает коллегу дата-инженера. С учётом современных трендов на объединение или работу в команде, штатные единицы сайентиста (ученого, аналитика) и инженера представлены либо в одном лице, либо эти специалисты тесно сотрудничают друг с другом.
Итак, инженер выстраивает все каналы связи – от процесса сбора информации до её преобразования в нужный формат. Как в каком-нибудь промышленном симуляторе Factorio или Satisfactory: он находит источник данных, выстраивает конвейер для их передачи, а также создаёт инфраструктуру для обрабоки и преобразования информации.
Дальше вступает в дело аналитик: получив нужные данные он трансформирует их в необходимую форму. Именно аналитики создают различные модели, графики и прочую визуализацию. И они же красиво подают менеджменту выводы в текстовом формате. Грубо говоря, инженер собирает информацию, проводит её первичную обработку и отправляет аналитику. Тот же издевается над данными по полной: анализирует, проверяет гипотезы и на основе полученной информации создает новые знания и прочую ценность для бизнеса.
Что нужно знать дата-инженеру?
Для первичной обработки информации и организации её хранения инженеру понадобятся знания бекенда и в области разработки ПО. В качестве основного и самого популярного хранилища выступают СУБД (SQL и noSQL), поэтому в начале пути можно сфокусироваться на них.
Базовые требования
Дата-инженер работает с данными, а значит ему нужно знать о данных всё:
- Алгоритмы и структуры данных. Здесь важна не теоретическая подготовка с вызубренными определениями, а понимание всех рабочих процессов. К примеру, на Udemy есть курс, полностью посвящённый данным, их типам и структурам.
- SQL – язык структурированных запросов. Почти каждая реляционная СУБД поддерживает этот язык организации запросов для получения или обработки данных. Он не слишком сложен, к тому же есть хороший учебник, водящий “за руку” по всем понятиями и возможностям SQL.
- Python, Java/Scala. Python считается одним из лучших языков для работы с данными (и, определенно, самым популярным), а Java/Scala следует знать, поскольку на них написаны почти все инструменты для работы с информацией.
- Инструменты для работы с большими данными (Hadoop, Spark, Kafka).
- Облачные платформы (MS Azure или Amazon Web Services).
- Распределённые системы. Большие объёмы данных предполагают, что работать с ними придётся в кластерах. Новичкам стоит прочесть книгу Эндрю Таненбаума “Распределённые системы”. Для начала она может показаться сложной, но потом это пройдет.
- Конвейеры данных. Выстраивание путей сбора, обработки и хранения информации занимают большую часть рабочего времени дата-инженера.
Заключение
Порог входа в профессию довольно высок, причём даже от новичка требуется понимание технологий, а не простое заучивание методов работы с инструментами, но в итоге потраченные усилия окупятся.
Хочу подтянуть знания по математике, но не знаю, с чего начать. Что делать?
Если базовые концепции языка программирования можно достаточно быстро освоить самостоятельно, то с математикой могут возникнуть сложности. Чтобы помочь освоить математический инструментарий, «Библиотека программиста» совместно с преподавателями ВМК МГУ разработала курс по математике для Data Science, на котором вы:
- подготовитесь к сдаче вступительных экзаменов в Школу анализа данных Яндекса;
- углубитесь в математический анализ, линейную алгебру, комбинаторику, теорию вероятностей и математическую статистику;
- узнаете роль чисел, формул и функций в разработке алгоритмов машинного обучения.
- освоите специальную терминологию и сможете читать статьи по Data Science без постоянных обращений к поисковику.
Курс подойдет как начинающим специалистам, так и действующим программистам и аналитикам, которые хотят повысить свой уровень или перейти в новую область.
Комментарии