Your trial period has ended!
For full access to functionality, please pay for a premium subscription
SH
Инженерообязанный🫡 | Блог Дата Инженера
https://t.me/shust_de
Channel age
Created
Language
Russian
2.82%
ER (week)
13.13%
ERR (week)

Ломаем самих себя и становимся только лучше!

Делюсь своим жизненным путём в мир данных, рабочими кейса, проблемами, курсами, видео и всякой всячиной😁

Messages Statistics
Reposts and citations
Publication networks
Satellites
Contacts
History
Top categories
Main categories of messages will appear here.
Top mentions
The most frequent mentions of people, organizations and places appear here.
Found 52 results
#соБЕСики

🔖Вакансия: Data Engineer
🔖Компания: Группа НЛМК Рабочие профессии
🔖Сколько просил: 280-330 тыс. рублей(назвал 300 комфортно)
🔖Месяц прохождения собеседования: Апрель 2025
🔖Формат работы: Удалёнка
🔖Оформление: ТК
🔖Требования вакансии:

⏺Построение витрин в S3 хранилище, ClickHouse;
⏺Создание DAG-ов в Airflow;
⏺Написание ETL пайплайнов на PySpark;
⏺Оптимизация PySpark кода;
⏺Внедрение DQC (Data Quality Checks)
⏺Визуализация результатов на дашбордах (Superset, Redash);
⏺Проведение код-ревью, рефакторинг Python кода;

🔖Стек:

PySpark, Kafka, Airflow, DBT, flyway, Hadoop, ClickHouse, PostgreSQL, Kubernetes, Superset

🔖Этапы собеседований:

HR(5 минут)➡ Тех.собеседование(2 часа)

🔖Процесс прохождения:

Разговор с HR был 5 минут, спросила про опыт и сразу пригласила на техническое собеседование.

Собеседование началось с описания вакансии и чем предстоит заниматься. В двух словах команда состоит из 6 человек: 3 DevOps и 3 DE + ищут еще 2х. Задачи на ближайшее время:

1) Перевод тасок с Pandas на PySpark
2) Парсинг данных из разных источников: FTP, PSQL, Oracle, API
3) Создание локального хранилища DE метаинфы на Postgres
4) Внедрение ClickHouse для горячего хранилища данных
5) и т.д.

Следом поспрашивал за мой опыт, где я ему четко рассказал, какими я задачами занимался и с какими инструментами работал. Что мне понравилось - собеседующий спрашивал по резюме, ему реально было интересно, как и с чем я работал, как загружали данные, спрашивал - с какими сталкивался трудностями, и даже для себя я что-то подсветил. Ему вообще было все равно, с какими я работал инструментами и то , что у меня только учебных опыт со Спарком. После чего начал задавать теоретические вопросы по Spark, ClickHouse, AirFlow, Python. В целом вопросы несложные, но иногда были и такие, где нужно подумать.

🔖Вопросы технического собеседования:

🗣PySpark:
⏺Что делает shuffle в PySpark?
⏺Какие типы трансформаций бывает?
⏺Какие проблемы могут быть с shuffle?
⏺Что такое spill? И в чем их причины? Какие варианты решения проблем со spill-файлами?
⏺Что такое data skewing? Как можно решить данную проблему?
⏺В чем различие coalesce и repartition?
⏺Чем отличается RDD от DataFrame?
⏺Для чего в Spark используется cache?
🗣Python:
⏺Что такое генераторы? Какие есть варианты определения генераторов?
⏺Что такое итератор?
⏺Что может быть ключём словаря?
⏺Класс вида:
class MyClass:
pass
может быть ключём класса? Если нет, то что необходимо добавить?
⏺в чем различие между return и yield?
⏺Что обозначает ключевое слово is?
⏺Какие есть изменяемые и неизменяемые типы данных?
⏺Есть функция, в ней передается аргумент **qwe, что это обозначает?
⏺Как вы дебажите код?
🗣AirFlow:
⏺Из скольких аргументов состоит?
⏺Что такое сенсер и для чего он нужен?
⏺Какие операторы вы знаете?
🗣ClickHouse
⏺Что такое гранулярность?
⏺В чем различие primary key и order by при создании таблицы?
⏺Где хранится индекс?
⏺Что такое кардинальность и как она аффектит ключ распределения?
⏺Что такое партиции и как они совмещены с primary key?

🔖Итоговое мнение:

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

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

Если интересно (как я волнуюсь🫠, страдаю😨 и в целом умственно умираю🤯), запись собеседования можно приобрести 💲 и послушать ➡ тут.
04/23/2025, 19:04
t.me/shust_de/150
#кейсы

Зацените один из кейсов оптимизации запросов на ГП.

Если в двух словах, есть таблица, в ней 300 млн. строк. По итогу - мне нужно из данного запроса достать только определённые организации + проставить их имена. После некоторых преобразований я довел запрос к следующему виду:

select
id,
organization_id,
case
when mr.organization_id = '1'
then 'bank_1'
when mr.organization_id = '2'
then 'bank_2'
when mr.organization_id = '3'
then 'bank_3'
when mr.organization_id = '4'
then 'bank_4'
when mr.organization_id = '5'
then 'bank_5'
when mr.organization_id = '6'
then 'bank_6'
end as organization_name
from table_300_mln_str mr
where
1 = 1
and mr.organization_id in (
'1',
'2',
'3',
'4',
'5',
'6')

Запрос выполняется 30 минут. И понимаю, что так дела не делаются, нужно еще ускорять его работу.⌛ На ум приходит идея - накатить BitMap индекс(колонка имеет маленькую кардинальность), накатываю⌚. Жду час — не накатился. А мне витрину вот-вот отдавать нужно. И тут я вспоминаю🤯 - "Что такое IN" — это же тот же JOIN , только в профиль(обычно, под капотом, это Nested Loop JOIN).

В итоге - 30 минут меня никак не устраивают, и я создаю "суррогатную", реплицируемую на всех сегментах, временную таблицу:

create unlogged table organization as (
select '1' id, 'bank_1' org_name
union all
select '2', 'bank_2'
union all
select '3', 'bank_3'
union all
select '4', 'bank_4'
union all
select '5', 'bank_5'
union all
select '6', 'bank_6'
)
distributed replicated

И Джойню её с основной:

select
mr.id,
organization_id,
org_name
from table_300_mln_str mr
join organization o
on mr.organization_id = o.id

В данном случае "под капотом" появляется Hash JOIN , и соотвественно запрос выполняется за 8 минут, что в свою очередь ускоряет работу в 3-4 раза.

Обидно, что мне сразу не пришла эта тема в голову, и потерял достаточно времени на тестирование какого-то дерьма😖. Но этот пример я уже запомню точно надолго и в следующий раз сделаю всё чётко и быстро.👨‍💻

Если вы хотите увидеть, пример кейса полной оптимизации запроса с подробнейшим объяснением, то его можно приобрести ➡тут.😎 Ну или если вдруг вы хотите поддержать мой контент💲, тоже не обижусь😅
04/23/2025, 13:33
t.me/shust_de/149
Ну что...🙄

По итогу - вчерашний скрипт не отработал даже за 6 часов, а потом БД ушла в "transaction read-only" , и запрос конечно же упал🫠.

Это абсолютно нормальное явления для абсолютно неоптимизированных запросов. Поэтому принимаем жёсткое решение - его оптимизировать раз и навсегда.😎

В итоге - посидев несколько часов, рассматривая запрос и планы его выполнения, раскуралесив его на мелкие части, я пришел к тому, что мой запрос стал работать, 🎺пам-парам-пам🎺 — от 10 - 20 минут

Я считаю, у меня получился супер результат с учетом уменьшения времени в десятки раз.

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

Данный кейс поможет "вкатунам" или начинающим спецам понять, что такое оптимизация запросов, какой ход мыслей и размышлений при этом идёт. Видео получилось на 2 часа с объяснениями, понятиями и просто разговорами самим с собой.

Контент платный(через Tribute) и приобрести его можно здесь ➡️ по данным ссылкам: карта, звезды
04/21/2025, 12:40
t.me/shust_de/148
Ну что...🙄

По итогу вчерашний скрипт не отработал даже за 6 часов, а потом БД ушла в "transaction read-only" и запрос конечно же — упал🫠.

Это абсолютно нормальное явления, для абсолютно не оптимизированных запросов. Поэтому принимаем жёсткое решение, его оптимизировать раз и на всегда.😎

В итоге посидев несколько часов рассматривая запрос и планы его выполнения, раскуралесив его на мелкие части, я пришел к тому что мой запрос стал работать, 🎺пам-парам-пам🎺 — от 10 - 20 минут

Я считаю у меня получился супер результат с учетом уменьшения времени в десятки раз.

В итоге я записал один из возможных реальных кейсов, работы DE, связанный с оптимизацией запросов.

Данный кейс поможет "вкатунам" или начинающим спецам понять, что такое оптимизация запросов, какой ход мыслей и размышлений при этом идёт. Видео получилось на 2 часа, много было затрачено времени и нервов (у меня инет постоянно отрубался, еб*ный провайдер), поэтому данный контент будет платный.
04/21/2025, 12:17
t.me/shust_de/147
У меня запрос в GP крутится-вертится 4,5 часа. 😢

Не порядок...🤨 Нужно оптимизировать🤔

Когда-то меня попросили показать пример работы Инженера данных, вот как раз подробно разберу одну интересную задачку(запрос на 1000 строк кода)🥲 и заодно сможете увидеть🙂 сложность написания запросов.

Нужно не только теоретические видосы снимать, но и показывать эффективность методов на практике, так что ждите, сегодня сниму и в дальнейшем обязательно выложу сюда😝.
04/20/2025, 14:43
t.me/shust_de/146
⚡️Конвейер данных: путь данных от сбора до анализа

Знаете ли вы, что данные, прежде чем стать действительно полезными, проходят долгий путь? Он называется «конвейер данных» и в его работе принимают участие разные специалисты: дата-инженеры, дата-аналитики, BI-аналитики.

Об этапах этого процесса расскажет на вебинаре Павел Беляев — руководитель группы дата-аналитиков в компании Яндекс eLama и автор телеграм-канала.

Что разберем:
🟠Весь процесс работы с данными: от источников данных до получения выводов;
🟠Разберем методики сбора данных: ETL и ELT;
🟠Построение витрин данных;
🟠Визуализацию, которая помогает принимать эффективные решения;
🟠И наконец: как по результатам проделанной работы с данными делать максимально верные и полезные выводы.

Тема богатая, тянет на целый курс, но за вебинар можно получить общее понимание процесса.

🕗 Встречаемся 15 апреля в 18:30 по МСК

😶Зарегистрироваться на бесплатный вебинар
04/14/2025, 19:36
t.me/shust_de/145
#соБЕСики

🔖Вакансия: Data Engineer (Apache NIFI)
🔖Компания: ООО "Медиапоинт"
🔖Сколько просил: 300 тыс. рублей
🔖Месяц прохождения собеседования: Апрель 2025
🔖Формат работы: Удалёнка
🔖Оформление: ТК, ИП
🔖Требования вакансии:

⏺Опыт работы с Apache NIFI, как на отдельном сервере, так и в кластере;
⏺Опыт работы в командной строке Linux;
⏺Опыт работы с системой Docker;
⏺Опыт построения запросов на языке SQL;

🔖Стек:

Python, SQL (PostgreSQL, Clickhouse), NiFi, Kafka, AirFlow, Debezium, S3

🔖Этапы собеседований:

HR(5 минут)➡ Тех.собеседование(1 час)

🔖Процесс прохождения:

Как обычно созвонились с HRом, поговорили о вакансии и по сути сразу пригласил на техническое интервью.

На техничке поговорили о моём опыте, параллельно задавал вопрос - что да как, после чего уже перешли к полноценным вопросам собеседования. Вопросы задавались в течении 25-30 минут, большинство вопросов было по БД PostgreSQL, а потом перешли на Python.

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

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

Также поговорили в целом о задачах и команде. На данный момент в команде 3 ДЕ, плюс еще будут набирать человек. Много задач по интеграции данных с внешними источниками, исследовательские работы по хранению данных, так как задача к концу года — увеличить количество хранимых данных в 10 раз.

🔖Вопросы технического собеседования:

⏺Какой модуль в NiFi используется для JOLT преобразований?
⏺Как в Clickhouse устроена операция UPDATE?
⏺Как выдаются права доступа в PostgreSQL?
⏺Что делает утилита PGTune?
⏺Что такое нормализация?
⏺Какие типы индексов бывают?
⏺Чем отличается кластеризованный индекс от некалстеризованного ?
⏺Сколько у таблицы могут быть кластеризованных индексов?
⏺Есть ли ограничения на создание партицированной таблицы?
⏺Можно ли строить индекс по JSON полям?
⏺Чем отличаются типы данных JSON и JSONb?
⏺Чем отличаются материализованное и нематериализованное представления?
⏺Можно ли читать данные из материализованного представления, когда выполняется команда REFRESH?
⏺Как устроены система транзакций в PSQL?
⏺Какие блокировки существуют?
⏺Чем отличаются типы данных varchar от nvarchar?
⏺Как удалить дубликаты из таблицы?
⏺Какой объявить СТЕ? Можно ли в одной таблице применить несколько СТЕ?
⏺Что из себя представляет СТЕ?
⏺Можно ли в функции Python в качестве аргумента использовать функцию? Если да, то как называется такая функция?
⏺Как записывается декоратор?
⏺Можно ли на одну функцию нацепить несколько декораторов и как они будут считываться?
⏺функция, которая используется в качестве аргумента, может использовать свои аргументы?
⏺что такое декоратор Шредингера?
⏺что представляет из себя тип данных Int в Python?
⏺какая типизация используется в Python?

🔖Итоговое мнение:

В целом собеседование мне понравилось, руководитель чувствуется старой закалки, но с нормальным отношением к команде, (но это только моя чуйка). Даёт полное право планировать свой день, как хочешь, главное, чтобы задача была выполнена вовремя.

В целом я все расписал по данной вакансии и собеседованию, если кому интересно или просто захотите меня поддержать — аудиозапись собеседования будет в комментариях.
04/14/2025, 12:33
t.me/shust_de/144
⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️
Думаю многие задавались данным вопросом, особенно ребята которые в одной компании работаю по 2-3 года и им ни в какую не хотят поднимать ЗП.
04/12/2025, 19:11
t.me/shust_de/143
#ответошная

Поступил вопрос:
Гульжан, привет. Слушай у меня к тебе вопрос, как к HR'у. Допустим, есть 2 человека, один работает в компании уже год и у него ЗП 200к, берут второго на 270к, а первый — об этом узнает. Задачи и обязанности у них одни и теже. Первый приходит и просит поднять ему ЗП, и ему предлагают поднять на 30%, что будет составлять 260к — это человек который уже знает структуру проекта, поэтому хочет 300, но ему предлагают уволиться. А какая выгода для компании увольнять человека и нанимать нового допустим даже на те же 260, ведь компания больше потеряет на поиске нового сотрудника?

Первая часть моего ответа — пояснение тенденций рынка труда: 

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

Тут есть 2 стратегии, частые переходы и редкие переходы из компании в компанию: 
— при частых переходах, кандидат наращивает ЗП, но не всегда за ростом ЗП растет компетенция;
— при редких переходах (тут я имею в виду кандидатов, которые меняют работу не чаще, чем раз в 3 года), можно нарастить компетенцию, заперформить несколько крутых проектов внутри одной компании, прокачать скиллы так, что переход может дать и кратное повышение ЗП, и повышение в должности, и др (при редких перехода не забывай и про обратную сторону медали, риск погрязть в рутине, однообразных задачах, которые не увеличат капитализацию навыков).

Вторая часть моего ответа — разбор присланного кейса: 

Экономически компании выгоднее поднять ЗП первому сотруднику, т.к. первый может уволится с 2х недельной отработкой, следовательно, этот участок оголится и будет простаивать — а это упущенная прибыль. Плюс на это место будут искать сотрудника в вилке тех же 270-300+ тыс руб. в течение 1-3 месяцев, а может и дольше. Пока, сменщик вкатится в проекты, процессы и начнет так же перформить, как уволившийся сотрудник, пройдет еще не +/-6 месяцев. В итоге, компания заплатит больше, а эффективности будет меньше. 

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

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

Что касается первого сотрудника, если он идет на переговоры о повышении ЗП, то ему нужно быть готовым к получения отказа и увольнению, чего он судя по всему не ожидал в текущей ситуации. Потому что, если не HR'ы и не нанимающие менеджеры упираются рогами, то это может сделать СТО, СЕО, собственник компании, с мотивацией "я лучше переплачу, но не сдам свою позицию, и не позволю мне диктовать условия, я тут плачу, значит, я заказываю музыку".
04/12/2025, 19:06
t.me/shust_de/142
#соБЕСики

🔖Вакансия: Data engineer
🔖Компания: Wildberries
🔖Сколько просил: 270 тыс. рублей
🔖Месяц прохождения собеседования: Апрель 2025
🔖Формат работы: Офис\Гибрид\Удалёнка
🔖Оформление: ТК
🔖Требования вакансии:

⏺Разработка новых и оптимизация существующих ETL-процессов
⏺Разработка и сопровождение сервисов, компонентов и процессов для потоковой и пакетной выгрузки данных из корпоративных систем в контур платформы данных
⏺Продвинутый уровень владения Python и SQL;
⏺Умение разрабатывать production-ready сервисы для деплоя в Kubernetes;
⏺Опыт применения концепций непрерывной интеграции и доставки (CI/CD)
⏺Опыт построения пайплайнов для потоковой и пакетной выгрузки/обработки данных
⏺Опыт оптимизации запросов и проектирования схем данных

🔖Стек:

Python/Go, SQL (ClickHouse, PostgreSQL), Kubernetes (K8s), Kafka

🔖Этапы собеседований:

HR(20 минут)➡️ Тех.собеседование(1,5 часа)

🔖Процесс прохождения:

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

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

Дальше в течении минут 50 решали задачки: две на SQL и одна на Python(в описании). Все решения делались по сути в текстовике на Яндекс_Код. Всё прошло гладко, разрешал спокойно гулить (я этим не пользовался), если что-то забыл. Если забывал ключевые слова, то спокойно спрашивал,что хочу сделать, и мы пропускали данное место, либо он подсказывал конструкцию. Идеология у него была такая - "Если ты знаешь, что хочешь сделать, ты это загуглишь за минуту". Очень сильно затупил на 2- ой задаче(так как вообще давно литкод не открывал), но спокойно собеседующий наводил на нужное решение(без прямых подсказок). А задачу на питоне я решил быстро, но неэффективно, и так как время поджимало, я просто словами(не без его помощи) объяснил, как это сделать эффективно.

Потом 20 минут рассказывал о задачах, с которыми придется сталкиваться. Ничего особо сложного в самой вакансии , много страшного написано, но на самом деле обычные задачи.

🔖Вопросы технического собеседования:

⏺Какие движки в ClickHouse знаешь?
⏺Как сделать таблицу распределённой в кластере?
⏺Принцип работы MergeTree движков, и как хранятся данные?
⏺Какие проблемы есть у движка ReplacingMergeTree?

🔖Итоговое мнение:

Собеседование было очень приятным, без лишнего давления. С интервьювером сразу нашли общий язык и чувствовалась товарищеская беседа. Узнал от него интересные факты о клике, что пошло мне только на пользу. Поговорили о проектах, с которыми работал + порешали задачки на SQL и Python, и всё это за 1,5 часа, а не за 5 этапов, как в некоторых компаниях(не буду показывать пальцем👉😵).
04/12/2025, 17:32
t.me/shust_de/141
Собеседование в WB
Полное видео прохождения собеседования
04/12/2025, 16:54
t.me/shust_de/140
video.mp4
04/11/2025, 16:02
t.me/shust_de/139
«Волки»: плюсы, минусы. Или как не ошибиться при выборе наставника.

Этим постом завершаю цикл ответов на вопрос «Накручивать ли опыт?». Предыдущие 2 сообщения читайте выше.

Напомню, «волки» — это каста ИТшников, которые топят за накрутку опыта, помогают с придумыванием легенды и подготовкой к собеседованиям.

Плюсы их деятельности:
1️⃣ популяризация менторства среди свитчеров* и младших грейдов, которым сложной преодолеть эмоциональный барьер и спросить совета у старших коллег;
2️⃣ популяризация взаимопомощи;
3️⃣ своеобразная первичная ячейка профсоюзной организации.

Минусы:
1️⃣ пропаганда обмана:
— из исследования знаем, что 29% кандидатов накручивали опыт при поиске работы — это относительный показатель (работодатели держат в уме, что на каждую вакансию треть откликнувшихся кандидатов скорее всего накрутило опыт);
— в сообществе «волков» сейчас 50К+ участников, по оценкам Минцифры в ИТ отрасли трудится около 1 млн человек, т.е. не меньше 5% рынка кандидатов «волки» — это уже абсолютный показатель (его работодатели тоже учитывают при подборе);
2️⃣ однобокая мотивация участников сообщества больше зарабатывать на нескольких работах, при этом необходимость прокачки профессиональных навыков остается в тени;
3️⃣ рекурсия обмана, см картинку, некоторые джуны, найдя работу накрутив опыт, следующим шагом накручивают опыт менторства и обучают других джунов разработке и поиску работы 😁 подробнее об этом кейсе читайте у Леси Набока.

Мой читатель спросит, «как же выбрать себе ментора, и не напороться на самозванца»?!

Очень просто:
1️⃣ развивайте в себе критическое мышление и не доверяйте всему и всецело, перепроверяйте информацию;
2️⃣ обратитесь за консультациями к 4-5 наставникам старших грейдов (сеньор, тимлид, техлид, хэд, С-level), не ограничивайте кругозор на одном менторе;
3️⃣ ищите наставников в разных источниках (тематические тг-каналы и сообщества, линкедин, хабр.эксперты, getmentor и др);
4️⃣ конспектируйте рекомендации и сопоставляйте друг с другом, направьте усилия по развитию на пересекающиеся рекомендации;
5️⃣ не стесняйтесь задавать вопросы в комментариях.

__________________
* свитчер (англ. switch) — это человек, который в осознанном возрасте решил поменять профессию.
04/08/2025, 13:52
t.me/shust_de/138
▶️ Простая оптимизация запросов в GreenPlum + кейсы▶️

Когда я только начинал работать, то вообще не понимал, для чего нужно оптимизировать запросы. И спустя полгода плотной работы с GP(и по совместительству с создания первого видео по GP) я понял, что без оптимизации далеко не уйдёшь.

Это видео поможет Вам на простых примерах понять, как именно стоит оптимизировать запросы и на что обращать внимание.

Если у тебя остались вопросы по GreenPlum, оптимизации, твоим кейсам и т.д., обязательно задавай их в гугл-таблице, либо в комментариях(я сам их перенесу). На них ответит Никита Целищев — один из авторов курса от ЯП по GreenPlum.

😘 Ссылка на видео.
😵 Презентация (Могли поехать шрифты, но думаю ничего страшного)

Бот для просмотра YouTube
@NamelessNetwork_bot

Промокод: DE
(FREE 2 недели)

Так же в боте можно приобрести роутер со встроенным "ускорителем" YouTube на всех домашних устройствах по единой подписке.
04/06/2025, 22:37
t.me/shust_de/137
Привет) может кто помочь с Trino, iceberg(nessie catalog)?
Данные лежат в s3 в паркетах. Как можно создать таблицы, чтобы эти данные в них появились ?
04/02/2025, 11:42
t.me/shust_de/136
Кто работал с данным стеком, помогите!🙏

⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️
04/02/2025, 11:42
t.me/shust_de/135
На этой неделе на канале выйдет годнота💪 по простецкой оптимизации запросов в СУБД GreenPlum без всяких заумных файловых дескрипторов и ассемблеров(кто в теме тот в теме😁).

Что не мало важно, будет с десяток различных кейсов на основе, которых вы и поймете, что оптимизация запроса достаточно важная штука (особенно в GP), без которой ваши запросы будут крутиться долго и упорно!👨‍💻

Еще с того года планировал видос и вот настало его время))😂
04/02/2025, 00:13
t.me/shust_de/134
#соБЕСики

🔖Вакансия: Data engineer
🔖Компания: BNPL сервис
🔖Предполагаемая вилка: 300-390 gross
🔖Месяц прохожденияa собеседования: Март 2025
🔖Формат работы: Офис\Гибрит\ Фулл. удалёнка с любой точки
🔖Оформление: ТК, ИП, ГПХ
🔖Требования вакансии:

⏺SQL на хорошем уровне;
⏺Построение DWH;
⏺Хорошее знание Python;
⏺Умение работать с AirFlow;
⏺опыт настройки и использования Apache Kafka, знание Avro формата;

🔖Стек:

GreenPlum, PostgreSQL, AirFlow, NiFi, S3? .

🔖Этапы собеседований:

HR)➡️ Тех.собеседование по технологиям➡️ Тех.собеседование по (вся команда)

🔖Процесс прохождения:

Начну с офигенного разговора с HR. Я еще ни разу так не кайфовал от общения с рекрутёром, мы после обсуждения опыта и вакансии, начали разговаривать на разные темы найма и всего остального. Сразу видно, что общаюсь с грамотным специалистом, плюс ко всему оказалось, что она ведет свой канал, и мне очень понравился у нее пост. Советую к прочтению, и даже очень хочу с ней провести какой-нибудь стрим на тему трудоустройства в IT.

Теперь переходим к техсобесу. На нём присутствовала вся команда. В общем и целом - каждый спросил у меня какой-либо вопрос. Очень много вопросов было по моему опыту, и как я решал те или иные задачи. Из команды уходит сотрудник, который поддерживал у них всю архитектуру построенную на NiFi, поэтому ищут спеца, который будет продолжать его поддерживать. Хотя в вакансии написано только о теоретических знаниях данного продукта. Также спрашивали об оптимизации запросов и пару вопросов задали по AirFlow.

Дальше уже я спросил, как у них устроена архитектура, на самом деле ничего сложного: стрим через NiFi, батч грузят через AirFlow, хранилище построено на GreenPlum в облаке, там же строятся витрины с помощью DBT и транслируются в PostgreSQL, где с данными проводится полноценная аналитика.

Еще должен быть этап по архитектуре, но думаю меня туда уже не позовут.😅

🔖Вопросы технического собеседования:

⏺Какие процессоры использовали в NiFi?
⏺Настраивали ли схемы, если да, то в каких модулях?
⏺Как считать данные из каталога?
⏺Зачем при считывании CSV файлов данные переводили в AVRO формат?
⏺В случае сбоя одного сервера с NiFi - как его перезапустить?
⏺Чем Атрибут отличается от Контекста?
⏺Теряет ли данные NiFi, если произошел сбой программы?
⏺Расскажи о логировании в NiFi?
⏺NiFi работает в кластере и считываем данные из кафки, один из серверов сгорает, и мы теряем данные, как повторно обработать потерянные данные?
⏺Таска в AirFlow упала с ошибкой, как сделать так, чтобы не смотря на ошибку, следующая таска запустилась?
⏺Как в AirFlow в зависимости от условия, продолжить обработку по нужной ветки ДАГа?
⏺Как оптимизируется запрос?
⏺Как эффективно удалить дубликаты строк в большой таблице?
⏺Что будет делать, если в плане запроса увидели Nested Loop?

🔖Время прохождения собеседования:

1,5 часа(разговорились о всяком) + 1 час

🔖Итоговое мнение:

В общем и целом - такой рекрутёрский созвон я никогда не забуду, это прям эталон всех созвонов. А техсобес прошел- тоже приятно, никто на меня не давил, все общались на одном уровне, очень много говорили о реальном опыте работы. Поэтому кто шарит за NiFi... Welcome. Контакты для связи в приложении.

Кстати, ребята собираются уходить со временем от NiFi, так как проблематично найти спеца.😅
03/30/2025, 18:58
t.me/shust_de/133
⚡️Разбираем тестовое задание в Альфа Банк на позицию Junior Аналитика данных

Чтобы найти работу, мало пройти курс и сделать классное резюме. На практике, чтобы выделиться на собеседовании, нужно понимать, что лежит под капотом каждого инструмента, а не следовать конкретному заученному алгоритму.

Чтобы попрактиковаться в этом, приходите на бесплатный вебинар, где будем разбирать реальное тестовое задание, которое дают аналитикам в Альфа Банке.

Что будем делать на вебинаре:
🟠Напишем сложные SQL-запросы для банковских данных;
🟠Вспомним, как правильно использовать оконные функции;
🟠Узнаем, как создавать разметку, из чего она состоит и для чего она нужна;
🟠На реальных данных проведем когортный анализ и сделаем выводы;
🟠Расскажем, как доставать инсайты из данных.

Вебинар проведет Денис Иванов, ведущий продуктовый аналитик

😶Зарегистрироваться на бесплатный вебинар
03/27/2025, 15:59
t.me/shust_de/132
‼️Ребят, для тех кто знал – напоминаю, для остальных объявляю‼️

Женя, 23 марта в 20:00, собирается провести стрим в формате общего созвона, где он соберёт концептуальную схему своего видения "идеальной" архитектуры хранилища с минимальными количеством фреймворков.

Данный стрим будет полезен начинающим специалистам, а если вы уже бывалый, то вас приглашаю подискутировать с Евгением по поводу его схемы.

Подробности можете почитать у него в его посте. Лично я обязательно поучаствую в данном мероприятии, возможно даже задам свои вопросы. Так что приходите точно не пожалеете!

По инсайдерской информации в дискуссии будет участвовать Алексей Разводов с большим опытом работы в ДЕ и возможно еще много разных и опытных Дата Инженеров.
03/22/2025, 19:31
t.me/shust_de/131
Коллеги из "Сравни" объединили мои видосы "Вопросы прохождения собесов по SQL" в единую статью на Хабре.🧑‍🎓(Теперь я останусь в истории на Хабре)

Как показывает практика основы спрашивают как у джунов, так и у сеньоров. Поэтому буду рад вашим комментам, реакциям и всему остальному. Перед собесами повторить самое то...👍

Да и в целом у Sravni Tech годный контент, так что загляни, может тебя что-то зацепит.🫢
03/20/2025, 12:08
t.me/shust_de/130
Стата по моим офферам

Довольно многих волнует тема офферов, поэтому я тут поделюсь своей историей

🪐Разделим последний год на 2 hr-кампании, когда я осознанно хотела пособеситься. Каждая кампания длиной примерно 2 месяца:

1️⃣ лето: 02.07 - 06.09
2️⃣ зима: 23.12 - 12.02

➡️ Первая hr-кампания меня сильно прокачала в плане проведения собственных собесов и научила не быть слепым котеночком. Иногда я ставила даже 2 собеса в день, и моя энергия скатывалась куда-то в минус

➡️ А в зимний период я понимала, что может быть сложно начинать. Но мне сказали, что бюджеты все равно закладываются заранее, так что по сути в начале года ничего не мешает начинать найм

☕️ Итак, смотрим на графички. Не поленилась, прошлась по всей стате на hh и по всем перепискам в мессенджерах😁 Возьмем оранжевую линию за основу - это те вакансии, которые были мне интересны. Конверсия в оффер получилась 8/15 = 53% vs 1/21 = 4,7%. Т.е. зимняя hr-кампания отработала в 11 раз хуже летней. Возможно, с весны эта ситуация меняется? Но я не уверена

👩‍💻 Также есть качественная разница в уровне компаний. Если летом мне писали отсюда:
CIAN
Альфа
МТС
Magnit
Лента

То зимой конкретно все поменялось:
Quickly Search
WMT Group
ИЦ АЙ-ТЕКО
Datanomica
Trinity Monsters

🗓️ Средняя длительность hr-процесса получилась 10 дней летом vs 18 дней зимой (зааффектили нг каникулы). Включала компании, от которых я получила ОС по итогам собесов, и исключила выброс в виде яндекса - там 63 дня на 3 этапа 👍

Прокомменчу 3 других отказа зимой:
Касперский - двх на MS SQL🙂 и я была просто антиметчем их вакансии
Билайн - искал топового скалиста🙂
Авито - завалилась на алгосах с NP-полной задачей🙂

🎤 В итоге я пришла к таким выводам:
- хоть и количество просмотров увеличилось
- но очень много интеграторов, и общее качество компаний упало
- отклики на hh не работают (почти), в большинстве пишут сами и поэтому заинтересованы больше, чем если откликаться самому

Было страшно подавать заявление, понимая, что на рынке вот такая ситуация, выходить только через месяц, а у меня единственный оффер на руках

🎤 Есть кто сейчас в процессе поисков, какие ощущения?
03/18/2025, 20:03
t.me/shust_de/128
Вот и настало второе видео из цикла "Поиск работы в IT без опыта работы".

Сразу извиняюсь, что затянул с этим видеороликом. Переезд и трудности на работе дают о себе знать.🤯

Если вкратце, то за февраль я откликнулся на более чем 100 вакансий👨‍💻, ко мне пришло 10 рекрутеров. Потом был приглашен на 4 технических собеседования. 3 собеседования я прошел🥲 и даже по сути получил оффер (не захотел отправлять заявку в службу безопасности).

Лопнул ли IT пузырь — решать только вам, но, по мне, как я искал год назад работу, так же без каких-либо проблем я нашел бы её и сейчас, даже не имея никакого опыта. Полтора месяца — и оффер оказался у меня в руках. Никого не слушайте и полагайтесь исключительно на свой опыт, прохождения собеседований.

Даже хочется спросить: крутить "релевантный" опыт или крутить знания? Не знаю, как вы, но мне после получения оффера нравится второй путь! Но на этом эксперимент не заканчивается, посмотрим, что будет в следующих месяцах!🤔

Всем добра и лёгкого оффера!😋

😘Итоги второго месяца уже здесь!😘
_______________________________
Бот для просмотра YouTube
@NamelessNetwork_bot

Промокод: DE
(FREE 2 недели)

Так же в боте можно приобрести роутер со встроенным "ускорителем" YouTube на всех домашних устройствах по единой подписке.
03/16/2025, 01:52
t.me/shust_de/126
Ребят, хочу извиниться, вообще не хватает времени на то, чтобы клепать посты⛔️.
Откладывал проблемы с переездом до последнего, и в итоге прошлый Я кайфовал от беззаботной жизни🏖, а нынешний Я страдаю🤯, так как уже 2 недели после работы, перевожу вещи и готовлю к сдаче служебное помещение.

Сейчас нужно менять прописку, проводить интернет, устраивать ребёнка в садик, закрывать ИП и переоформляться по ТК и многое другое.😨😨😨

Многие вещи за начало марта я уже сделал, но осталась ещё куча всякой херни, которую я отложил на потом.🥲

Перемены в жизни - это конечно хорошо, но ценник у них слишком высокий. А чтобы его уменьшить — не откладывайте на завтра, что можете сделать сегодня.🥶

Всем добра, не теряйте, на этой неделе я обязательно подведу итоги своего эксперимента — "как с нуля вкатиться в IT" за февраль. Так что, до скорого, всё будет но не сразу!💪
03/11/2025, 18:09
t.me/shust_de/125
#реклама
10 марта стартует 16-й поток программы Data Engineer от Newprolab

Для начинающих DE (до 1 года опыта) и тех, кто хочет погрузиться в дата-инжиниринг на практике: аналитиков, бэкенд-разработчиков, менеджеров.

📅 8 недель (10 марта – 30 апреля):
・20+ занятий в Zoom (3 раза в неделю)
・8 лабораторных работ в облачном кластере
・Чат с участниками и поддержка

🔥 Что даст программа?
1) научитесь решать типичные задачи DE и реально станете дата-инженером на время программы
2) структурируете ваши знания и познакомитесь с новыми инструментами
3) поработаете с облачным кластером для решения лаб с реальными данными
4) видеозаписи и другие материалы программы останутся у вас навсегда

🎓 Преподаватели – практики из топовых компаний

🏆 70% успешно проходят программу и получают сертификат!

💰 По промокоду DE2025 предоставляется скидка 15%. Есть рассрочка

Узнать подробности и записаться
03/07/2025, 10:00
t.me/shust_de/124
Приятно получать такие сообщения от всех кто реально смотрит RoadMap и тем более им вдохновляется, как Сергей. 🧑‍🎓

Он сделал крутую тему💪, до которой у меня и Жени не доходили руки😨. Так еще и БЕСПЛАТНУЮ!!!!! Он замутил офигенный проект в виде песочницы из разных ДЕшных инструментов. Ну что может еще вам не хватать, чтобы вкатиться в ДЕ?😡

Да штука требовательная🍗, но за то какая👨‍💻! Описание прям огонь, просто для таких же тупых, как я.

Переходите, скачивайте и делитесь вашим мнением. А Сергею желаю двигаться только вперед и расширять свою песочницу!👍
03/06/2025, 21:57
t.me/shust_de/123
Добрый день,
Ваш HalltapeRoadmapDE вдохновил меня на создание песочницы где будут собраны и настроены все технологии которые вы там перечисляете.
И сегодня я закончил собирать эту песочницу, удалось почти все.
Если это будет полезно, то поделитесь со своей аудиторией: https://gitflic.ru/project/ananevsyu/sandbox_db_public
03/06/2025, 21:48
t.me/shust_de/122
😡Как же бесит....😡

Постоянно забываю😨, как сделать виртуальную среду в Python. Поэтому напишу пост, чтобы больше не забывать, так как делать тут нечего. Еще я с сегодняшнего дня обладатель Mac, да в целом и на Винде делал все это через Git Bash, поэтому команды будут именно под них.

Объяснения для таких же тупых и страдающих деменцией, как Я🫠:

Команда 1 — создание виртуального окружения:

./Intrpritator/3_11/python -m venv .venv
⏺ <./Intrpritator/3_11/python> — Путь к нужной версии - интерпретатор. Можно просто указать python, если у вас используется интерпретатор по умолчанию.
⏺ <.venv> — каталог с виртуальным окружением. Поддерживает относительные и полные пути.

Команда 2 — подключаемся к окружению:

source ./.venv/bin/activate

ВСЁ, ябошим👨‍💻! Прокидываем переменные среды, устанавливаем нужные библиотеки и всё такое🧑‍🎓....

И это я забываю каждый раз, когда сталкиваюсь с этой темой.😨

С этой темой придется сталкиваться на проектах. Особенно, если у вас есть несколько репозиториев, и на одном используется 11 версия, на втором 9, а хер знает почему, но не Вы это делали, но Вам это поддерживать.

Всем добра, а я пойду глицинчика пропью🥲, чтобы деменцию не ловить.
03/03/2025, 21:07
t.me/shust_de/121
Всем привет!

Запускаю снова моего бота. Определим в каких компаниях какие вилки.

Пройти опрос: @Get_RejectedBot

Опрос будет проводиться пару дней. После подведу итоги.
Должность указываем любую: (DE/ MLE/Product Analyst and DS)
Зарплата на руки - ваш среднемесячный доход с учетом премии

Финальный ответ должен быть: "Спасибо за участие в опросе!"
Для прохождения опроса по новой нужно restart нуть бота.
(/start)

Результаты будут анонимные:
1. В случае если по одной компании будет менее 3 анкет, то результат будет учтен только в средней по рынку.
2. В случае набора более 3 анкет по компании, будет сформирована вилка от и до.

Просьба сделать репост записи в другие сообщества для изучения ИТ рынка.
03/01/2025, 13:29
t.me/shust_de/120
❓Топ вопросов на собеседовании по Базам Данных - Часть 1

Легенда вернулась❗️

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

Всё, что нужно для успешного прохождения собеседования на Инженера данных тут.

😘 Ссылка на видео.
😵 Презентация. (Могли поехать шрифты, но думаю ничего страшного)

Бот для просмотра YouTube
@NamelessNetwork_bot

Промокод: DE
(FREE 2 недели)

Так же НОВИНКА, в боте можно приобрести роутер со встроенным "ускорителем" YouTube на всех домашних устройствах по единой подписке.
02/27/2025, 18:50
t.me/shust_de/119
Не смог пройти мимо поста Жени. Пусть оно теперь и тут побудет))

Если бы Шаман был Дата Инженером

Скоро на всех федеральных каналах
автор: @SAFARR91
02/25/2025, 23:29
t.me/shust_de/118
Дата Инженер.mp3
Если бы Шаман был Дата Инженером

автор: @SAFARR91
02/25/2025, 23:29
t.me/shust_de/117
Ответ не дал себя долго ждать. 😳

Говорили, что придут через неделю, а в итоге на следующий день написали, чтобы я отправлялся проходить следующие этапы(СБ и полиграф).😖

Я нашел работу по резюме без РЕЛЕВАНТНОГО опыта(только учебный) в течении полутора месяцев.😇

И даже не знаю, продолжать ли мне цикл данных видосов🤔, так как их цель была пройти HR-скрининг и попасть на техсобес с нулевым резюме, а в итоге я перевыполнил план и получил оффер.🇷🇺

Вывод: в нынешних реалиях на 2025 год, если у Вас нет реального DEшного опыта, пишите учебный, оформляйте Ваше резюме — структурировано, ставьте на него 2 года опыта, и Вас обязательно позовут на собеседование! 😎

А я, как и этот котик👋, желаю удачи в обучении и поисках!🧑‍🎓
02/25/2025, 14:46
t.me/shust_de/116
#соБЕСики

🔖Вакансия: Business Data Engineer / Архитектор данных
🔖Компания: ПАО «Промсвязьбанк»
🔖Предполагаемая вилка: просил 130-150 на руки, по ощущениям ищут джун+\мидл на вилку 180-250
🔖Месяц прохождения собеседования: Февраль 2025
🔖Формат работы: Полный офис
🔖Требования вакансии:

⏺Знание SQL (один из PostgreSQL, MS, Oracle), опыт оптимизации запросов;
⏺Опыт разработки кода загрузки и трансформации данных;
⏺Знание MPP технологии, типовой инфраструктуры DWH;
⏺Опыт подготовки документации (БТ, ФТ, ТЗ);

🔖Стек:

MSSQL, GreenPlum, Clickhouse, SSAS, Super Set, Loginom.

🔖Этапы собеседований:

HR➡️ Тех.собеседование(TeamLead, Senior)

🔖Процесс прохождения:

Собеседование началось с того, что руководитель рассказал, что им требуется Инженер Данных на подмену нынешнему. Работа с ненормированным рабочим днём(+ 3 дня к отпуску), но с его слов- "Работа с 9 до 18, задерживать никого не люблю". Испытательный срок оплачивается (3 месяца). И поговорили о моем опыте и резюме. Почему-то он в него смотрел и спрашивал-вписан ли мой учебный опыт в трудовую🤷‍♂️. Где мне пришлось объяснять что и как. Дальше мы перешли к техническим вопросам с сеньором, а руководитель отключился.

Во время тех.собеса было дано решить 3 задачи(по ним будут отдельные видео на Ютубе в виде Shorts'ов, но сделаю, когда соберусь окончательно с мыслями, пока ленюсь🏖), все 2 задачи узнал с leetcode, 3-я была для меня незнакомая, но думаю тоже оттуда. Он сначала просил объяснить, как буду решать, дальше нужно было написать код. Задачи были простые. Если допускал ошибку в написании конструкций - не гасил, сказал, что если не помнишь, как правильно пишется, ничего страшно, так как это всё гуглится 1 секунду, важны были именно рассуждения. По ходу решения задач были дополнительные теоретические вопросы, а между задачами он рассказывал, чем придется заниматься.(60% задач — поддержка песочницы, 40% задач — миграция с MSSQL на GreenPlum, ClickHouse). Как таковых теоретических вопросов не было, был вопрос - "Расскажи всё, что знаешь о базах данных", где я начал перечислять всё, что знал, когда учился на ДЕ.(Как хранятся данные, патриции, дистрибуция, уровни изоляции, версионность, блокировки, логическая и физическая репликация, грубо говоря смотри RoadMap)

🔖Вопросы технического собеседования:

⏺Чем отличается DENSE_RANK от RANK?
⏺Расскажи какие слои есть в хранилище данных?
⏺Чем в хранилище ODS слой отличается от DDS слоя?
⏺Расскажи всё, что знаешь об индексах?
⏺Чем колоночные БД отличаются от строковых?

🔖Время прохождения собеседования: 1,5 часа.(30минут с руководителем + 1 час техсобес)

🔖Итоговое мнение:

Само описание вакансии странновато, но сам собес был абсолютно адекватным, прям не нужны были сверхзнания, но искали людей, которые умеют решать задачки. Нормально и адекватно поговорили. Единственно, что меня смутило в этой вакансии — это ненормированный рабочий день (насколько можно верить руководителю, что я не буду перерабатывать) + только фуллофис + нужно пройти полиграф для трудоустройства. А так вообще всё адекватно, сеньор не валил, и нормально пообщались.

Жду обратки, даже интересно, что скажут😅
02/24/2025, 16:23
t.me/shust_de/115
⚠️Давно не рассказывал о классных штуках, время пришло⏰.

Я раcскажу вам о классном👍 форматере SQL-кода SQLFmt.

Если у вас в компании есть проблемы с соблюдением стандартов форматирования SQL-кода, и вас бесит🤬, что каждый сотрудник пишет код в своем формате, то эта тема 💯 для вас.

Данный форматер устанавливается очень просто, с помощью команды:

pip install shandy-sqlfmt[jinjafmt]

А чтобы отформатировать код необходимо выполнить ну просто "нереальную🤯" команду в терминале(боюсь не каждый с ней сможет справиться, но всё же) :

sqlfmt <путь к sql файлу>

Прелести данной фичи:

🟢Можно накатить CI\CD на деплой, чтобы избавиться от кода противных людишек, которые пишут код в 1 строку;
🟢Поддерживает синтаксисы разных Баз Данных, в том числе и ClickHouse(но для неё нужно установить дополнительный плагин);
🟢Поддерживает Jinja код, поэтому для тех, кто использует DBT, вообще актуальная тема;
🟢Ну и конечно, самое главное — единообразие форматирования кода(примеры на скринах).

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

‼️Как-то так, не будьте плохишами и пишите код красиво и понятно!👨‍💻
02/22/2025, 14:57
t.me/shust_de/113
🚨Мой совет начинающим и вкатывающимся IT-спецам на 2025 год - чаще посещайте тематические мероприятия! 🚨

Что может быть круче для начинающего спеца по Data Science, Data Engineering и Data Analytics, чем нетворкинг, где можно встретить более опытных коллег, которые помогут на старте пути, или даже потенциальных работодателей?

💡Друзья подсказали отличный телеграмм канал — IT-мероприятия России, где уже собрали все самые топовые события в одном месте: анонсы форумов, конференций, митапов, вебинаров, хакатонов, олимпиад.

Там запросто можно познакомиться с тимлидами напрямую, минуя HR-ов и бесконечные собеседования. Кроме того, там много мероприятий по разработке, информационной безопасности и другим отраслям. Думаю, каждому из вас будет интересно.

➡️ подписываемся и сохраняем: IT-мероприятия России / ITMeeting / IT events
02/19/2025, 09:59
t.me/shust_de/112
#соБЕСики

Хочу официально заявить, что данным форматом я вдохновился у многоуважаемого мною человека, который ведет свой канал "Get Rejected", а так, как он уважаемый не только мною, советую подписаться. Там прям ограменная куча собесов и не только по РФ. 👍

А теперь к собесу.

🔖Вакансия: Администратор linux (junior)
🔖Компания: «Цифра брокер»
🔖Предполагаемая вилка: неизвестно, просил 130-150 на руки, думаю они ищут бесплатных рабов.
🔖Месяц прохождения собеседования: Февраль 2025
🔖Формат работы: Полный офис
🔖Требования вакансии:

⏺Высшее образование, релевантный опыт от 3 лет;
⏺Опыт администрирования Linux;
⏺Знание сетевого стека TCP/IP, понимание принципов работы VPN;
⏺Понимание принципа работы HTTPS;
⏺Общее понимание BigData и Hadoop;
⏺Понимание принципа работы криптографии, опыт работы с СКЗИ;

🔖Стек:

Linux, bash/ansible, nginx/apache, php-fpm, mysql/postgresql, squid, docker

🔖Этапы собеседований:

HR➡️ Тех.собеседование(TeamLead, Senior, HR)

🔖Процесс прохождения:

Изначально я офигел с того, что меня вообще пригласили на данную вакансию, и HR сам нашёл фейковое резюме(о нём я рассказывал в этом видео), где про Администрирование Linux написано от слова — НИЧЕГО.🤷‍♂️

Но коль позвали, почему не сходить ради прикола.

Всё началось с того, что TeamLead сходу попросил рассказать о своём опыте Администрирования Линукс систем. (Тут я понял, что моё резюме вообще мимо него прошло). Ну соответственно я рассказал, что я вообще хочу быть ДЕ, и понеслись вопросы по Базам Данных, но после 15 минут разговора про PSQL, он сказал, что БДшников нам хватает, поэтому перейдём к Администрированию. И начал гонять меня по БАЗЕ. Я прям угарал с него, так как ему было необходимо отвечать, как написано в книгах Таненбаума "Компьютерные сети" и "Операционные системы", и он раз 5 сослался на них. Он без шуток спрашивал определения, как написаны в книгах. Короче, он люто токсичный чувак, и даже если бы мне пришёл оффер, ни за что к нему бы не пошел работать.

Потом подключился Senior и он уже был намного мягче, даже шутки закидывал, но он прям понял, что в DevOps стеке я не шарю вообще, и гонял меня более приземлённым вопросам, с которыми сталкиваются и ДЕшники, а TeamLead постоянно его перебивал на полуслове и вставлял свои вопросы.

В конце TeamLead меня вообще убил (когда я сказал, что у меня знания только на уровне пользователя), сказав: "У Вас вообще и одного процента знаний в Линукс системах нет. У нас Джуны работают по 2-3 года, ежедневно решая ультра задачи, и они не могут перейти на мидлов, так как они не знают многих аспектов Линукс систем".

🔖Вопросы технического собеседования:

⏺Как посмотреть все подключения к БД?
⏺Для чего нужна constraints?
⏺Какие индексы бывают?
⏺Что хранится в B-tree индексе?
⏺Чем контейнеризация отличатся от виртуализации?
⏺Вы нажимаете кнопку включения, что происходит в компьютере. Расскажите весь путь от нажатия до входа в ОС.
⏺В браузере открыто 3 окна и выполняется 3 одновременных запроса. Почему запрос из 2го окна не приходит в 1е окно.
⏺Что такое Ansible и для чего он нужен?
⏺Что такое Nginx и как он работает?
⏺Какой порт у SSH? как подключиться по SSH без пароля?
⏺Как подключиться к командной строке LInux из ОС Windows?
⏺Для чего нужен Git? С какими командами работал? Настраивал ли Ci\CD в Git Action?

🔖Время прохождения собеседования: 45 минут, но если бы я знал DevOps'овские механизмы, то было бы гораздо больше

🔖Итоговое мнение:

Это был душный собес из-за TeamLead'а. И в целом вся компания(по моему мнению) лютая галера, иначе я не понимаю, почему люди работают по 2-3 года , и они еще Джуны. Это просто TeamLead — БАЗА!!! А так все прошло быстро, все поняли, что у меня знаний нет в этой области, просто в конце попрощались, но меня переспросили готов ли я работать фуллтайм офис. К чему бы это?🤔 Но в любом случае, очень токсичная атмосфера. И что мне еще непонятно, сама вакансия на джуна, но требуется 3 года релевантного опыта. По мне это жесть какая-то.

Если тут есть сисадмины и девопсы, хотелось бы узнать Ваше мнение по поводу данной вакансии.
02/18/2025, 15:35
t.me/shust_de/111
У меня подгорело🤯.

Короче, я уже ни раз говорил, что у меня есть резюме с нулевым опытом работы, и прикол в том, что я вставил в него 2 года УЧЕБНОГО опыта(чтобы проходить фильтры) и написал об этом в самой первой строке своего резюме. О резюме я рассказывал в данном видео.

И к чему же это я всё? Сегодня мне написала HR. Я не откликался на данную вакансию, она сама нашла моё резюме и сама написала мне. И знаете, что она у меня спросила?😳

Трудоустроены были официально по ТК РФ(Совпадают ли записи в трудовой книжке с указанным опытом работы в резюме?)/ИП/ГПХ или как самозанятый?

🤬🤬😨АААААААААААА😨🤯🤯

Первая строчка, которую видят все HR'ы о последнем месте работы:

2 года обучаюсь на профессию Инженер данных, последние полгода обучаюсь под руководством ментора.

А последняя фраза меня вообще убила на повал:

я уточню у коллег, мы рассматриваем кандидатов с минимальным опытом

Ну прям смешно, ты меня сама нашла и даже не прочла моё резюме. Жестььь... И сколько вас таких не читающих, а только смотрящих на цифру. Обязательно об этом случае расскажу в февральском видосе, мимо него этот случай точно не пройдёт.

Что думаете о сей ситуации?
02/13/2025, 12:46
t.me/shust_de/109
#соБЕСики

🔖Вакансия: Data Engineer
🔖Компания: "Сбер для экспертов"
🔖Предполагаемая вилка: неизвестно (просил 150 на руки, но думаю до 260 просить можно)
🔖Месяц прохождения собеседования: Февраль 2025
🔖Формат работы: Полный офис на Кутузе
🔖Требования вакансии:

⏺Знание SQL на уровне разработчика;
⏺Опыт работы с Jira и процессами DevOps;
⏺Опыт разработки витрин данных в АС Greenplum или похожих СУБД (Teradara, Oracle, SAS EG и др.);
⏺Опыт работы с ETL-инструментами (Informatica PC, Oracle Data Integrator итд.);
⏺Общее понимание BigData и Hadoop;
⏺Опыт разработки и общее понимание процессов с точки зрения архитектуры;
⏺Понимание методологии Agile.

🔖Этапы собеседований:

HR➡️ Интервью + Тех.собеседование(TeamLead, TechLead)

🔖Процесс прохождения:

HR сам меня нашел на резюме с учебным опытом работы(о нём я рассказывал в этом видео). Без какого-либо созвона сразу предложил встретиться с лидами.

На созвоне спросили- кто такой, про опыт(которого у меня нет по легенде), начал рассказывать, что учусь 2 года и т.д. Рассказали о проекте и что данная вакансия больше уходит в разработку, так как у них сейчас проект сделать какую-то офигенную штуку в jupiter notebook, которая будет "волшебным" образом делать всё, что захотят аналитики.(Скажу честно говорили об этой фичи на очень высоком уровне, что я даже не понял, что нужно делать вообще). Могу сказать точно, что с описанием вакансии их ожидания вообще никак не связаны. Витрины, хранилища и всё такое, это не про данную вакансию.

🔖Вопросы технического собеседования:

⏺Что такое Hadoop и из каких компонентов он состоит?
⏺Что такое YARN?
⏺Для чего нужен Apache Oozie?
⏺Что такое Hive и объясни, как он работает с данными?
⏺Что такое Spark?
⏺Объясни парадигму MapReduce и почему Spark пришел ей на замену?
⏺Как работает HSFD? Для чего нужна NameNode, Secondary NameNode? Нам необходимо считать текстовый файл из HDFS, объясни, что будет происходить?
⏺Что такое фактор репликации в HDFS и для чего он нужен?
⏺Для чего нужен Hive?
⏺Что такое партиционирование и что оно из себя представляет в Hadoop?
⏺Что делает Shuffle в Spark? Между чем передаются данные?
⏺Как передать UDF?

После этого была устная задача на Spark:

⏺Есть таблица, в ней могут быть любые данные (пропущенные, повторяющиеся строки и т.д.), необходимо каждую строку пронумеровать уникальным идентификатором вне зависимости от данных, которые находятся в этой строке.

🔖Время прохождения собеседования: 1 час (5 минут я рассказал о себе + 10 минут о проекте + 45 минут техническая часть)

🔖Итоговое мнение:

Данное собеседование проходилось в рамках цикла видео "Поиск работы в IT без опыта". Собеседование вообще не понравилось. Чисто долбили в связку Hadoop и Spark, при этом в самой вакансии про Spark в требованиях ничего не сказано ("общее понимание BigData и Hadoop"). При этом про GreenPlum и другие БД вообще не спрашивали, хотя они в требованиях есть. В любом случае, как первая работа зашла, при условии, если Вы ответили все четко. Все данные вопросы, за исключением устной задачи, рассматриваются в 2х следующих видео: Hadoop, Spark.

Бот для ускорения просмотра YouTube:
@NamelessNetwork_bot

Промокод: DE
(дополнительные 2 недели бесплатно)
02/12/2025, 13:02
t.me/shust_de/107
🚨Для тех кто хочет вкатиться в профессию Инженера данных или Аналитика DWH — внимание🚨

Инфа, актуально в большинстве своём для "вкатунофф"!😅

Мне много кто уже писал следующую фразы:
- "Жаль, что я наткнулся(ась) на ваш RoadMap уже после покупки курсов..."
- "А есть ли у тебя менторство?"

Для лучшей индексации нашего роадмапа, решил записать для вас видео, где я по полочкам прошёлся по каждому пункту, плюс показал формат менторства, которое было у меня и того чего мне изначально не хватало в платном курсе который я проходил, когда хотел стать "Аналитиком данных".

По вопросам менторства пишите в личку😇
02/10/2025, 20:15
t.me/shust_de/106
🔔В продолжение прошлого кейса хочу рассказать вам, с какой задачей пришлось столкнуться.

Смыл задачи был такой: необходимо перенести таблицу из одной базы данных(SnowFlake) в другую(GreenPlum).

И вроде как, ничего сложного, выгружаем данные из БД в ДФ, и с помощью функции "df_to_db", описанной в прошлом кейсе, заносим в GreenPlum.

И я не могу с вами не согласиться, тем не менее, есть одно НО — таблица в жатом виде весит 2Гб (>26млн. строк). А оперативная память-то у нас не резиновая! Для такой таблицы не хотелось стряпать всякие PXF или gpfdist (тем более в облаке его сделать нельзя, так как нет доступа к самому серверу). А еще, из-за проблем с GP, не хотелось, чтобы запрос упал и транзакция откатилась.

Было принято решение "разделять и властвовать", но как правильно разделить, чтобы хотя бы данные равномерно были в каждой batch'е, так еще и автоматизировать весь процесс. Не буду долго размусоливать (я благодарен Александру, за то, что рассказал о таком способе), но данный процесс, легко решается с помощью "остатка от деления".

count_parts = 10
for i in range(0, count_parts):
    query = f"""
    select *
    from sf_table_shust
    where col_id % {count_parts} = {i}
    """
    df = query_sf_sql(query)
    print(f'Загрузка части {i}')
    df_to_db(df,'team_test','gp_table_shust')
    print(f'Конец загрузки части {i}')
В данном примере я разделяю таблицу с помощью конструкции col_id % {count_parts} = {i} на 10 равных частей и выгружаю данные в ДФ, после чего прогружаю их в GP.

➕Плюсы данного метода:

1) не требуется много времени на настройку трансляции;
2) загружая части данных поочередно, мы избегаем загрузки всей таблицы сразу, что снижает нагрузку на память;
3) если трансляция прервётся (например, из-за ошибки), можно перезапустить процесс только для недогруженных частей;
4) можно динамически изменять количество частей (count_parts) в зависимости от размера БД;
5) нахождение остатка от деления, является простой операцией с маленькой стоимостью.

Но к сожалению не обошлось и без минусов➖:

1) col_id должно быть числовым значением с высокой кардинальностью, чтобы разбиение было максимально равномерным;
2) col_id не должно содержать NULL значений, иначе их нужно будет загружать отдельно;
3) код загружает части поочередно, что может быть медленно, поэтому для прям больших таблиц такой метод не подойдет.

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

P.S. Как перееду в Москву, буду в разы чаще появляться в офисе. Чую,таким образом через год👨‍💻, я сам стану супер скилловым челиком😅
02/08/2025, 13:15
t.me/shust_de/105
Ща лучшие братишки мне скинули песню, и не смог пройти мимо неё и не поделиться с вами этим шедевром🤘

Слова просто бомба, прям🫠:

Володя валит не по годам
Вове горы по пояс
А море - ниже колена
Володя дамам и господам
Не встречается дважды
Похожего феномена
.......
Вова - это какая-то сага
Вова - определенный тираж
За плечами Володи - шарага
В перспективе - далекий вояж
Про него по телевизору
Выпуски в новостях
Хотели парочку минут
Записали пару часов
02/07/2025, 00:41
t.me/shust_de/104
😎Минутка славы😎

Сказать, что я офигел — ничего не сказать. Видос мне скинул Женёк, сам бы я фиг до него добрался. Если в 2-х словах - на канале "Декабрист IT" недавно закончился стрим, где разбирали мой видос из прошлого поста.

Прям круто, мотивирует продолжать делать контент. А что немало важно — критика, которую я учту в следующих видосах.

Минутка славы закончилась🫠
02/04/2025, 23:08
t.me/shust_de/103
Ютуб😘 полон видосов -"В IT не попасть", "IT пузырь лопнул", "Без опыта в IT не попасть" и т.д. Вот я захотел это проверить!🤔

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

Ежедневно🕛 я буду откликаться на вакансии "Инженера данных", либо на вакансии, где стек будет похож. Я буду просить доход в 130к на чисто джуновскую позицию. По мне для получения первого опыта и начальной зарплаты — идеально.😎

В конце каждого месяца я буду подводить итог, сколько откликов сделал, и сколько компаний меня позвало на техническое собеседование.🙏

Итоги первого месяца уже здесь!
01/31/2025, 23:20
t.me/shust_de/102
🚨ВНИМАНИЕ-ВНИМАНИЕ, аксесс активайтед🚨

26.01.2025 меня позвали на подкаст "За пределами Кода", и сегодня он уже в доступе🔈.

⬇️Поэтому скорее жми на ссылку⬇️

😘[СМОТРЕТЬ]😘

Там поднимается куча интересных вопросов⁉️:

🔊обучение на курсах;
🔊мотивация;
🔊сложность перехода в IT;
🔊плюсы и минусы;
🔊увеличение дохода;
🔊и многое другое.

Обязательно, через недельку, а может через 2, я проведу стрим📣, где рассмотрю моменты, которые не попали в подкаст, а также отвечу на все ваши вопросы. Поэтому не стесняйся, задавай вопросы в комментах, а я на них отвечу на стриме🎙

Подписывайтесь на наши каналы:
Евгений Виндюков
😀 Telegram канал
📺 Youtube канал

Владимир Шустиков
💬 Telegram канал
📺 Youtube канал

Полезные ссылки:
➡️ ROADMAP
01/29/2025, 12:31
t.me/shust_de/101
Господа и дамы, в прошедшее воскресенье я был приглашен моим другом и товарищем по команде Евгением Виндюковым на подкаст🎙. Мы классно пообщались, и в целом я получил супер офигенный опыт, который хочется пожелать каждому.👍

Уже завтра в 12:00 вы сможете его посмотреть на Ютубе(на других площадках его не будет из-за их неактуальности). К сожалению, наш с Евгением сервак с "Ускорителем Ютуба" пошёл по одному месту😭, и зачастую пинг просто безумно зашкаливает, и ловим постоянно TimeOut.⛔️

Мы прекрасно понимаем, что такой продукт мы не можем поддерживать в дальнейшем, так как количество пользователей растет, а строить полномасштабную архитектуру не хочется. Поэтому, мы как добросовестные блогеры начали искать выход. И нашли...

У меня есть знакомый, который построил полноценную архитектуру🔐 для "ускорения Ютуба" с полноценной масштабируемостью и техподдержкой, поэтому даже, если у вас что-то пойдёт не так, вас просто переведут на другой сервер , и вы будете спокойно работать там.

В дальнейшем мы с Евгением планируем проводить стримы именно на Ютубе и стримить будем именно через этот сервис. (Скорость ебэшая!🏎)

Поэтому переходите в бот @NamelessNetwork_bot и получайте ключ с 2мя неделями пробного доступа + не забудьте вставить промкод "DE", с ним вы получите еще 2 дополнительные недели использования, и того целый месяц бесплатного пользования!🌐

Это тот сервис, который реально можем посоветовать!💪
01/28/2025, 20:07
t.me/shust_de/100
Ребзя, спешал фор ю🫵, скидываю классные и четкие лекции от Павла Ковалёва, который является "ТехЛидом/Дата Архитектором" и по-совместительству моим руководителем в компании "Сравни". И, кстати, эти лекции взяты с канала SravniTech, подписываться не заставляю, но, в общем и целом, там есть, на что посмотреть. За рекламу, к сожалению мне ни кто не платил, все сделано от чистого сердца, к вам😘

Честно, только вчера, наконец-то, досмотрел 3-ю лекцию. И знаете что🤔? Я нашел себе новую цель, а именно хотя бы приблизиться к знаниям Паши🧑‍🎓. Ну вы это поймете, когда увидите, как он четко и по существу рассказывает о технологиях.

Я решил вам скинуть видосы прям в телегу, чтобы долго не искать, и чтобы все лекции были в одном месте. А так, вот вам ссылки на видео в Ютубчике, с коротким описанием о чем лекция.

📺Лек
ция 1. Особенности OLTP и OLAP, основные понятия курса.

Тут он рассказывает о базовых определениях хранилищ данных, устройстве WDH, основы оптимизации SQL-запросов и даёт реальные практические кейсы, даже есть те, с которыми я столкнулся лично, по оптимизации неэффективных запросов.

📺Лекция 2. Архите
ктурный обзор инструментов для построения DWH.

Ну как понятно из названия лекции, Паша прям проходится по инструментам, чтобы построить хранилище. Вот небольшая часть этих инструментов: Hadoop, Spark, Trino, Databricks, Amazon Athena, Amazon Redshift и Google Bigquery.

📺Лекция 3.
Техники оптимизации аналитических SQL-запросов (Greenplum, Clickhouse).

А это прям божественная лекция, тут четко, по полочкам и с примерами рассказывается о Greenplum, Clickhouse. С точки зрения GP я, в принципе, все знал, а вот про CH... такие подробности можно узнать, наверное, только из доки, да и то не факт. Короче, тут и для меня открыли Америку.🤯
01/27/2025, 22:25
t.me/shust_de/99
Search results are limited to 100 messages.
Some features are available to premium users only.
You need to buy subscription to use them.
Filter
Message type
Similar message chronology:
Newest first
Similar messages not found
Messages
Find similar avatars
Channels 0
High
Title
Subscribers
No results match your search criteria