Files
dev-roadmap-avito-playbook/bi-developers.md
2025-10-16 20:32:25 +03:00

15 KiB
Raw Blame History

BI-разработчик решает задачи, связанные с загрузкой, подготовкой и обработкой данных, созданием переиспользуемых источников и разработкой отчётности для пользователей.

BI-функция — на стадии развития, поэтому фокус задач может варьироваться в зависимости от аналитической команды. Ключевые направления работы:

  • разработка автоматизированной системы отчётности: сбор и анализ требований пользователей, автоматизация бизнес-логики метрик, создание дашбордов и их продвижение;
  • работа с ETL-процессами и витринами данных: разработка, поддержка и оптимизация витрин, организация и улучшение потоков загрузки и трансформации данных;
  • обеспечение качества данных и отчётности: контроль актуальности корректности данных в отчётах, оптимизация скорости загрузки и обновления, устранение дублирования;
  • формирование продового слоя витрин и отчётов: создание объектов, рекомендованных для переиспользования другими пользователями и соответствующих повышенным требованиям к качеству, стабильности, уровню сервиса, документации;
  • системное развитие BI-отчётности: анализ потребностей бизнеса в отчётности, подбор оптимальных решений для их покрытия и мониторинг использования.

Допускается разное соотношение «инженерных» (работа с ETL, витринами, кодом) и «репортинговых» задач (дашбординг, сбор бизнес-требований, работа с заказчиком и пользователем) в зависимости от специфики домена. Это может оказывать влияние на ожидания от конкретной роли при найме и развитии в виде большей значимости отдельных компетенций.

Краткое описание ролей

Junior

Выполняет декомпозированные задачи под контролем тимлида:

  • создаёт витрины и потоки данных согласно стандартам;
  • создаёт дашборды и другие BI-объекты согласно стандартам.

Middle

Самостоятельно выполняет middle-level задачи в рамках направления/юнита:

  • анализирует потребности ролей в данных и отчётах;
  • разрабатывает оптимальные модели данных и витрины, оптимизирует скрипты;
  • создаёт дашборды, подбирая оптимальные решения под задачу;
  • планирует работу на квартальной основе, определяет приоритеты, управляет ожиданиями в рамках спринтов;
  • развивает витрины и системы дашбордов как продукты — анализирует требования, собирает фидбеки, продвигает и развивает на базе метрик использования;
  • осуществляет гавернанс своих данных и отчётов — следит за метриками качества, сертифицирует рекомендуемые и архивирует неиспользуемые объекты;
  • активно участвует в коммуникациях с заказчиками, проводит обучение для пользователей.

Senior

Генерирует и самостоятельно выполняет senior-level задачи в рамках своей доменной области, в том числе:

  • системно анализирует потребности ролей в данных и отчётах, планирует работу для их покрытия;
  • разрабатывает оптимальные модели данных с учётом особенностей СУБД, оптимизирует скрипты подготовки агрегатов, ETL-процессов;
  • развивает витрины и системы дашбордов как продукты — анализирует требования, собирает фидбеки, продвигает и развивает на базе метрик использования;
  • планирует работу на квартальной основе, оценивает сроки и приоритеты, управляет ожиданиями стейкхолдеров, собирает обратную связь и демонстрирует результаты;
  • формирует и поддерживает продовый слой отчётов и витрин доменной области и обеспечивает SLA данного слоя на основе метрик качества, перфоманса, актуальности, покрытия документацией, UX;
  • проводит интервью c кандидатами и онбординг, выступает наставником.

Lead (экспертный трек)

Дополнительно к уровню Senior демонстрирует лидерство в рамках нескольких направлений, значимых для BI-функции, на уровне нескольких вертикалей/горизонталей/всей компании:

  • лидерство в кросс-доменных BI-/Data-продуктах — разрабатывает и владеет BI-/Data-продуктами, развивая их на базе требований нескольких вертикалей/горизонталей;
  • лидерство в управлении данными вертикали/горизонтали — развивает продовые слои отчётов и витрин в качестве BI-партнёра, отвечая за их SLA, ищет открытые проблемы и инициирует решения;
  • лидерство во внедрении Self-Service BI — координирует внедрение практик в разных ролях и департаментах, а также разработку инструментов;
  • экспертное лидерство — оптимизирует сложные ETL-пайплайны с большими объёмами данных, разрабатывает сложные технические решения, сервисы и инструменты, создаёт и внедряет стандарты разработки, визуализации данных, непосредственно участвует в развитии BI-инструментов компании;
  • лидерство в обмене знаниями: курирует систему найма BI, разрабатывает обучающие программы, развивает BI-комьюнити, выступает на внешних мероприятиях.

Компетенции

8 soft-компетенций

Зависит от сложности задач:

  • поиск задач;
  • формализация и решение задачи;
  • управление ожиданиями и планирование;
  • продуктовый подход;
  • не зависит от сложности задач;
  • вклад в обмен знаниями и комьюнити;
  • развитие BI-роли;
  • челленджинг запросов;
  • управление данными и BI.

5 hard-компетенций

Не зависит от сложности задач:

  • ETL;
  • SQL/DWH;
  • Redash;
  • визуализация данных;
  • Python (опционально).

Базовые ожидания

Ожидается, что все BI-разработчики, независимо от уровня, обладают базовыми качествами:

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

Лидерские качества

Ожидаются на уровне Senior и выше, но приветствуются на всех уровнях.

Ответственность за результат

BI-разработчик — главный в BI-проекте. Он несёт ответственность за структурирование работ, оптимальное использование ресурсов — своих и других участников. Он не делает лишний BI-отчёт там, где требуется просто представить данные. Ставит под сомнение требования заказчика, если видит, что они неоптимальны для исходной задачи, предлагает альтернативные решения на базе опыта и практик BI. BI-разработчик оценивает тип задачи, которую он делает, разделяя отчёты на аналитические и операционные. Первые требуют скорости и результата, вторые заслуживают времени на создание отчёта как продукта с осознанным сбором требований, учётом потребностей разных групп пользователей, проработанным UI и продвижением. BI-разработчик вовлекает заказчика в адаптацию таких решений и архивирует отчёты, если ими перестают пользоваться, перед этим анализируя причины и возможности реанимации. BI-разработчик использует Fail-Fast подход, проверяя свои предположения и идеи как можно быстрее и дешевле, прежде чем вкладывать в них слишком много времени. Умеет аргументированно отстаивать свою позицию, однако способен вовремя остановиться и принять точку зрения, которую не разделяет.

Инициативность и проактивность

BI-разработчик анализирует ценность своей работы для бизнеса и инициирует улучшения. Предлагает инновации, оценивает идеи, создаёт прототипы и презентует решения. BI-разработчик предвидит потенциальные проблемы и уровни риска, устраняет блокеры, разрабатывает стратегии минимизации рисков и внедряет их. Открыто говорит о текущих и возможных рисках проекта, добиваясь их осознания и принятия заказчиком. Фраза «это не входит в мои обязанности» не из лексикона BI-разработчика.

Коммуникация результатов

BI-разработчик чётко формулирует мысли, выбирает подходящие каналы коммуникации для представления результатов. Уверенно презентует материалы, вовлекает аудиторию в обсуждение, создавая формат живого рассказа. Способен наладить продуктивную коммуникацию на всех уровнях и решать возникающие вопросы в процессе работы. Умеет влиять на решения, принимаемые другими специалистами (инженерами, руководителями бизнеса и т. д.).

Саморазвитие

BI-разработчик открыт к обучению и саморазвитию, новым знаниям. Применяет их на практике и делится с коллегами. Вдохновляет команду и поддерживает культуру открытости к изменениям. Постоянно находится в поиске новых вызовов, предлагает свежие проекты или новый взгляд на старые. Ставит амбициозные цели, не боится браться за сложные задачи и стремится к высоким стандартам.