Получи случайную криптовалюту за регистрацию!

data будни

Логотип телеграм канала @data_days — data будни D
Логотип телеграм канала @data_days — data будни
Адрес канала: @data_days
Категории: Технологии
Язык: Русский
Количество подписчиков: 972
Описание канала:

работаю инженером данных и пишу в основном про это.
Профильные ссылки с коротким резюме (статьи, доклады, подкасты), иногда «софтовое» — например, про поиск работы.

Рейтинги и Отзывы

5.00

3 отзыва

Оценить канал data_days и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

3

4 звезд

0

3 звезд

0

2 звезд

0

1 звезд

0


Последние сообщения

2022-08-19 17:45:23 Reversed Orchestration Ben Stancil в очередном выпуске свой рассылки рассуждает о недостатках текущего подхода к оркестрации как цепочек зависимых тасков, начиная от входных слоёв и заканчивая витринами. https://benn.substack.com/p/down-with-the-dag Одна…
281 viewsСаша Михайлов, 14:45
Открыть/Комментировать
2022-08-19 17:44:20 Reversed Orchestration

Ben Stancil в очередном выпуске свой рассылки рассуждает о недостатках текущего подхода к оркестрации как цепочек зависимых тасков, начиная от входных слоёв и заканчивая витринами.

https://benn.substack.com/p/down-with-the-dag

Одна из проблем — в увеличивающимся количестве графов, тасков и сущностей:

> In 2022, data engineers manage forests, not trees

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

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

Автор предлагает подойти с другой стороны — проставить всем сущностями требования по свежести данных: например, по 4 часа на главные витрины , на промежуточные сущности 12, вспомогательные справочники и того меньше. И пускай там под капотом система сама решает когда какую сущность грузить.

Из преимуществ такого подхода — сглаживание пиков по нагрузке на вычислительные мощности. Система сама должна прикидывать когда что запускать, чтобы попасть в ожидаемые границы SLA по всем сущностям (а не просто все считать раз в N часов по крону).

(как инженер, который постоянно пытается подобрать расписание крона для очередного таска таким образом, чтобы сгладить пики на графике загрузки серверов, мне очень нравится картина, которую автор пытается нарисовать)
273 viewsСаша Михайлов, 14:44
Открыть/Комментировать
2022-08-05 17:47:58 Как минимум это интересно: GoogleDocs научились ходить в BigQuery

Вроде логичная интеграция: есть неограниченное хранилище и интерфейс к данным, к которому все привыкли; осталось только соединить одно с другим.

(если учесть, что BQ тарифицирует за чтение данных, то продакты Гугла должны быть довольны: проще читать данные → больше подключений → больше профит!)

https://support.google.com/docs/answer/9703000

Я попробовал по-быстрому зайти и открыть какой-то публичный датасет — например какие-то данные Википедии. Можно увидеть что к IP 68.39.174.238 приписано 12455 уникальный айди страниц.

Осталось получить от data steward ссылку на data catalog, чтобы проследить data lineage и узнать что за данные лежат в этом data source.
588 viewsСаша Михайлов, 14:47
Открыть/Комментировать
2022-08-03 17:44:24 Самое вкусное это конечно V2: Советы, ссылки и всяческая польза.
Я на себя взяла смелость оформить в двух вариантах: вот этим постом, тут чуть сокращенно и следующим также в телеграфе. На вкус и цвет как говорится.
…Как попасть в Яндекс
Всем доступный путь - это откликнуться на вакансию на официальном сайте Яндекса. Но вы сами понимаете, сколько людей туда откликается каждый день, поэтому шансы, что именно ваше резюме заметят и выделят - наверное не очень высокие.

Более реальный вариант - найти знакомого в Яндексе и попросить себя порекомендовать. Этот способ хотя бы сразу приведет к общению с рекрутером, а это уже половина успеха.

Еще один путь - участвовать в маркетинговых мероприятиях типа One Day Offer или Fast track - https://yandex.ru/jobs/hiring-events (ближайший). Все, кто сможет пройти входной контест, будет приглашен на собеседование.

Так же никто не отменял стажировки и различные школы (например, вот для бэкэнда), после которых тоже активно нанимают.

Как готовиться к собеседованиям
Лучший источник задач и решений - это литкод. Для Яндекса нужно прорешивать задачи уровня Easy и Medium.

Если у вас есть подписка - то обратите внимание на штатные подборки задач, если нет - то много классных сборников есть в сети (например).

Старайтесь минимизировать попытки сабмита задачи и учитесь дебажить код в уме - на собесе прогнать тесты вам никто не даст.

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

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

Очень рекомендую тренировки по алгоритмам:
https://yandex.ru/yaintern/algorithm-training_1
и https://yandex.ru/yaintern/algorithm-training#schedule
решайте домашки, смотрите разборы.

Попробуйте решить контест для Weekend offer. Если получится - то там уже и до офера недалеко)

Важное
Об этом нигде не пишут, но я крайне рекомендую: изучите и напишите с нуля все популярные алгоритмы сортировки: quick sort, merge sort, heap sort. Они все пишутся за 20 (heap sort - 40) строчек кода на питоне и легко гуглятся. Изучите, какая сложность у этих алгоритмов: в лучшем случае, в худшем, в среднем. Для каких случаев какой алгоритм предпочтительней.

Напишите сортировку пузырьком. Найдите 3 способа ее улучшить. Убедитесь, что сложность все равно осталась квадратичной. Найдите кейс, когда пузырек будет работать быстрее, чем quick sort.

Несколько лайфхаков для алго-этапа от меня:

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

2. Когда получите задачу, обязательно обсудите пограничные кейсы. А пустой массив проверять? А может прийти что-то, кроме массива? А числа отрицательные могут быть?

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

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

5. Называйте переменные осмысленно, но без фанатизма.

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

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

Напоследок
В Яндексе сейчас около 2000 открытых вакансий.”

#отдушидушевновдушу
519 viewsСаша Михайлов, 14:44
Открыть/Комментировать
2022-08-03 17:44:24 Юля собрала полезные советы для собирающихся в Яндекс

П.С.: подписывайтесь на Юлю — там весело (а не то что тут)
432 viewsСаша Михайлов, 14:44
Открыть/Комментировать
2022-08-02 10:21:34
Spotify Engineering Culture беглый поиск по каналу показал, что тут ещё не было ссылки на два коротких, но очень познавательных и наглядных видео про инженерную культуру в Спотифай — исправляюсь! Часть 1

Часть 2 https://yout…
534 viewsСаша Михайлов, 07:21
Открыть/Комментировать
2022-08-02 10:19:44 Spotify Engineering Culture

беглый поиск по каналу показал, что тут ещё не было ссылки на два коротких, но очень познавательных и наглядных видео про инженерную культуру в Спотифай — исправляюсь!

Часть 1


Часть 2



много можно применять к работе и инженеров данных: у нас тоже есть команды, цели, релизы и гильдии. Да мы практически software engineers ^_^

==[=====>


Минимальная организационная единица — автономный сквад из 6 человек. Внутри сквада люди сами решают как делать, как взаимодействовать.

Офис утроен под сквады: рабочие места рядом + место для обсуждения со стенами-досками для письма.

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

«Как вы планируете спринты? Какой IDE используете?» — зависит от сквада — везде по-разному.

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

Трайб — группа сквадов.

Горизонтально между собой отдельные специалисты из разных сквадов собираются в гильдии — например, бэкендеры или дизайнеры (или ИНЖЕНЕРЫ ДАННЫХ, хе-хе).


Релизы

Чем больше релиз, тем труднее его выкатить → больше боли → реже релизы → релизы всё больше → круг замыкается

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

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

Релиз-поезда — релизы по расписанию. Готовые куски отгружаются со следующим рейсом. Неготовые куски тоже выезжают, но не отображаются на проде (будут ждать наготове, когда доедут недостающие части со следующим релизом).



<====]==

Ещё по теме: тот беглый поиск в начале подсветил, что в когда-то давно я кидал ссылку подкаст с разработчицей из Спотифай, так что можно сравнить информацию из видео с отчётом из первых рук
https://t.me/data_days/66
442 viewsСаша Михайлов, 07:19
Открыть/Комментировать
2022-07-08 13:19:03 2. Семён Осипов про работу и рост инженера данных

Надо брать ответственность самому, а не ждать пока «всё само́»: сначала чинишь код вокруг себя, потом переходишь на следующий уровень и уже чинишь процессы.

Про рост зарплаты: первым делом договариваешься с лидом о встрече через Х месяцев, потом приходишь на неё готовый с результатами своей работы с прошедший период. Повторить итерацию.

Получился хороший разговор с правильным подходом, как ведущие пошутили «за всё хорошее против всего плохого». Полезно.

iTunes, Overcast, Youtube

Канал Семёна про инжиниринг
818 viewsСаша Михайлов, 10:19
Открыть/Комментировать
2022-07-08 13:18:48 послушал два подкаста на схожую тему — про профессиональный путь в дата-отрасли:

1. Валерий Бабушкин про технический путь

Кулстори из рабочих будней про командировки по колхозам и молокозаводам. Плотный график разных проектов с жёсткими сроками и требованиям по точности расчётов даёт +100 к опыту.

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

Про мэтчинг грейдов между компаниями: когда миддлы из Х5 или Яндекса идут синьорами-хедами в другие компании; или мега-синьор из вне тянет в Х5 только джуна.

Про общую оценку кадров в Х5: 10 профильных докладов на последнем Датафесте (видео от мая 2021) как итог работы Валерия директором по данным.



694 viewsСаша Михайлов, 10:18
Открыть/Комментировать
2022-07-06 09:39:29 Нужен ли английский разработчикам?

Чтобы серьёзно обсудить этот вопрос в Moscow Python позвали двух филологов (Youtube, iTunes и Overcast)

Недавно столкнулся с кейсом «зачем нужен английский». Даже не для того, чтобы читать документацию или статьи в оригинале. Ещё на несколько уровней ниже:

Как. Называть. Переменные.

Разбираем с приятелем его код на Джанго для курсовой работы. Вроде всё работает, но собрано из разных частей. Надо понять КАК оно работает. Доходим до стандартной функции get_or_create — название вроде говорит само за себя. Спрашиваю его «что происходит в этом кусочке?», в ответ задумчивость.

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

Без знания английского действительно тяжело даже просто писать и читать код.
672 viewsСаша Михайлов, 06:39
Открыть/Комментировать