Перейти к содержимому

Собеседование на Дата Инженера Middle+ на 350к

Евгений Виндюков

0:00 / 0:00

Собеседование на Дата Инженера Middle+ на 350к

2 987 просмотров · 1 дн. назад
Евгений Виндюков
4,21 тыс. подписчиков
2 987 просмотров · 1 дн. назад
Напиши нашему тг боту команду /livecoding350 и получи задачи с собеседования: https://s.salebot.pro/07a7864a2e3fef8... Записывайся на BootCamp Ноябрь 2026 в нашем боте: https://s.salebot.pro/07a7864a2e3fef8... Таймкоды: 00:00 Вступление: собеседование, Spark, Python, декораторы и live coding 01:21 Хэширование в Python: зачем ключ словаря должен быть hashable 03:51 HashMap: как словарь быстро находит значения 05:14 Коллизии в hash map и способы их разрешения 07:04 Как Python понимает, какой объект лежит по ключу 08:03 Копирование словарей: ссылка, copy и deepcopy 10:18 Декораторы в Python: зачем использовал в PySpark 12:12 Декораторы с параметрами и вложенные функции 14:03 classmethod, staticmethod, property и _call_ 16:21 Зачем писать ООП-код в Python 18:42 CI/CD, тесты и зачем они нужны дата-инженеру 21:02 Как тестировать Spark-код и расчёты на датафреймах 22:31 Подход к разработке Spark-расчёта: источники, партиции, метаданные 24:18 SCD: Slowly Changing Dimensions и типы историчности 26:06 Как хранить историю изменений в таблицах 28:13 Append, load date, business date и актуальные записи 30:02 Обновления из источника и сверка с историческими данными 32:00 Историчность, если источник не даёт статусы и даты обновления 34:11 Snapshot-подход и загрузка периодов данных 36:00 Когда SCD становится дорогим по ресурсам 38:19 Уровень владения Spark и опыт со сложными пайплайнами 39:10 Spark UI: Jobs, Stages, Executors, SQL/DataFrame 40:04 Task, Stage, shuffle и перемешивание данных 42:13 DAG, оптимизации Spark и повторное использование вычислений 43:36 Retry task/stage и ошибки записи во внешние системы 46:00 Что пересчитывается при падении executor'а 48:03 Как Spark использует диск без явного cache 50:15 Shuffle spill: почему Spark пишет промежуточные данные на диск 52:03 Cache vs Persist и storage levels 52:45 Checkpoint: зачем резать длинный DAG 54:37 Переход к ClickHouse: опыт и задачи 56:05 TTL, индексы и сортировка в ClickHouse 58:30 ORDER BY, primary key и sparse index в ClickHouse 59:17 Шардированный ClickHouse и distributed-таблицы 01:00:00 Завершение технической части Полезные ссылки: Telegram канал: https://t.me/halltape_data Roadmap для Data Engineer: https://s.salebot.pro/07a7864a2e3fef8... Twitch канал: / halltape GitHub: https://github.com/halltape Канал с подкастами: / @beyond_the_code Канал с подкастами:    / @beyond_the_code