Sobes.tech

Data Analyst

Расскажите про кейс лучшего дашборда, который вы разработали: кто был заказчиком, какие показатели смотрели, как измеряли полезность инструмента?

141

Как технически реализовать финансового AI-советника для премиум-клиентов? Какие риски, что делать опасно?

141

-- Маркетологи запускают в приложении сервиса промо-кампании. Есть две таблицы: -- campaigns – список кампаний -- - campaign – название кампании -- - action_type – тип кампании: "push" или "banner" -- communications – лог бэкенда с отправками коммуникаций этих кампаний на пользователей -- - user_id – идентификатор пользователя -- - campaign – название кампании -- - status – статус события: "success" или "error" --------------------------------------------------------------------------- -- 1. Изначально в таблице campaigns есть 4 строки: -- | campaign | action_type | -- |-------------|-------------| -- | promo_dogs | push | <- случайно задублины -- | promo_cats | banner | -- | promo_cats | banner | <- две строки -- | promo_rats | push | -- Еще известно, что: -- кампании promo_dogs и promo_cats были успешно проведены на 100 пользователей и каждый пользователь получил по одной коммуникации, -- а promo_rats только планируется. -- 1.1 Что выведет запрос: SELECT campaign, COUNT(*) as rows, COUNT(DISTINCT co.user_id) AS users FROM campaigns AS ca INNER JOIN communications AS co ON ca.campaign = co.campaign GROUP BY ca.campaign AS campaign -- 1.2 Как изменится ответ, если поменять тип JOIN на LEFT?

140

Расскажи про свой опыт: чем занимался на предыдущих местах работы, что релевантно для данного проекта?

140

Знакомы ли вы полноценно с ETL-процессом? Какие там этапы?

140

Ты знаком с реляционными и нереляционными базами данных? Чем они отличаются?

140

SQL: выведите все товары, у которых цена выше средней цены в их категории (таблица products с полями product_id, category, price).

140

Расскажи про подходы к построению DWH: Data Vault 2.0 vs снежинка/звезда — основные сущности, преимущества и недостатки.

140

Как была реализована схема авторизации в двусторонней системе?

Middle
140

Расскажи, пожалуйста, в Airflow ты скорее давал ТЗ или также имеешь опыт создания DAG?

139

Вы работали на нативном Python или с какими-то библиотеками?

139

-- По отправленным на пользователей промо-кампаниям: -- 2.1 Напишите запрос, который выводит количество пользователей, успешно получивших коммуникацию, для каждой кампании. -- 2.2 Измените запрос, чтобы вывести: количество пользователей, не получивших в итоге ни одной успешной коммуникации, для каждой кампании? -- 3. В таблицу communications добавили еще поле – event_timestamp – дата и время события с доставкой коммуникации в формате '%Y-%m-%d %H:%M:%S'. -- Для всех кампаний, в том числе не запущенных, посчитайте метрику: долю пользователей, у которых доставка успешного сообщения получилась с первого раза. -- Можно использовать оконные функции, можно обойтись без них, но важно написать запрос оптимально.

139

Есть ли у вас уже офферы на руках или финальные этапы собеседований?

Middle
139

Расскажите пример конкретного проекта, над которым вы работали

Middle
139

Расскажите о себе: чем занимаетесь, чем хотели бы заниматься, какие планы на развитие?

139

Псевдокод sum_series(a={{1, 2}, {5, 1}}, b={{2, 4}, {3, 6}, {9, 7}}) -> {{1, 2}, {2, 6}, {3, 8}, {5, 7}, {9, 8}} def sum_series(a, b): result = [] i , j = 0, 0 val_a, val_b = 0, 0 while i < len(a) or j < len(b): a_next = a[i][0] if i < len(a) else float('inf') b_next = b[j][0] if j < len(b) else float('inf') if a_next < b_next: val_a = a[i][1] t = a[i][0] i += 1 else: val_b = b[j][1] t = b[j][0] j += 1 result.append((t, val_a + val_b)) return result

139

А в компании за 8 месяцев было что-то, что вы могли бы себе в заслугу поставить?

138

Будет ли у вас возможность работать по московскому времени, начиная с 8, 9 или 10 утра?

Middle
138

Расскажите о себе (карьерный опыт)

137
/15