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

IT Resume

Логотип телеграм канала @it_resume — IT Resume I
Логотип телеграм канала @it_resume — IT Resume
Адрес канала: @it_resume
Категории: Карьера
Язык: Русский
Количество подписчиков: 3.82K
Описание канала:

Платформа для подготовки к техническим собеседованиям и развития навыков. Сайт: itresume.ru

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

4.00

2 отзыва

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

5 звезд

0

4 звезд

2

3 звезд

0

2 звезд

0

1 звезд

0


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

2022-04-04 20:11:00 Вакансия Python/Go Developer (Middle/Senior) в Akvelon

Наши друзья из Akvelon прислали свежую вакансию для питонистов. Выглядит соблазнительно

Вилка: от 2500$ до 3700$
Опыт: от 3+ лет
Английский язык В1-В2+
Релокация с оф.трудоустройством в Сербии, Польше, Грузии или Армении.
Занятость: full-time, офис

Требования:
* Опыт работы с Go, Python, Scala, Java
* Знание GraphQL, REST, HTTP и возможности разработки поддерживаемых API
* Опыт разработки и внедрения производительных, стабильных и удобных в сопровождении интерфейсов API

Для отклика просто нажмите кнопку
1.4K views17:11
Открыть/Комментировать
2022-04-01 20:08:00 Почему COALESCE в SQL - это важно?

COALESCE - это функция, которая вычисляет по порядку каждый из своих аргументов и на выходе возвращает значение первого аргумента, который был не NULL.

Пример:

SELECT COALESCE(NULL, NULL, 1, NULL)
# 1

Применяется ли это на практике? Конечно! Рассмотрим 2 ситуации:

* Ситуация 1

Вы делаете email-рассылку по базе клиентов. У некоторых в поле fio стоит пропуск - таким людям придет письмо:

Добрый день, !

Несолидно, согласитесь? С помощью COALESCE эта проблема решилась бы элементарно:

COALESCE(fio, 'дорогой друг')
# Добрый день, дорогой друг!

* Ситуация 2

Вы делаете аналитику по товарам и используете функцию COUNT(col). На основании вашего отчета начальство потом принимает важные решения. Но вы-то забыли, что COUNT(col) проигнорирует значения NULL...

Подробно разобрали COALESCE и что у нее под капотом в нашей статье Синтаксический сахар SQL: функция COALESCE.

- - - - - - - - - -

Подборка интересных задач по SQL: IT Resume
1.7K views17:08
Открыть/Комментировать
2022-03-30 20:12:00 7 ошибок в коде на Python, которые flake8 вам точно подсветит

Предлагаем простое упражнение: откройте любой свой код, запустите линтер (flake8) и посмотрите - какие ошибки он вам покажет. Уверены, что в большинстве случаев вы встретите 7 ошибок, описанных ниже.

Если вдруг ваш код уже вычищен, прошел code review и готов к продакшену - то просто откройте другой код :)

* trailing whitespace

Если ваша строка заканчивается не переносом строки, а пробелом - линтер вам об этом скажет.

* expected 2 blank lines, found 0

Отделили класс от другого кода не двумя строками, а одной? Непорядок.

* unexpected spaces around keyword / parameter equals

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

* line too long (107 > 79 characters)

Наверняка у вас есть слишком длинные строки. Комментарии, длинные лямбда-выражения или много аргументов в функции. Flake8 вам об этом незамедлительно сообщит.

* blank line contains whitespace

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

* block comment should start with '# '

Если вы написали однострочный комментарий - не забудьте поставить пробел после #.

* too many blank lines (3)

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

Итог

Всегда ли нужно исправлять эти ошибки? Не всегда. Главное - подходить с умом и не игнорировать замечания линтера, если они действительно имеют смысл.

Кстати - хотите больше интересных материалов про code review, статический анализ и линтеры?

- - - - - - - - - - -

Тест на знание PEP8 и правил оформления кода: IT Resume
1.5K viewsedited  17:12
Открыть/Комментировать
2022-03-24 20:08:00 Сортировка в Python - не все так просто

Часто возникает потребность отсортировать список. Многие используют для этого метод sort:

arr = [1, 3, 2]
arr.sort()

print(arr)
# [1, 2, 3]

Но с этим методом не все так просто

1. In-place сортировка

Метод sort выполняет сортировку in-place. Другими словами, вы получаете не новый отсортированный список, а измененный исходный. Сам по себе метод возвращает None. По очевидным причинам, это не всегда удобно.

arr = [1, 3, 2]

print(arr.sort())
# None

print(arr)
# [1, 2, 3]

2. Сортировка составного списка

Если вы попробуете отсортировать составной список, то вы получите ошибку. Например:

arr = ['s', 'p', [[1], [2, 3]], 'isok', 2]
# TypeError: '<' not supported between instances of 'list' and 'str'

Это вполне логично, потому что как сравнить строку и список - совершенно непонятно. Поэтому метод sort в таких ситуациях нам не поможет.

3. Кастомная сортировка

Хотите написать гибкий «сортер»? Для начала определите правило сортировки.

Несколько примеров таких правил:

* Сортируем по длине каждого элемента (число - длина 1, список - определяем длину списка)
* Если элемент простой (например, число), то берем его строковое отображение. Если элемент составной (например, список), то берем строковое отображение первого элемента
* Каждый элемент отображаем в виде строки и сортируем в лексикографическом порядке
* Сортируем по типам и по-отдельности для каждого типа данных

Пример реализации последнего подхода:

arr = ['s', 'p', [1], [2, 3], 'isok', 2]

# создаем словарь, разбивая все по типам данных
res = {}
for el in arr:
el_type = type(el)
if el_type not in res:
res[el_type] = []
res[el_type].append(el)

# сортируем для каждого типа отдельно
for k, v in res.items():
res[k] = sorted(v)

# формируем итоговый список
res = [el for subarr in res.values() for el in subarr]

print(res)
# ['isok', 'p', 's', [1], [2, 3], 2]

Здесь уже все зависит от вашей фантазии и навыков программирования

- - - - -

► Задачки по Python и не только: IT Resume
1.6K views17:08
Открыть/Комментировать
2022-03-23 17:12:00
Расширяем свои знания в Python с помощью совместного материала с Selectel.

В новых карточках собрали 7 способов использовать функцию zip в Python.

Эта функция создает несколько кортежей из элементов коллекций, которые были ей переданы. Сегодня подробно рассмотрим, как обрабатывать коллекции разной длины, создавать словари и даже транспонировать матрицы с помощью zip.
1.4K views14:12
Открыть/Комментировать
2022-03-01 20:17:00
5 ошибок при составлении резюме

Чтобы привлекать внимание рекрутеров, нужно не только много уметь, но еще и «вкусно» это преподнести

Сегодня вместе с онлайн-университетом SF Education обсудили 5 типичных ошибок, которые встречаются в большинстве резюме.

Например:

Старайтесь максимально указывать инструменты и технологии, с которыми вы работаете

Посудите сами - вариант «До»:

- Создание аналитической системы для отдела маркетинга

Вариант «После»:

+ Разработал аналитическую систему на основе Power BI и Airflow + Python + PostgreSQL в качестве хранилища

Остальные пункты читайте в карточках

- - - - -

Кстати, о том, как «вкусно» упаковать свое резюме, подробно и с примерами мы рассказали в статье https://vk.cc/cbvYHr
450 views17:17
Открыть/Комментировать
2022-02-25 20:10:00 ​​ Тестовое задание на позицию Бизнес-аналитика

Собрали для вас тестовое задание на позицию бизнес-аналитика https://vk.cc/cbjbKI

Тест состоит из вопросов по темам:

* Python (Pandas)
* SQL
* Продуктовые метрики
* Статистика и теория вероятностей
* Power BI

А на сколько вопросов вы смогли ответить правильно?
625 views17:10
Открыть/Комментировать
2022-02-22 21:10:12
5 типичных ошибок при написании SQL-запросов

Сегодня подготовили разбор типичных ошибок при работе с SQL. Традиционно - вместе с онлайн-университетом SF Education

Основные тезисы:

1. Преобразование типов. 1/2 = 0. В некоторых СУБД деление целых чисел дает строго целое число. Как быть - рассказываем в карточках.

2. HAVING вместо WHERE. Встречали конструкции типа HAVING date >= '2019-01-01'? Так делать не надо.

3. Алиасы и план запроса. Фильтр WHERE обрабатывается сильно раньше оператора SELECT в плане запросе. Это накладывает некоторые ограничения на использование алиасов.

4. Лишние подзапросы. Тот случай, когда размер - не главное. Главное - опыт

5. Игнорирование CASE. С помощью CASE можно сократить запрос в несколько раз и даже решить некоторые нетривиальные задачи.
267 views18:10
Открыть/Комментировать
2022-02-17 19:00:03 ​​Что вас бесит в Python и что бы вы изменили?
346 views16:00
Открыть/Комментировать
2022-02-16 20:10:00
329 views17:10
Открыть/Комментировать