01 / тестовое задание

Озон:
тестовое задание для аналитика данных

Реальное тестовое с собеседования на Middle Data Analyst: исходный текст задания, как решать и частые ошибки.

02 / оригинальный текст

Текст тестового задания

Исходный текст задания без редактуры — так, как его прислали кандидату.

Данные к заданиюДоступ к данным этого задания был закрыт владельцем — файлы больше недоступны. Текст задания приводим полностью, данные восстановить нельзя.

Задание #1

Продуктовая аналитика

Менеджер продукта PDP внедряет новый функционал, функционал заключается в том, что на странице карточки Ювелирных украшений (Колец) появляется ссылка - «Я не знаю размер».

Вопросы:

Как бы вы оценили полезность такого функционала до её внедрения?

На какие метрики вы бы смотрели и как их считали?

Что нужно считать после внедрения этого функционала?

Что необходимо передавать в аналитические базы данных, чтобы дать ответ менеджеру, что функционал приносит дополнительную ценность?

Задание #2

Вы проводите AB тест по внедрению функционала:

Вариант A — калькулятор для подбора колец (см. задание 1).

Вариант B — таблица размеров (см. скриншот 2).

Оба варианта открываются после клика по ссылке «Я не знаю размер».

Вопрос:

Допустим вы смотрели:

На количество добавлений в корзину после использования этого функционала.

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

и получили результаты.

Распределение: 10% — калькулятор, 90% — таблица размеров.

На что, по вашему мнению, стоит опираться при выборе того, какой функционал нужно выкатывать на 100%?

Задание #3

SQL

SQL - Есть база данных, которая описывается схемой ниже:

Вывести список сотрудников, получающих заработную плату большую чем у непосредственного руководителя.

Вывести список ID отделов, количество сотрудников в которых не превышает 3 человек.

Вывести список сотрудников с названием департамента и именем руководителя.

Задание #4

SQL*

Дана таблица с данными о продажах со следующей структурой:

sales (все поля обязательные):

id int — pk;

dt datetime — дата продажи;

amt decimal — сумма сделки;

client_id int — клиент, которому продали услугу;

agency_id int — агентство, которое участвовало в сделке;

contract_id int — договор, по которому совершалась продажа.

Вывести такие договоры (должны выполняться все условия):

по которым в прошлом месяце было выполнено сделок на общую сумму ≥ 50k,

для которых нет клиентов, которые бы занимали более 60% от оборота по договору за прошлый месяц,

исключить агентства, по которым за прошлый месяц было заключено сделок менее чем с 10 клиентами.

Задание #5

Python

Результат нужно представить в Jupyter Notebook.

Данные.

Из баз данных выгружены данные за период с 1 по 15 июня по показам полок.

Структура данных:

-date — дата; -platforms — платформа; -action — событие; -count — количество (в штуках); -uniq — количество (в уникальных пользователях).

Задания:

Загрузите файл views.csv и выведите первые 5 строк.

Посчитайте, сколько показов было всего за период в разбивке по полкам и платформам.

Определите, какое количество разных полок есть в датасете.

Объедините полки, которые содержат в названии bestsellers , в одну.

Посчитайте новое распределение по просмотрам полок за весь период.

Загрузите файл clicks.csv (содержит информацию по кликам на полки) и выведите первые 5 строк.

Посчитайте:

CTR по полкам,

Количество просмотров полок на пользователя,

Среднее количество просмотров на пользователя по каждой полке,

Максимальное количество просмотров на пользователя.

03 / что проверяют

Что проверяет это задание

01

Python

Обработка данных и расчёты: pandas, скрипты, автоматизация.

02

SQL

Выборки, агрегаты, джойны и оконные функции для анализа данных.

03

A/B-тесты

Дизайн эксперимента, метрики, стат-значимость и интерпретация.

04

Матстатистика

Оценки, распределения и проверка гипотез.

04 / как решать

Как подойти к решению

  1. 1

    Разберите условие: что именно просят посчитать и в каких разрезах.

  2. 2

    Сверьтесь с данными: какие таблицы есть, период и нужные фильтры.

  3. 3

    Решайте по шагам и фиксируйте промежуточные результаты и допущения.

  4. 4

    Доведите до финальных чисел и коротких выводов или рекомендаций.

05 / частые ошибки

Частые ошибки

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

Каким должен быть сильный ответ

Хороший ответ — это не просто финальные числа или код. Работодатель должен увидеть, как вы думаете, как проверяете ограничения задачи и как оформляете результат.

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

Похожие задания

08 / разборы в telegram

Хочешь больше таких разборов?

В Telegram-канале разбираю тестовые с собеседований, метрики и типичные ошибки кандидатов.

Подписаться в Telegram →
09 / следующий шаг

Разбираешь тестовые, но не уверен в решении?

На интенсиве разбираем реальные кейсы, A/B-секции, метрики, SQL, Python и типовые ошибки кандидатов.