Что должен знать Senior Python разработчик? Разбираем все вопросы на реальном примере

preview_player
Показать описание

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

Мы рассмотрим важность каждой технологии, на которые следует делать упор, и также те, на которые не нужно тратить слишком много времени.

Рекомендации по теме
Комментарии
Автор

Если вы знаете другие вопросы, которых нет в этом файле,
не забудьте поделиться в комментариях, это будет полезно всем
кто их в дальнейшем прочитает =)

zproger
Автор

- Какие есть generation в Python Garbage Collector?
- Что такое Reference Counting?
- Чем особенны с точки зрения занимаемой памяти объекты класса int со значениями в диапазоне от -5 до +256 в CPython?
- Зачем необходимы встроенные методы globals(), locals()?
- Что такое RLock?
- Какие есть способы избежать возможности deadlock?
- Сравнение синхронного и асинхронного Lock
- Что является "прародителем" корутин в Python?
- Применяется ли GIL на уровне asyncio?
- Нужно ли покрывать тестами private и protected методы класса, отдельно от используемых их public методов?
- Являются ли магические методы приватными?
- Можно ли использовать функцию как метакласс?
- Какой тип занимает больше памяти при одинаковых элементах внутри: list или tuple?
- Когда происходит очистка объекта из памяти в реализации CPython?
- Если в теле try объявить return из функции - выполнится ли finally?
- Как отличаются магический методы __getattribute__ и __getitem__?
- Зачем необходим магический метод __init_subclass__?
- Как можно использовать property для lazy-инициализации?
- Зачем в генераторе существует метод send?
- Является ли decorator в Python имплементацией паттерна decorator?
- Какие ключи будут в dict в результате выполнения команды my_dict = {1: "a", True: "b", 1.0: "c"}? Почему результат будет именно такой?
- Может ли tuple быть ключем в dict? Есть ли исключения в этом правиле?
- Имеет ли свою силу GIL на уровне threads? На уровне processes?

pixel
Автор

1. большинство этих вопросов подходят для мидла
2. нужно понять чем отличается мидл от сеньера.
если джун, к примеру, в идеале будет знать ответы на все эти вопросы, максимум ему дадут работу мидла.
сеньер это больше относится к опыту, опыту работы с заказчиком, умение найти и объяснить ошибки допущенные джуном, опыт работы в команде, опыт гуглить в конце концов) и т д..
3. сеньер Python помимо языка должен знать ещё уйму смежных технологий: типа нескольких СУБД (монго и постгресс к примеру для разнообразия), уметь читать js, работа с vps (ну или azure/aws)
4. уметь быстро вникать в чужой код / библиотеку

aleksandrdontsu
Автор

Спасибо за телеграм канал. Очень полезный!

glebsorokin
Автор

Уже больше года смотрю Ваши видео. Курс на udemy по парсингу проходил. Спасибо за труд!
Эта работа так вообще очень годная!
Было время, я смотрел ролики с собеседованиями и выписывал вопросы и ответы, фиксировал насколько часто задаются вопросы.
Это было очень не просто и не быстро. (поэтому понимаю какую работу Вам пришлось проделать)
Еще раз спасибо за труды!

oy_shestakov
Автор

С высказыванием про тесты я не соглашусь, так как если вы работаете в компании, то тесты могут помочь вашим коллегам разобраться в функционале, какие входные данные, что должно быть на определённых моментах, так что они нужны, если вы работает на фрилансе, то я думаю это будет являться хорошим тоном, так как даже если проект нужно будет доработать, то следующему специалисту может быть трудно . На таком уровне к вам скорее всего будут вопросы про многопоточность и асихроность, есть много тонкостей, всё зависит от яп . Так же на счёт библиотек , у вас могу спросить про стандартные библиотеки python , благо они достаточно хорошие . Возможно это придирки, так как тема является достаточно обширной, в любом случае уважение автору канала, продолжай в том же духе !!!)

NNNN-wtmk
Автор

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

artembagachkov
Автор

Спасибо за интересную информацию. Посмотрел файл - меня такое спрашивают на Junior собеседовании:) Похоже не ту зп я прошу ...

grandlaggingzero
Автор

Monkey Patching - довольно популярная штука, ибо позволяет заменить поведение какого-либо реального и т д .. например, поведение платежной системы. Частое применение можно заметить в тестах, чтобы не слать реальные запросы на эту самую платежную систему (для примера). Поэтому, я бы не стал исключать этот вопрос. А на позициях Senior, требование писать unit тесты - это частое явление. Так что тестированием, лучше тоже не пренебрегать.. хотя, как заметил автор, все зависит от бизнеса)

imbaquad
Автор

Ну хзхз. Я ни дня не работал, пока учусь в вузе. Почти на все вопросы знаю ответы, хотя я даже не джун. Странный список какой-то

palyaros
Автор

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

kotgaf
Автор

Какие библиотеки, фреймворки начать учить, когда уже выучил python?

morok
Автор

Посмотрите исходники Яндекса, которые слили в сеть, и ваши представления о "хорошем Синьоре" сильно изменятся.

borismish
Автор

На первой странице, во 2 вопросе, как я понимаю, должен быть пример функции, после "Пример функции, представленной в виде выражения лямбда:", а его нету(

null_user
Автор

Мне такие вопросы задавали когда я на трейни шел (это типо нижу джуна).

ПавелВеткин-ощ
Автор

- Какие есть generation в Python Garbage Collector?
- Что такое Reference Counting?
- Чем особенны с точки зрения занимаемой памяти объекты класса int со значениями в диапазоне от -5 до +256 в CPython?
- Зачем необходимы встроенные методы globals(), locals()?
- Что такое RLock?
- Какие есть способы избежать возможности deadlock?
- Сравнение синхронного и асинхронного Lock
- Что является "прародителем" корутин в Python?
- Применяется ли GIL на уровне asyncio?
- Нужно ли покрывать тестами private и protected методы класса, отдельно от используемых их public методов?
- Являются ли магические методы приватными?
- Можно ли использовать функцию как метакласс?
- Какой тип занимает больше памяти при одинаковых элементах внутри: list или tuple?
- Когда происходит очистка объекта из памяти в реализации CPython?
- Если в теле try объявить return из функции - выполнится ли finally?
- Как отличаются магический методы __getattribute__ и __getitem__?
- Зачем необходим магический метод __init_subclass__?
- Как можно использовать property для lazy-инициализации?
- Зачем в генераторе существует метод send?
- Является ли decorator в Python имплементацией паттерна decorator?
- Какие ключи будут в dict в результате выполнения команды my_dict = {1: "a", True: "b", 1.0: "c"}? Почему результат будет именно такой?
- Может ли tuple быть ключем в dict? Есть ли исключения в этом правиле?
- Имеет ли свою силу GIL на уровне threads? На уровне processes?

pixel