Руководители часто полагают, что один инженер по данным может сделать все — от необработанного приема данных до безупречных информационных панелей. Именно из-за этого предположения многие инициативы в области данных терпят неудачу еще до того, как начнутся.
Инженерия данных — это не одна роль, а набор отдельных обязанностей в архитектуре медальона: бронзовый, серебряный и золотой. Отношение к этому как к одной работе часто приводит к нарушению конвейеров, разочарованию команд и остановке инициатив.
Ашок много лет работал над данными, руководя проектами миграции в облако и воочию видя пробелы в навыках инженерии данных. Он наблюдал, как руководители, отчаянно нуждающиеся в облачных технологиях, нанимают определенные инструменты, такие как BigQuery, Snowflake, Databricks или Airflow, только для того, чтобы обнаружить, что их новые сотрудники испытывают трудности с основополагающими разработками программного обеспечения, необходимыми для надежной платформы.
Гаурав, с другой стороны, возглавлял группы разработчиков платформ, которым было поручено создать крупномасштабные платформы данных с нуля. Его команды, состоящие в основном из разработчиков платформ, преуспели в построении надежных конвейеров приема, но столкнулись с проблемой моделирования данных и бизнес-логики, обнажив обратную проблему.
Вместе наш опыт, полученный на противоположных концах спектра, выявляет критический разрыв: навыки, которые создают надежную инфраструктуру данных (бронзовый и серебряный уровень), фундаментально отличаются от тех, которые обеспечивают бизнес-понимание (золотой уровень).
Фонд разработки программного обеспечения бронзового и серебряного уровней
Бронзовый слой — это место, куда данные попадают в своей самой необработанной форме: беспорядочные дампы JSON, потоки Kafka или потоки, специфичные для конкретной области, такие как сообщения HL7 здравоохранения. Серебряный уровень преобразует этот хаос в надежные, управляемые данные посредством дедупликации, принудительного применения схемы и отслеживания происхождения.
Эти уровни требуют строгости программной системы промышленного уровня:
- Надежное перемещение данных: Понимание системы сбора измененных данных (CDC), стабильных конвейеров приема и правильной настройки систем обмена сообщениями.
- Надежное тестирование: Написание модульных тестов для преобразований и интеграционных тестов для сквозных потоков, а не просто простых сценариев проверки.
- автоматизация: Управление инфраструктурой как кодом (IaC) и развертывание через конвейеры CI/CD, чтобы избежать скрытой ручной настройки.
- Наблюдаемость: Внедрение глубокого журналирования и анализа происхождения обеспечивает быстрое обнаружение, диагностику и восстановление после сбоев.
Из опыта Ашока, руководившего миграциями, вырисовывается общая закономерность. Многие инженеры данных хорошо владеют Python для PySpark и SQL, но им не хватает навыков для написания модульных тестов, разработки сложных платформ или автоматизации инфраструктуры. Когда проект начинается, эти инженеры часто тратят месяцы на изучение IAM, IaC и CI/CD с нуля, что приводит к дорогостоящим ошибкам и значительному техническому долгу. Это не значит, что они плохие инженеры; это означает, что они не подходят для создания базовых бронзовых и серебряных слоев, где инженерная дисциплина имеет важное значение.
И наоборот, опыт Гаурава показывает обратную сторону медали. Его команда разработчиков платформ проделала отличную работу по созданию платформы для надежной передачи данных на бронзовый уровень с помощью CDC и Kafka. Но путь оттуда был трудным. Они столкнулись с проблемами при работе с такими инструментами, как dbt и SQL Mesh, а также с концепциями моделирования данных, такими как звездообразные схемы и сохранение происхождения. Прогресс был ограниченным, пока они не привлекли специализированных инженеров по данным и аналитиков, которые помогли им ориентироваться в области бизнес-логики и аналитики.
Этот контраст подтверждает нашу точку зрения: для уровня Bronze и Silver требуются инженеры с сильными основами разработки программного обеспечения, тогда как для уровня Gold требуется совершенно другой набор навыков.
Это область деятельности инженера платформы (или инженера-программиста, специализирующегося на данных). Их мир — это мир распределенных систем, надежности и автоматизации. Они гарантируют, что «фабрика» данных всегда будет работать вовремя.
Бизнес-природа золотого слоя
К тому времени, когда данные достигают золотого слоя, битва с хаосом практически окончена. Теперь речь идет о рассказе истории. «Золотой уровень» — это место, где очищенные и управляемые данные превращаются в готовые для бизнеса идеи. Именно здесь модели фиксируют доходы, отток клиентов, использование продуктов и маркетинговые ключевые показатели эффективности, которые определяют реальные решения.
Навыки здесь разные:
- Успех измеряется не надежностью конвейеров CI/CD, а тем, насколько быстро и точно можно ответить на бизнес-вопросы.
- Свободное владение SQL, знание инструментов бизнес-аналитики и деловая хватка занимают центральное место.
- Для достижения успеха на этом уровне требуется способность разрабатывать модели и показатели, соответствующие тому, как бизнес смотрит на мир.
- Команды, состоящие только из сильных инженеров-программистов, часто испытывают трудности здесь, потому что золото требует знаний предметной области и аналитической интуиции в дополнение к техническим навыкам.
Золотой слой процветает, когда инженеры действуют скорее как аналитики инженерной дисциплины, а не как инженеры, пытающиеся заняться аналитикой. Эту роль часто называют инженером-аналитиком. Они представляют собой гибрид аналитика данных и инженера-программиста, использующего такие инструменты, как dbt, для перевода бизнес-логики в надежные, хорошо документированные модели данных.
Почему лидеры должны прекратить нанимать универсальных инженеров по обработке данных
Именно здесь лидерство имеет решающее значение. Слишком многие компании рассматривают разработку данных как единственную роль, ожидая, что один человек будет управлять необработанными потоками событий, строить надежные конвейеры и разрабатывать бизнес-панели мониторинга. Такое ожидание обрекает команды на неудачу.
Лучший подход — думать с точки зрения профилей навыков. Самый простой способ выявить эти различия — во время приема на работу с помощью вопросов, которые вы задаете.
Вопросы для собеседования на бронзовый/серебряный уровень (инженер платформы) могут включать в себя:
- Как бы вы спроектировали идемпотентный конвейер приема данных?
- Как бы вы протестировали сложное преобразование данных, извлекаемое из нескольких источников?
- Расскажите мне о случае, когда вам приходилось отлаживать распределенную систему данных, такую как Kafka или Spark. В чем была проблема и как вы ее решили?
Вопросы на собеседовании уровня Gold (инженер-аналитик) могут включать в себя:
- Команда разработчиков хочет изменить определение «ежедневно активного пользователя». Расскажите мне о технических шагах и плане коммуникации, который вы бы использовали.
- Вот беспорядочный набор данных и бизнес-вопрос. Как бы вы смоделировали это в SQL, чтобы дать надежный ответ?
- Как сбалансировать потребность в «идеальной» модели данных с потребностью бизнеса в «достаточно хорошем» ответе прямо сейчас?
Лучшие структуры команд отражают этот раскол. Центральный Команда платформы данныхукомплектованный инженерами платформ, владеет уровнями Bronze и Silver как надежный сервис. Инженеры-аналитики либо сидят в этой команде, либо включены в такие бизнес-подразделения, как продукт или маркетинг, где они тесно сотрудничают с заинтересованными сторонами для создания золотого уровня. Ключевым моментом является то, что эти роли, обязанности и карьерные лестницы различны, и лидеры должны относиться к ним соответствующим образом.
Создание дополнительных групп данных для обеспечения долгосрочной ценности
Инженерия данных — это не одна роль. Бронзовые и серебряные уровни требуют строгости разработки программного обеспечения, тогда как золото зависит от бизнес-контекста и аналитических знаний. Слишком часто руководители ищут одного сотрудника, чтобы покрыть все это, и в конечном итоге сталкиваются с пробелами, задержками и техническим долгом.
Чем раньше лидеры перестанут искать единорогов и начнут создавать взаимодополняющие команды, тем скорее их платформы данных будут надежно масштабироваться и обеспечивать долговременную ценность для бизнеса. Лидеры, которые нанимают рядовых сотрудников, а не единорогов, создают устойчивые платформы и сильные команды. В этом выборе и заключается разница между хаосом данных и данными как настоящим конкурентным преимуществом.
ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Ашок Сингаманени — главный инженер по данным и новатор в области открытого исходного кода, специализирующийся на крупномасштабных платформах данных, проектировании на основе искусственного интеллекта и распределенных системах. Он является соавтором Brickflow — собственной среды оркестрации Databricks и Spark-Expectations — библиотеки качества данных PySpark — вместе… Подробнее от Ашока Сингаманени Гаурав Нанда — технический менеджер в Databricks, где он возглавляет организацию инфраструктуры сетевой платформы, которая обеспечивает крупномасштабное и надежное подключение для рабочих нагрузок данных и искусственного интеллекта. Его работа сосредоточена на обнаружении сервисов, защите от перегрузки и системах повышения производительности разработчиков, которые лежат в основе Databricks… Подробнее от Гаурава Нанды