🔋 Труба данных – Telegram
🔋 Труба данных
3.99K subscribers
330 photos
5 videos
9 files
449 links
Авторский канал обо всем, что происходит в мире работы с данными: хранение, обработка, визуализация, как мы принимаем решения и как мы становимся профессионалами в работе с данными.

Автора канала - @SimonOsipov
Download Telegram
Forwarded from Mikhail Kumachev
Друзья!

4 мая в 18:00 MSK состоится наш второй митап сообщества DE or DIE.
В сложившейся мировой ситуации мы проведем мероприятие онлайн. Да, нам тоже будет не хватать живого общения, но зато в этот раз точно не будет ограничения по билетам и привязки к конкретной локации.

Узнать программу мероприятия и зарегистрироваться можно по ссылке: https://deordie.timepad.ru/event/1303716/
За час до мероприятия мы пришлем ссылку на трансляцию.

May the Fourth be with you!
Периодическая таблица инструментов DevOps

Если вы, как и я, вечно интересуетесь чем-то новым, то вот для вас интересный инструментарий: периодическая таблица DevOps инструментов. Как ее можно использовать? Смотрим на категорию и выбираем, какой-нибуд инструмент. Читаем его описание и назначение, смотрим применимость и пользу в своем продукте. Можно найти что-нибудь интересное, в том числе для дата инженера, например, управление БД и миграциями.

https://xebialabs.com/periodic-table-of-devops-tools/
Postgres. С чего начать?

Для тех, кто хочет стать Data Engineer, важно потрогать своими собственными руками Postgres, как самую распространенную СУБД. Как при этом не потеряться в UI какого-нибудь редактора в стиле Data Grip и при этом получить навыки как работы, так и администрирования?

https://learn.crunchydata.com/

Советую попробовать интерактивный курс PostgresQL for Application Developers. Просто и понятно .
Внимание, это не реклама, это бесплатно. Правда, на английском языке. Но это вас же не остановит?)😁
Продолжаем про БД

В прошлый раз кидал вам ссылку на туториал по Postgers, то в этот раз хорошая и простая лекция из Школы Бэкенд разработки Яндекс про базы данных: какие бывают, что такое нормализация и денормализация, как работает b-tree индекс и вот это все. Совсем не хардкорно и просто для понимания. За часик разжуют основы.

https://www.youtube.com/watch?v=YjSIdz8DnAo
#НамДжунаБы
Позиция: Junior / Middle ETL developer в WildBerries
Вилка: 60 000 - 120 000 рублей

Чем предстоит заниматься:
- Разрабатывать процессы по автоматическому сбору, обработке и очистке данных и их загрузке в хранилищ
- Обеспечивать качество данных в хранилище
- Проектировать модели и структуры Хранилища Данных и витрин
- Проектировать потоки загрузки / трансформации данных

Что для нас важно:
- Понимаете принципы работы Airflow
- Уверенные знания SQL, навыки чтения планов запросов
- Умение и желание решать технические проблемы
- Желание совершенствовать свои навыки и способности
- Понимание важности документирования проделанной работы

Что кроме зарплаты:
- Бесплатное безлимитное питание в офисе (контейнеры, фрукты, кофе машины, автоматы)
- Большие скидки на продукцию компании + кешбек ~20% - 30%
- Возможность отложенной покупки
- Поездки команд в Европу и по России - "отдохнуть и поработать" (последние локации были Кипр и Сочи)
- Спортивные мероприятия (футбол, волейбол, йога)
- Скидки на английский (онлайн и с преподавателем в офисе) и в фитнес-клубы рядом с офисом
- Широкий пакет плюшек для детей сотрудников: подарки на праздники, детские корпоративы в офисе, курсы для детей по ИТи т.д.)
- Скидка на паркинг 30% (в районе 5300 получается со скидкой)
- Железо на выбор (Mac, iMaс, PC)

Контакт для связи: @avelestat
#НамДжунаБы

Есть возможность 1) на удаленке 2) part-time 3) небольшие требования 4) даже платят поработать DE. Далее по тексту:

Мы в xO Analytics ищем data engineer на разработку аналитического продукта. Продукт обеспечивает клиентам понятные им ответы на вопросы о состоянии дел в их компании для того, чтобы принимать управленческие решения на основании этих ответов. Наша фишка в том, что у нас есть несколько своих компаний и выработанные подходы к работе с ними, поэтому мы знаем что нужно для управления бизнесом и как на основании этого принимать решения. Клиенты - венчурные фонды и их портфельные компании. Сейчас фокусируемся на рынке US.
Работаем с данными о движении средств по счетам, маркетинговыми показателями, данными о поведении пользователей, складскими остатками. У нас есть понимание того, что нужно получить и какова логика обработки данных. И мы уже реализуем эти алгоритмы. Но мы хотим двигаться быстрее, поэтому ищем ещё одну голову и пару рук, которые ускорят развитие нашей аналитической системы.
Требования:
- навык работы с данными на языке Python
- опыт работы большими объемами и сложными структурами данных
- готовность выделять минимум 4 часа в день на работу над проектом
Зарплата: от 20 до 40 тысяч рублей в зависимости от опыта и вовлечения.


Контакт: @antonkatkov
Разница между вертикальным и горизонтальным масштабированием...
Вредные советы 9. Как не надо сравнивать с True

Продолжая прошлый разговор про сравнения (тогда было про None), в этот раз говорим про True. Практически в любом языке программирования есть этот антипаттерн.

Антипаттерн
Как не надо сравнивать с True:

flag = True
if flag == True:
print("Вот так делать не надо!")


А как надо?
Тут есть два пути. Во-первых, обратите внимание на документацию Питончика:
In the context of Boolean operations, and also when expressions are used by control flow statements, the following values are interpreted as false: False, None, numeric zero of all types, and empty strings and containers (including strings, tuples, lists, dictionaries, sets and frozensets). All other values are interpreted as true. User-defined objects can customize their truth value by providing a __bool() method__

Что же это значит? А значит что для любого не из списка (False, None, нуля во всех числовых типах и пустых строках) выражение if flag: будет равно True.

Есть еще и другой вариант, но он похуже. Используется, когда вам нужно отличить True от другие True-like значений. Выглядит он как if flag is True:

#ВредныеСоветы
ШАД, Академия Больших Данных MADE от Mail и Ozon Masters

Возможно, когда вы интересовались темой Data Science, вы натыкались на такую аббревиатуру, как ШАД. Это Школа Анализа Данных Яндекса, где тебя накачивают по самые помидоры знаниями про DS и вот это все. Лычка "Я окончил ШАД" одна из немногих, кто в реальности открывает двери почти в любую компанию. Раньше у них был только DS, а теперь есть "Разработка машинного обучения", "Data Science", "Инфраструктура больших данных" и "Анализ Данных в прикладных науках".
Обучение длится 2 года, следующий набор - апрель 2021.

Но на самом деле, у ШАД появились конкуренты, и это очень, очень хорошо.

MADE (это Mail.Ru) объявил о начале нового набора на свою программу больших данных. На выбор есть 3 специальности: DS, ML и DE.
Обучение есть очное (3 раза в неделю), есть дистанционное.
Длится 1.5 года, бесплатно(!)
Но за место под солнцем придется побороться, вступительные испытания по математике и программированию отсеивают очень много народа.

Есть еще и Ozon Masters, DS/DE и BI в качестве направлений, тоже бесплатно (!), тоже полтора года, правда только очно в Москве.
И, конечно же, вступительные испытания. Набор также открыт, но если у MADE это все ближе к сентябрю, то Ozon регистрация закроется скоро и начнутся испытания.

Ах да, нигде нет ограничений на возраст и на то, что надо быть студентом или выпускником.

Лично знаю преподавателей и кураторов со всех трех программ и могу посоветовать любую из них, если вы хотите мощно прокачаться.
Правда есть одно маленькое но: есть устойчивое мнение, что "ШАД / MADE / Masters, работа и личная жизнь - выберите любые два". Нагрузка на программах колоссальная.
#НамДжунаБы

Стажер в Сбербанк, не очень высокие требования (но и з/п тоже небольшая)😭

__
Компания: Сбербанк, Правовой Департамент
Вакансия: Стажер в LegalTech проект
Локация: пока удаленка, затем Москва, м. Полянка.
Проект: LegalTech, NLP, необходимо обрабатывать десятки и сотни ГБ текстов, модели NER, модели связей, в итоге highload решение с миллионной аудиторией.
О тебе: хорошее знание Python и классических алгоритмов и структур данных. Опыт разработки - плюс. SQL - плюс. Желание развиваться в области DS, NLP.
О нас: Команда DS с опытом Deep NLP, большинство стажеров становятся постоянными членами нашей команды.
Вилка: Стандатная стажерская зарплата: 50 тыс. руб. gross, которая с кварталками и годовыми премиями превращается в 50 тыс. руб. net.
Присылайте CV на kuznetsov.m.viktor@sberbank.ru с пометкой "Стажер" или в телеграмм @slonoten, там же вопросы.
__
Вредные советы 9. Как не надо итерироваться по двум спискам.
Если у вас есть два списка и вам нужно проитерироваться по обоим одновременно, не стоит использовать индексы первого для того, чтобы взять аналогичный индекс в втором списке. Для этого есть zip().

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

numbers = [1, 2, 3]
letters = ["A", "B", "C"]

for index in range(len(numbers)):
print(numbers[index], letters[index])


А как надо?
И
спользуй zip(), блеат! При этом автоматически создаются пары значений из каждого из списков и не надо ничего придумывать:

numbers = [1, 2, 3]
letters = ["A", "B", "C"]

for numbers_value, letters_value in zip(numbers, letters):
print(numbers_value, letters_value)


#ВредныеСоветы
Что такое SRE и с чем его едят?

Сколько было сломано копий при спорах про Software Reliability Engineering, про то, кому это надо и не надо. Для себя я сформировал следующее понимание: SRE это когда ты знаешь в любой момент времени, что происходит с твоим сервисом, если что-то идет не так, система сама пытается исправить состояние. Если же это не удается, то специалисты сразу знают, где болит и где надо чинить.

Считаю, что логгирование и мониторинг - показатели зрелости продукта и разработчиков, которые его делают. Поэтому если вы хотите знать поболее про SRE - начните с этого доклада, а потом уже книжки от OReilly синенькие читайте =)

https://www.youtube.com/watch?v=qe_9RGyATzo

#пятничныйYoutube
#НамДжунаБы

Тут до меня дошли новости, что на прошлую вакансию, которую я постил, один из читателей этого канала получил оффер. И на еще одну до этого (в Wildberries) тоже.

Поэтому я продолжу постить junior вакансии, связанные с Python (а это DE, Backend и DS) ибо именно такие истории меня максимально мотивируют.
Вакансия выше текстом:

Вакансия: DS (Junior / Middle)
Компания: Сбербанк
Город: Москва
Вилки:
Gross, без учета премий ( + квартальные >=1 оклада + годовая - 5-8 окладов)
Junior: 90 - 120 т.р.
Middle: 115 - 170 т.р.
Ищем Junior / Middle DS в управление валидации Сбера.

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

А именно:
Разрабатываем подходы для оценки модельного риска
Валидируем абсолютно все модели Сбера, способные значимо повлиять на финансовый результат
Разрабатываем и автоматизируем методы для валидации
Строим систему отчетности
Строим платформу для онлайн-мониторинга и автовалидации типовых классов моделей
А успешный кандидат будет помогать нам:
Разбираться во внутренностях модели и процесса, где она применяется
Переводить работу модели в деньги и защищать свои расчеты
Исследовать подход к моделированию и работать над методологией ( Например, в зависимости от бизнес-применения модели настоятельно рекомендовать подходящую метрику качества)
Автоматизировать и масштабировать свои решения
Исследовать и предлагать методы количественной оценки модельного риска (Например, выяснить наличие каких факторов влияет на падение качества модели со временем)

Почему у нас интересно:
Очень сильная команда (МГУ, МФТИ, ВШЭ, РЭШ)
Очень интересные задачи (на подумать, с *) на стыке ML, математики и бизнеса, fit-predict тут не пройдет, придется много узнавать, выяснять и думать
Внушительный и разнообразный ландшафт препарируемого материала (=моделей), много работы будет "под капотом"

Что ждем от кандидата:
Знание ML (основные алгоритмы и что там вообще внутри происходит)
Знание мат. статистики, теор.вера :bayesgroup:, алгоритмов и структур данных
Знание Python и основных библиотек анализа данных :nor:
Знание SQL (хотя бы весьма базовое), навыки работы с базами данных

Совмещение с учебой:
Возможно.
Готовы обсудить условия с студентами старших курсов / магистратуры / аспирантуры.
Многие наши сотрудники параллельно учатся
Пишите:
@kostapanfilov, panfilov.k.o@sberbank.ru

#НамДжунаБы
Согласитесь, хорошо оформленный GitHub при поиске первой работы - очень верный способ оказаться впереди большей части кандидатов на вакансию.

Поэтому вот вам свежачок для оформления. Если создать репозиторий с названием своего профиля, например, SimonOsipov/SimonOsipov и там оформить файл README.md, то он высветится на главной странице.
Псс, DE or DIE третий митап на подходе. Следующий четверг, 16.07. С 19:00 до 21:00.

Кажется, будет жарко. В этот раз подробно и глубоко будут рассмотривать один целиковый кейс от дата инженеров из Додо Пиццы (Ксения Томак, Михаил Кумачев, Дарья Буланова) и Solution Architect из Databricks (Иван Трусов). Есть отличный шанс узнать всю внутреннюю кухню того, как готовится пицца! Ее нельзя просто так взять и приготовить – нужны ингредиенты. Про них-то и будет доклад: как, откуда и через что текут данные, необходимые для решения задачи прогнозирования спроса на них.

Подробности и регистрация по ссылке: https://deordie.timepad.ru/event/1350632/
Avito.Tech и школа Аналитики

Какое-то время назад я писал (https://news.1rj.ru/str/ohmydataengineer/54) про гигантов нашей айтишечки и их прикладные курсы. Так вот, кое-что замелькало интересное: AvitoTech открыл набор в школу аналитики! Записаться и почитать подробности можно здесь (https://bit.ly/2OggOCt), но не тяните, прием заявков закроется уже на след неделе, 16 июля.

Что для поступления:
- Приём заявок (до 16 июля)
- Первый этап тестирования — с 17 по 19 июля. Это онлайн-тест, который займёт два часа. Нужно будет решать задачи по теории вероятностостей, математической статистике и основам программирования на любом языке.
- Второй этап тестирования — онлайн-экзамен 25 июля.
- Собеседование с командой аналитиков Авито — с 10 по 23 августа.
- Старт обучения в сентябре.

Что по обучению:
В первом семестре студенты будут изучать:
- Прикладную статистику.
- SQL и базы данных.
- Python.

Во втором семестре курсов больше:
- Эконометрика.
- Эксперименты.
- Метрики.
- Machine learning.
- Визуализация данных.

Обучение онлайн/оффлайн/смешанное. И бесплатное. На лендинге, кстати, довольно все хорошо расписано.

#где_поучиться
Тем временем на гитхабе получил бейджик. Теперь мой говнокод и PR закопают во льдах Арктики.
#НамДжунаБы

Вакансия: Аналитик БигДата (jun/mid)
Компания: ДИТ Москвы
Город: Москва
Вилка: оклад 100 до 150 т.р. net + премии по результатам работы
Контакты: @steffix

Не стоит бояться требований, если написано junior, значит ребята готовы смотреть проактивных и инициативных.
https://docs.google.com/spreadsheets/u/0/d/119RI3oS9XNOjq2X8VLpUOMpyarcMsNzid-nA1OqbXkA/htmlview?pru=AAABc90JMyg*iiQYwEl6l_UPxGeCkdqgUQ

Тут собрали табличку про зарплаты Blizzard. Можно смело посмотреть на зарплаты в той компании, в которой вы все мечтали работать, убивая кабанов в Нортшире😂

Associate Data Engineer, $44 в час и 1.2% повышение з/п, 1.5 года опыта - единственная позиция, связанная с Data Engineering.

P.S. Геймдев никогда не был про очень большие деньги, если что. Туда идут совсем за другим.