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

  Рет қаралды 6,324

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

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

7 ай бұрын

Соберемся на публичное собеседование на 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
@ubuhobbit
@ubuhobbit 6 ай бұрын
It would be great if We will see Vitaly Likhachov's Technical interviews in here again !
@__init__.
@__init__. 6 ай бұрын
Ради интереса замерил, что будет быстрее для word.upper() Для 50 миллионов значений: for took 3.159 seconds list_comp took 3.371 seconds map took 2.777 seconds
@user-qj8fv8zd1f
@user-qj8fv8zd1f 7 ай бұрын
Задавать задачку на собеседование а-ля "это то, что я узнал вчера". Вопрос, нахрена это надо ?
@MrLotrus
@MrLotrus 2 ай бұрын
Это базовый вопрос на самом деле, который часто спрашивают
@alexanderastashov6046
@alexanderastashov6046 3 ай бұрын
Я просто оставлю это здесь: ➜ ~ 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 2 ай бұрын
получается или устаревшая оптимизация, или изначально что-то не то придумали
@oguretsagressive
@oguretsagressive Ай бұрын
Часто забывают что 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
@semenPupkov
@semenPupkov 6 ай бұрын
Если на реальных собесах сейчас спрашивают то, что тут - все это очень печально
@illiakaltovich
@illiakaltovich 7 ай бұрын
Ожидал разговор немного про другое, честно говоря, но да ладно P. S. Где-то на 1:01:05 стало интереснее
@igorratnik2357
@igorratnik2357 6 ай бұрын
Это собес на синьора, написать контекстный менеджер😅😅😅 . Кстати не первый собес вижу подобный. Вопрос именно по ним.
@gunlinux
@gunlinux 3 ай бұрын
Тема с append не раскрыта
@gaxeliy
@gaxeliy 6 ай бұрын
Слышу "Зачем писать на Python, если есть Go" - готовлю гневный Go-хейтерский пост в блоге =DDD
@TheTmntmike
@TheTmntmike 7 ай бұрын
1) Что за мода пошла делать list | None? Для этого есть Optional 2) 45:36 Для этого случая в питоне есть partial из functools. Как по мне это первое что должно было прийти в голову. Для меня показалось странным, что не упомянули. По результату хз. Без негатива, но моему человек максимум стремящийся мидл.
@user-yi7ln7ob4l
@user-yi7ln7ob4l 7 ай бұрын
уточка подъехала
@mrKazzila
@mrKazzila 7 ай бұрын
А в чем проблема с list | None?😬 Единственное, что работает с 3.10+ версии, а так из тайпинга тащить не нужно лишнее При просмотре собеса также подумал, что ответы не уровня синьера, но, возможно, на практике чел шарит больше чем в теории. Ну и сами вопросы из разряда "топ 50 вопросов на python developer позицию" все тоже самое спрашивают на стажеров\джунов, а хотелось бы что-то релевантное на высокую позицию😔
@MrLotrus
@MrLotrus 2 ай бұрын
1 - ну дык новый синтаксис подвезли. Почему бы не пользоваться вместо импорта Optional
@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 6 ай бұрын
Да, на мой взгляд намного лучше честно обозначать уровень своей компетенции, чем делать вид, что всё знает, а сам при этом плавает в простых вопросах.
@victorbrylew1775
@victorbrylew1775 2 ай бұрын
Собеседование в стиле "красноглазики пиписьками меряются". Из всего что прозвучало к практике разработки с натяжкой относится только контекстный менеджер в конце разговора. Ну вот обсудили про то как строки в 4к+ символов длиной начинают себя вести немного по-другому и хранятся раздельно. И что? Как это сакральное знание поможет вовремя закрыть таски в спринте?
@oguretsagressive
@oguretsagressive Ай бұрын
А какое знание поможет?
@victorbrylew1775
@victorbrylew1775 Ай бұрын
Циклы vs рекурсия и их влияние на алгоритмическую сложность. Кеши, их виды и как выбрать лучший под задачу. Потоки vs процессы vs асинхронщина, что лучше использовать в каких случаях. ОРМ vs чистый sql, что лучше в каком случае. И продолжать можно бесконечно. Вопросов куча.
@MrLotrus
@MrLotrus 2 ай бұрын
В "го ооп больше чем в питоне" - это конечно очень спорное утверждение
@clever_taussig
@clever_taussig 5 ай бұрын
Честно говоря смог только 30 минут.
@SergeyBaruzdin
@SergeyBaruzdin 7 ай бұрын
Из ребат кто-нибудь менторством занимается?
@ironbondar
@ironbondar 2 ай бұрын
какой мерзкий интервьюируемый. (извините)
@user-kz4hk9mb2u
@user-kz4hk9mb2u 6 ай бұрын
досмотрел до 22:10 дальше нет смысла, кандидат даже на джуна не знает: вопрос про list comprehensions для сеньора должен быть как минимум про nested comprehension, где сеньор должен рассказать, что оно быстрее append, потому что оно функция, после чего рассказать про итераторы, генераторы, лямбды, монады и т.д. про range сказал, что оно генератор с какой-то оптимизацией - тушите свет, range - это sequence type. про dict'ы - хэш-таблица со слотами, к которым привязываются ключи через хэш-функцию, значение может быть только одно, разрешение коллизий происходит за счёт открытой адресации с пробированием, не знать про слоты в питоне в 2023 - кринж, интервьюер тоже слабак за "слишком много коллизий". дальше, похоже, ещё печальней. И вот с этими двумя я должен конкурировать?
@user-iv5co4lu9g
@user-iv5co4lu9g 4 ай бұрын
Не душни. Разумничался тут
@user-db3ut2eo2e
@user-db3ut2eo2e 3 ай бұрын
Подскажешь, где так подшарить для джуна)
@ypohut1673
@ypohut1673 2 ай бұрын
Ты миддл?
@forgotten_forbidden
@forgotten_forbidden 2 ай бұрын
ты джун?
@Andron4iKTV
@Andron4iKTV 6 ай бұрын
Задачки не интересные. Такие смысл задавать ноль. Они не показывают в какой области человек силен. А только показывают помни ли он как что-то делаеться. Лучше или алго задачи либо уже спрашивать про штуки under the hood. Сорри но человек который проходит явно очень слабенький кодер. Его знания слабо связаны между собой и сразу видно что комп сайенс он плохо шарит. Честно я как человек который собеседования проводит не оценил бы человека выше мидла.
@zevsnoe
@zevsnoe 6 ай бұрын
Парень слабоват откровенно.. Половина вопросов - для мидлов.
@igorratnik2357
@igorratnik2357 6 ай бұрын
Контекстный менеджер или асинхронка. Это джунский уровень. Недавно на ютубе видел ролик, где чувак делал разбор тестовой задачи на джуна для авито. Асинхронка там присутствует.
@hellothere6696
@hellothere6696 4 ай бұрын
@@igorratnik2357а что нужно спрашивать на «сеньерском» уровне?
@user-iv5co4lu9g
@user-iv5co4lu9g 4 ай бұрын
​@@igorratnik2357 Ну дак завтра скажут, что джун должен разбираться и в ml, заменить девопс инженера, знать фронт. Бизнесу главное поменьше платить и чтоб джун всё знал. Просто идеальный работник
@daniyarkalmanbetov7271
@daniyarkalmanbetov7271 Ай бұрын
@@hellothere6696 как написать питончик на чистом си
Собеседование на позицию Senior Python Developer 4000-5000$ #11
1:12:32
Python собеседования
Рет қаралды 10 М.
UFC 302 : Махачев VS Порье
02:54
Setanta Sports UFC
Рет қаралды 1,1 МЛН
FOOTBALL WITH PLAY BUTTONS ▶️ #roadto100m
00:29
Celine Dept
Рет қаралды 75 МЛН
Descomplicando Aspectos com Java e Spring AOP!
17:38
Giuliana Bezerra
Рет қаралды 210
Виталий Лихачев: Один PostgreSQL, чтобы править всеми
1:19:18
СОБЕСЕДОВАНИЕ по PHP: к каким ВОПРОСАМ готовиться?
37:44
TeachMeSkills Школа программирования
Рет қаралды 30 М.
Собеседование Python developer на 4000$
25:22
Artem Levkivskyi
Рет қаралды 31 М.
Собеседование Junior C++
45:32
Ambushed Raccoon
Рет қаралды 97 М.
#miniphone
0:18
Miniphone
Рет қаралды 11 МЛН
How To Unlock Your iphone With Your Voice
0:34
요루퐁 yorupong
Рет қаралды 17 МЛН
Теперь это его телефон
0:21
Хорошие Новости
Рет қаралды 1,8 МЛН
Обзор игрового компьютера Макса 2в1
23:34
3.5.A Solar Mobile 📱 Charger
0:39
Gaming zone
Рет қаралды 320 М.