Войти Создать резюме
Блог
Лого

Как стать ETL разработчиком: гайд [Бонус — 18 книг для обучения]

Карьера etl разработчик

Чем крупнее компания, тем чаще она сталкивается с необходимостью обрабатывать и переносить большие объёмы данных. Это может быть связано с устареванием СУБД, изменением требований к базе и к тому, какой должна быть архитектура. Сбором, переработкой и сохранением информации занимается ETL разработчик. В статье рассмотрим, как освоить эту профессию с нуля.

Чем занимается ETL программист

Понять, какие функции возлагаются на программиста несложно. Для этого достаточно расшифровать аббревиатуру ETL:

  1. Extract или «извлечение». Информация достается из API-интерфейсов, облаков, других сайтов и CRM, SQL таблиц, NoSQL объектов, документов MS Excel, текстовых файлов txt и docx. Сюда же относится сохранение в промежуточной базе, где проводится проверка корректности и целостности собранных данных.
  2. Transform или «изменение». К этому пункту может относиться анализ информации, ее фильтрация и сравнение. Программисту часто приходится преобразовывать данные, так как они имеют различный формат: CSV, XML, JSON, тексты, объекты и массивы, а также другие варианты. В конце требуется очистка от дубликатов, спама и стандартизация.
  3. Load или «загрузка». Этот этап не такой простой. Информация сохраняется на сервере. Разработчику нужно отправить большие объёмы данных, поэтому здесь важно правильно распределять нагрузку.

etl разработчик работа

ETL программисту приходится решать разные проблемы. Компания может работать с десятками источников информации, а форматы — исчисляться сотнями. Далеко не все они структурированы, при этом одни нужно конвертировать в пакетном режиме, а другие — в потоковом.

Отдельной проблемой стоит качество данных. Часто встречается спам на почте, ошибки (опечатки), дубликаты и просто недостоверная информация.

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

Что должен знать и уметь ETL разработчик

Все необходимые навыки программиста делятся на так называемые hard и soft skills. К первым относятся технические знания и умения, ко вторым — личностные и коммуникативные качества. Обе группы одинаковы важны.

Каких-то конкретных требований к языку программирования нет. Можно изучить любой (C#, C++, Java, php, Python), но работать вам, скорее всего, придется с тем, что используется в компании. Так что при трудоустройстве или на этапе подготовки к собеседованию, возможно, придется освоить новый язык. Сделать это не так сложно, если вы владеете хотя бы одним.

Что нужно знать помимо этого:

  • реляционные и нереляционные базы данных;
  • языки SQL (для реляционных БД) и NoSQL (для нереляционных);
  • СУБД: PostgreSQL, MySQL и MicrosoftSQLServer (для SQL), а также MongoDB и Redis (для NoSQL) — по одному на выбор для каждого типа БД;
  • организацию БД по типу многомерных кубов и инструменты для этого: MDX, SSAS и OLAP;
  • пространственное моделирование.
Разработка ETL процессов невозможна без использования специальных инструментов. Вот что еще нужно освоить:
  • платформы для интеграции данных: IBM InfoSphere, Open Text, Informatica Power Center, PervasiveDataIntegrator;
  • облачные хранилища данных: Cloud BigData, Yandex.Cloud и Google Cloud;
  • программы моделирования: Embarcadero и Toad Data Modeller;
  • платформу SSIS для переноса данных;
  • средства обработки, анализа и визуализации данных: Metabase, SAPBusinessObjects, Airflow, Apache Spark Streaming;
  • компоненты экосистемы Hadoop: HDFS, Spark, Hbase, Hive, Sqoop Experience;
  • набор продуктов Sybase: СУБД и ПО для управления, анализа информации.

Это далеко не весь список. Сюда же можно отнести Oracle GoldenGate, Docker, Kafka, а также другие программы и платформы. Кроме того, имеется внушительный список требований к софт скилам.

Например:
Готовность работать в команде, развитые коммуникативные навыки, умение воспринимать критику, стрессоустойчивость, обучаемость, инициативность.

Разработчику ETL нужно отлично знать английский язык. В программировании это требование везде актуально, но именно здесь оно наиболее высокое. На это есть две причины: первая — отсутствие русской документации по специфическим платформам, вторая — специалисту часто приходится иметь дело с иностранными партнерами и коллегами.

ETL developer резюме должен сразу составлять на английском.

Где учиться на ETL программиста

Есть несколько вариантов, как стать ETL разработчиком. Каждый метод обладает преимуществами и недостатками. Ниже рассмотрим их детально.

Вуз

На данный момент ни в одном вузе нельзя получить профессию ETL разработчика. Во-первых, это молодая профессия, информации по ней в русскоязычном сегменте мало. Во-вторых, она довольно узко специализирована, поэтому такому направлению не уделяют внимания.

Однако это не значит, что смысла поступать в вуз нет. ETL разработка требует хороших знаний в БД, типах данных, их анализе. Всему этому лучше обучают именно в университете.

Хотя в вузовской подготовке есть и минусы: длительность обучения и необходимость получения дополнительной квалификации по окончании учебного заведения.

Курсы

HR-специалистов в первую очередь интересуют навыки и знания кандидатов. Диплом — последнее, на что они обращают внимание. Поэтому будущий ETL разработчик обучение может пройти на специальных курсах.

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

Как правильно выбрать курсы:

  • Изучите учебную программу. Убедитесь, что в расписании есть занятия по всем инструментам и технологиям.
  • Посмотрите информацию о формате и организации занятий. Как они проводятся: онлайн или офлайн? Будут ли уроки доступны в записи? Можно ли отказаться от курса сейчас и пройти его позже с другой группой?
  • Проанализируйте рецензии на сайтах Отзовик и IRecommend. На этих ресурсах пользователи должны идентифицировать свою личность, поэтому их аккаунты можно без проблем найти в социальных сетях (в первую очередь на LinkedIn). Посмотрите, работают ли эти люди в сфере программирования. Можете даже пообщаться с ними, спросить, изменилось ли их мнение.
  • Оцените длительность курса. При этом нужно смотреть количество часов, отведенных на теорию и практику, отдельно — это более объективный показатель.
  • Выясните о практических заданиях и дипломном проекте как можно больше. Важно понять, насколько они приближены к реальным рабочим задачам.
  • Обратите внимание, есть ли пробные занятия, а также возможность вернуть деньги. Обычно такие условия предлагают крупные авторитетные платформы, которым нечего скрывать.
  • Узнайте о лекторах и кураторах. Будут ли профессиональные ETL разработчики проводить курсы? Выясните, где они работают, а затем посмотрите информацию об этих специалистах на сайте их компаний. Если куратор или лектор ведет блог, пишет статьи на Хабре — это хорошо. Значит, он любит обучать.
  • Уточните, содействует ли образовательная платформа в трудоустройстве выпускников. Часто компании ограничиваются лишь помощью в составлении резюме и подготовкой к собеседованию.

Самостоятельное обучение

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

    • Нет эффективного плана и графика обучения. Это снижает результативность, но достижению цели особо не мешает.
    • Нет общения с преподавателем. Иногда очень нужен человек с опытом, который подскажет, как решать ту или иную проблему.
    • Нет сравнения с другими. А значит, нельзя точно сказать, насколько быстро вы продвигаетесь в учебе.

    Впрочем, всё это можно компенсировать, обратившись к ментору. Найти его можно на специальных площадках за небольшую плату. О том, как это сделать, мы рассказывали здесь.

    Полезные книги, которые помогут изучить ETL:

    • «SQL для простых смертных» Грабер Мартин;
    • «Язык PL/SQL», Задворьев И. С.;
    • «Программирование баз данных SQL» Карвин Б.;
    • «Основы Data Science и Big Data», Силен Д., Мейсман А.;
    • «Data mart consolidation: getting control of your enterprise information» (витрины данных);
    • «Dimensional Modeling: In a Business Intelligence Environment» (трехмерное моделирование);
    • «Хранилища данных и средства бизнес-аналитики», Точилкин;
    • «Building a data warehouse With examples in SQL server», Vincent Rainardi (хранилища данных);
    • «Oracle PLSQL для администраторов баз данных» Нанда А., Фейерштейн С.;
    • «Oracle для профессионалов», Том Кайт;
    • «Oracle PLS.QL. Для профессионалов» Фейерштейн С., Прибыл Б.;
    • «The data warehouse ETL toolkit Practical Techniques for Extracting, cleaning, conforming, and delivering data» (интеграция данных);
    • «Microsoft SQL Server 2012. Руководство для начинающих» Душан Петкович;
    • «Microsoft SQL Server 2014 Unleashed», Ray Rankins, Paul Bertucci, Chris Gallelli, Alex Silverstein;
    • «Проектирование и реализация баз данных Microsoft SQL Server 2000»;
    • «IBM Cognos business intelligence v10.1 handbook» (COGNOS BI)
    • «Data management and reporting made easy with SAS learning edition 2.0» (анализ данных SAS);
    • «Handbook of data visualization», C. Chen, W. Hardle, A. Unwin (визуализация данных).

    Как устроиться на работу ETL разработчиком

    Для начала уделите внимание резюме. «Настраивайте» его под конкретную вакансию ETL разработчика.

    как стать etl разработчиком

    Составить резюме 🔥

    Всю информацию нужно уместить на одной странице формата A4, поэтому пишите кратко, используйте списки и инфографические элементы. Чтобы упростить задачу, воспользуйтесь онлайн-конструктором.

    Основные разделы резюме:

    1. Ф.И.О., желаемая зарплата, контакты — в «шапке» документа.
    2. Опыт работы.
    3. Навыки — список из 10-12 важнейших умений.
    4. Образование и дополнительные курсы.
    5. Краткий рассказ о себе с профессиональной точки зрения.
    6. Качества — перечень личностных особенностей из 3-4 пунктов.

    Показать свои навыки можно с помощью портфолио. Но откуда его взять новичку? На биржах фриланса задачи по ETL разработке встречаются крайне редко. Есть 2 способа решения проблемы:

    1. Откликаться на другие заказы, связанные с работой с БД, анализом данных, парсингом. То есть выполнять все ETL процессы, но в отдельных задачах.
    2. Брать заказы на зарубежных биржах, там их в десятки раз больше. Единственный нюанс — придется подтянуть знание английского.

    Чтобы устроиться на работу ETL разработчиком, придется пройти не одно собеседование. Запаситесь терпением. Готовьтесь к каждой встрече тщательно, приходите заранее. Помните, что решение о трудоустройстве на 50% зависит от ваших личностных качеств: коммуникабельности, ответственности, стрессоустойчивости. Проявите их на интервью.

    Как стать ETL разработчиком: чек-лист

    1. Подберите комфортный формат обучения. Оцените плюсы и минусы каждого, чтобы принять верное решение.
    2. Уделяйте время самостоятельной подготовке. Читайте профильную литературу, изучайте видеоуроки на YouTube.
    3. Приобретите минимальный опыт. Сделать это можно на биржах фриланса.
    4. Составьте качественное резюме. Обратите внимание не только на содержание, но и на оформление.
    5. Готовьтесь к собеседованиям. Не переживайте, если с первого раза вас не возьмут на работу. Запросите обратную связь, чтобы понимать, какие скилы еще стоит «прокачать».
    Автор статьи

    Карьерный консультант. Специалист по карьере в IT. Основная работа – помощь в выборе учебной программы, составлении резюме и подготовке к собеседованию. Борис помогает выбрать способ обучения (вуз, колледж, курсы), литературу и видео для самостоятельного изучения профессии. Дает рекомендации для составления портфолио и быстрого старта.

    Иллюстратор:
    @Litanut

    Оцените статью:

    в среднем 5,00 (1 голосов)

    Загрузка...
    ЧИТАЙТЕ ТАКЖЕ
    Мы используем файлы cookie. Продолжив работу с сайтом, вы принимаете Соглашение об обработке персональных данных
    Ежедневные подборки вакансий в телеграм