Виталий Лихачев, Павел Мальцев: Публичное собеседование Senior Python Engineer

  Рет қаралды 5,890

{ между скобок }

{ между скобок }

6 ай бұрын

Соберемся на публичное собеседование на Senior Python. Разберемся какие сейчас актуальные вопросы по Python обсуждают на собеседованиях.
Проводить собеседование будет Виталий Лихачев 🔥 - Fullstack разработчик. Работал и в стартапах, и в крупных компаниях. Пилил сложный динамичный фронт в стартапе, настраивал CI/CD и aws, оптимизировал бэкенд и проводил технические собеседования - поэтому понемногу знает жизнь программных проектов со множества сторон.
Проходить собеседование будет невероятно классный - Павел Мальцев 🔥 CTO в компании Speechki. Нашёл причину использовать метаклассы в python.
Канал с анонсами t.me/megdu_skobok
Boosty boosty.to/megdu_skobok
Ламповый чат t.me/backend_megdu_skobkah
Apple Podcast podcasts.apple.com/us/podcast...
Yandex Music music.yandex.ru/album/24060063
Полезные ссылки
📖 realpython.com/
📖 superfastpython.com/
📖 Как научиться разработке на Python: новый видеокурс Яндекса habr.com/ru/companies/yandex/...
📖 Pycoders pycoders.com/issues/601
📖 База знаний Evrone challenge.career.evrone.com/

Пікірлер: 37
@user-qj8fv8zd1f
@user-qj8fv8zd1f 6 ай бұрын
Задавать задачку на собеседование а-ля "это то, что я узнал вчера". Вопрос, нахрена это надо ?
@MrLotrus
@MrLotrus Ай бұрын
Это базовый вопрос на самом деле, который часто спрашивают
@__init__.
@__init__. 5 ай бұрын
Ради интереса замерил, что будет быстрее для word.upper() Для 50 миллионов значений: for took 3.159 seconds list_comp took 3.371 seconds map took 2.777 seconds
@ubuhobbit
@ubuhobbit 6 ай бұрын
It would be great if We will see Vitaly Likhachov's Technical interviews in here again !
@semenPupkov
@semenPupkov 5 ай бұрын
Если на реальных собесах сейчас спрашивают то, что тут - все это очень печально
@illiakaltovich
@illiakaltovich 6 ай бұрын
Ожидал разговор немного про другое, честно говоря, но да ладно P. S. Где-то на 1:01:05 стало интереснее
@alexanderastashov6046
@alexanderastashov6046 2 ай бұрын
Я просто оставлю это здесь: ➜ ~ python --version Python 3.12.1 ➜ ~ python -m timeit "words = ['a', 'b', 'c']; [i.upper() for i in words]" 1000000 loops, best of 5: 254 nsec per loop ➜ ~ python -m timeit "words = ['a', 'b', 'c']; list(map(str.upper, words))" 500000 loops, best of 5: 421 nsec per loop ➜ ~ python -m timeit "words = ['a', 'b', 'c']; [str.upper(i) for i in words]" 1000000 loops, best of 5: 272 nsec per loop
@MrLotrus
@MrLotrus Ай бұрын
получается или устаревшая оптимизация, или изначально что-то не то придумали
@oguretsagressive
@oguretsagressive 11 күн бұрын
Часто забывают что O(n) - это на самом деле "O(n) + const". И если n маленькое, то const может оказывать ощутимое влияние на результат. $ python --version Python 3.11.2 $ python -m timeit -s "words = ['a', 'b', 'c'] * 100" "[i.upper() for i in words]" 20000 loops, best of 5: 15.5 usec per loop $ python -m timeit -s "words = ['a', 'b', 'c'] * 100" "list(map(str.upper, words))" 20000 loops, best of 5: 12 usec per loop $ python -m timeit -s "words = ['a', 'b', 'c'] * 100" "[str.upper(i) for i in words]" 20000 loops, best of 5: 17.3 usec per loop $ python -m timeit -s "words = ['a', 'b', 'c'] * 100; sup = str.upper" "[sup(i) for i in words]" 20000 loops, best of 5: 16 usec per loop $ python -m timeit -s "words = ['a', 'b', 'c'] * 100" "list(i.upper() for i in words)" 10000 loops, best of 5: 20.6 usec per loop $ python -m timeit -s "words = ['a', 'b', 'c'] * 100" "[*map(str.upper, words)]" 20000 loops, best of 5: 12 usec per loop И совсем уж head scratcher (ага, медленнее 3.11-го): Python 3.12.3 20000 loops, best of 5: 16.3 usec per loop 20000 loops, best of 5: 16.2 usec per loop 20000 loops, best of 5: 18.6 usec per loop 20000 loops, best of 5: 17.2 usec per loop 10000 loops, best of 5: 25.9 usec per loop 20000 loops, best of 5: 16.2 usec per loop
@igorratnik2357
@igorratnik2357 5 ай бұрын
Это собес на синьора, написать контекстный менеджер😅😅😅 . Кстати не первый собес вижу подобный. Вопрос именно по ним.
@gunlinux
@gunlinux 2 ай бұрын
Тема с append не раскрыта
@TheTmntmike
@TheTmntmike 6 ай бұрын
1) Что за мода пошла делать list | None? Для этого есть Optional 2) 45:36 Для этого случая в питоне есть partial из functools. Как по мне это первое что должно было прийти в голову. Для меня показалось странным, что не упомянули. По результату хз. Без негатива, но моему человек максимум стремящийся мидл.
@user-yi7ln7ob4l
@user-yi7ln7ob4l 6 ай бұрын
уточка подъехала
@mrKazzila
@mrKazzila 6 ай бұрын
А в чем проблема с list | None?😬 Единственное, что работает с 3.10+ версии, а так из тайпинга тащить не нужно лишнее При просмотре собеса также подумал, что ответы не уровня синьера, но, возможно, на практике чел шарит больше чем в теории. Ну и сами вопросы из разряда "топ 50 вопросов на python developer позицию" все тоже самое спрашивают на стажеров\джунов, а хотелось бы что-то релевантное на высокую позицию😔
@MrLotrus
@MrLotrus Ай бұрын
1 - ну дык новый синтаксис подвезли. Почему бы не пользоваться вместо импорта Optional
@gaxeliy
@gaxeliy 6 ай бұрын
Слышу "Зачем писать на Python, если есть Go" - готовлю гневный Go-хейтерский пост в блоге =DDD
@ubuhobbit
@ubuhobbit 6 ай бұрын
Paren kotoriy otvechaet na voprosi vedyot sebya kak budto on senior no na samom dele on junior, nichevo ne znaet no umnichaet ))
@CrazyElf1971
@CrazyElf1971 5 ай бұрын
Да, на мой взгляд намного лучше честно обозначать уровень своей компетенции, чем делать вид, что всё знает, а сам при этом плавает в простых вопросах.
@victorbrylew1775
@victorbrylew1775 Ай бұрын
Собеседование в стиле "красноглазики пиписьками меряются". Из всего что прозвучало к практике разработки с натяжкой относится только контекстный менеджер в конце разговора. Ну вот обсудили про то как строки в 4к+ символов длиной начинают себя вести немного по-другому и хранятся раздельно. И что? Как это сакральное знание поможет вовремя закрыть таски в спринте?
@oguretsagressive
@oguretsagressive 11 күн бұрын
А какое знание поможет?
@victorbrylew1775
@victorbrylew1775 11 күн бұрын
Циклы vs рекурсия и их влияние на алгоритмическую сложность. Кеши, их виды и как выбрать лучший под задачу. Потоки vs процессы vs асинхронщина, что лучше использовать в каких случаях. ОРМ vs чистый sql, что лучше в каком случае. И продолжать можно бесконечно. Вопросов куча.
@MrLotrus
@MrLotrus Ай бұрын
В "го ооп больше чем в питоне" - это конечно очень спорное утверждение
@SergeyBaruzdin
@SergeyBaruzdin 6 ай бұрын
Из ребат кто-нибудь менторством занимается?
@clever_taussig
@clever_taussig 4 ай бұрын
Честно говоря смог только 30 минут.
@user-kz4hk9mb2u
@user-kz4hk9mb2u 5 ай бұрын
досмотрел до 22:10 дальше нет смысла, кандидат даже на джуна не знает: вопрос про list comprehensions для сеньора должен быть как минимум про nested comprehension, где сеньор должен рассказать, что оно быстрее append, потому что оно функция, после чего рассказать про итераторы, генераторы, лямбды, монады и т.д. про range сказал, что оно генератор с какой-то оптимизацией - тушите свет, range - это sequence type. про dict'ы - хэш-таблица со слотами, к которым привязываются ключи через хэш-функцию, значение может быть только одно, разрешение коллизий происходит за счёт открытой адресации с пробированием, не знать про слоты в питоне в 2023 - кринж, интервьюер тоже слабак за "слишком много коллизий". дальше, похоже, ещё печальней. И вот с этими двумя я должен конкурировать?
@user-iv5co4lu9g
@user-iv5co4lu9g 3 ай бұрын
Не душни. Разумничался тут
@user-db3ut2eo2e
@user-db3ut2eo2e 3 ай бұрын
Подскажешь, где так подшарить для джуна)
@ypohut1673
@ypohut1673 2 ай бұрын
Ты миддл?
@forgotten_forbidden
@forgotten_forbidden Ай бұрын
ты джун?
@ironbondar
@ironbondar 2 ай бұрын
какой мерзкий интервьюируемый. (извините)
@Andron4iKTV
@Andron4iKTV 5 ай бұрын
Задачки не интересные. Такие смысл задавать ноль. Они не показывают в какой области человек силен. А только показывают помни ли он как что-то делаеться. Лучше или алго задачи либо уже спрашивать про штуки under the hood. Сорри но человек который проходит явно очень слабенький кодер. Его знания слабо связаны между собой и сразу видно что комп сайенс он плохо шарит. Честно я как человек который собеседования проводит не оценил бы человека выше мидла.
@zevsnoe
@zevsnoe 5 ай бұрын
Парень слабоват откровенно.. Половина вопросов - для мидлов.
@igorratnik2357
@igorratnik2357 5 ай бұрын
Контекстный менеджер или асинхронка. Это джунский уровень. Недавно на ютубе видел ролик, где чувак делал разбор тестовой задачи на джуна для авито. Асинхронка там присутствует.
@hellothere6696
@hellothere6696 3 ай бұрын
@@igorratnik2357а что нужно спрашивать на «сеньерском» уровне?
@user-iv5co4lu9g
@user-iv5co4lu9g 3 ай бұрын
​@@igorratnik2357 Ну дак завтра скажут, что джун должен разбираться и в ml, заменить девопс инженера, знать фронт. Бизнесу главное поменьше платить и чтоб джун всё знал. Просто идеальный работник
@daniyarkalmanbetov7271
@daniyarkalmanbetov7271 26 күн бұрын
@@hellothere6696 как написать питончик на чистом си
😱СНЯЛ СУПЕР КОТА НА КАМЕРУ⁉
00:37
OMG DEN
Рет қаралды 1,8 МЛН
Когда на улице Маябрь 😈 #марьяна #шортс
00:17
Tech check: Junior Python Developer | N-iX & Mate academy
1:57:34
Mate academy
Рет қаралды 2,7 М.
Собеседование python разработчик.Юлиян
1:03:43
Андрей += Пронин
Рет қаралды 10 М.
Собеседование на позицию Senior Python Developer 4000-5000$ #11
1:12:32
Python собеседования
Рет қаралды 10 М.
Пришёл Intern - оказался JUNIOR Strong / Интервью на позицию DevOps Engineer / Мок собес  / 1
1:36:38
Вселенная и Специальная теория относительности.
3:51:36
ЗЛОЙ АНАЛИТИК ВСЕЛЕННОЙ.
Рет қаралды 6 МЛН
APPLE УБИЛА ЕГО - iMac 27 5K
19:34
ЗЕ МАККЕРС
Рет қаралды 79 М.
The power button can never be pressed!!
0:57
Maker Y
Рет қаралды 37 МЛН
ИГРОВОЙ ПК от DEXP за 37 тысяч рублей из DNS
27:53
Photo editing changing Boder Work solution New tools
0:52
UNIQUE PHOTO EDITING
Рет қаралды 220 М.