У меня тоже был опыт с тиньком недавно. Общался на собесе с девочкой hr. В конце беседы дали тест на их платформе, и тут началось. Был, кажется 21 вопрос. По 7 из них мне были не очень понятно, что от меня ждут то есть была довольно спорная формулировка(как минимум для меня), так же в тесте были задачки на написания кода - там вылезла багулина и кнопка "Выполнить" не нажималась нормально. В итоге я не набрал нужное количество баллов и решил для себя, что техническую часть на едине с hr больше никогда не буду решать.
Наткнулся на статью думал, что будет интересно так как сам сейчас могу перейти с питона на гошку. Читаю статью вижу раз за разом упоминание яндекс практикума, начинает надоедать и настораживать. Дочитал до конца - решил посмотреть, как часто встречается слово "практикум" - оказалось 17 раз(учитывая заголовки и теги). Поднимаю глаза на теги - вижу "блог компании Яндекс Практикум". Я, конечно, понимаю реклама(но язык не повернется назвать ее нативной). В общем вся эта реклама оставляет негативные эмоции после прочтения из статьи даже, если она неплохая.
Ахаха. Вот это правда смешно, в работе у меня такого не было, только на литкоде. Но все же решение задач такого уровня скорее плюс, чем минус(по моему мнению). Но это не должно быть решающим фактором при найме, а лишь небольшим преимуществом.
Есть 2 списка посещенные страницы и рекомендуемые. Посещенные [5, 6, 9], Рекомендуемые [9, 1, 4] Нужно вернуть список рекомендуемых, исключая посещенные, с той же сортировкой. Размеры список могут быть разными могут быть разными.
В этом примере результатом будет [1, 4] только в этой последовательности.
Мое решение: Я сделал так - завернул посещенные в set(чтобы можно было искать за O(1)). Итерировался(зная индекс) по посещенным - смотрел есть ли в рекомендуемых и если да - удалял.
Сам сейчас прохожу много собеседований(ищу новое место) и выделяю для себя ряд забавных моментов.
кандидат должен уметь вообще все:
computer science
алгоритмы и структуры данных
свое направление (frontend, backend, …)
систему задизайнить
а еще коммуникативные навыки должны быть на пределе.
Вот это на самом деле довольно забавный момент, действительно люди хотят, чтобы ты знал все это еще и на очень глубоком уровне. То есть ты должен на протяжении лет 15 все это выучить, применить на проектах, знать, как все реализовано под капотом, все преимущества и недостатки, сложность всего этого, но платить мы тебе будем не сильно больше мидла.
Так же по обратной связи за частую стандартная отписка происходит. Недавно проходил собеседования с Авито - прошел первую секцию на аглоритмы без проблем. Далее, чтобы ускорить процесс попросил оставшиеся 2 секции поставить в 1 день. Мне их поставили и получилось такое: 2я секция решил задачу, в ОС сказали, что решил ее не оптимально (честно, нет вариантов, как можно решить оптимальнее). Хотел постичь тайну оптимального решения этой задачи - мне сказали, что такое они не разглашают, чтобы не слить свои задачи(хотя, суть задачи я помню и так и слить нет никаких проблем). Далее были действительно некоторые спорные моменты по одной из технологий, которую я знаю не на глубоком уровне. 3я секция - проектирование системы, проектировали начальную версию твиттера, как мне показалось - прошло все хорошо(учел все моменты, отвечал на доп. вопросы интервьюера). В итоге мне на эту секцию не дали фидбека вообще потому что по результатам 2го этапа я у них не прошел бы дальше. Итого казалось бы большая компания, а нормального фидбека от них не получить, что уж тут говорить о мелких
Я, в случае, если метод принимает 3+ аргумента сразу разному каждый из них на новую строку, для лучшей читаемости, а рядом ставлю тип, что никак не увеличивает количество строк.
Если говорить про 1-2 аргумента - оставляю их на одной строке и на ней же добавляю типы, что так же никак не увеличивает количество строк.
Спасибо про замечание с кодом с картинками. Это моя первая подобная статья и я вообще не подумал, что их можно вставлять в виде текста и так будет комфортнее читать.
Поделись. У меня на 70% собеседований были задачи с литкода)
Странный вопрос. Если ты хочешь получать достойную оплату за работу - с тебя будут много спрашивать.
У меня тоже был опыт с тиньком недавно. Общался на собесе с девочкой hr. В конце беседы дали тест на их платформе, и тут началось. Был, кажется 21 вопрос. По 7 из них мне были не очень понятно, что от меня ждут то есть была довольно спорная формулировка(как минимум для меня), так же в тесте были задачки на написания кода - там вылезла багулина и кнопка "Выполнить" не нажималась нормально. В итоге я не набрал нужное количество баллов и решил для себя, что техническую часть на едине с hr больше никогда не буду решать.
Наткнулся на статью думал, что будет интересно так как сам сейчас могу перейти с питона на гошку. Читаю статью вижу раз за разом упоминание яндекс практикума, начинает надоедать и настораживать. Дочитал до конца - решил посмотреть, как часто встречается слово "практикум" - оказалось 17 раз(учитывая заголовки и теги).
Поднимаю глаза на теги - вижу "блог компании Яндекс Практикум". Я, конечно, понимаю реклама(но язык не повернется назвать ее нативной). В общем вся эта реклама оставляет негативные эмоции после прочтения из статьи даже, если она неплохая.
Ахаха. Вот это правда смешно, в работе у меня такого не было, только на литкоде. Но все же решение задач такого уровня скорее плюс, чем минус(по моему мнению). Но это не должно быть решающим фактором при найме, а лишь небольшим преимуществом.
Нет, списки были не сортированными, так да взял бы 2 указателя
Есть 2 списка посещенные страницы и рекомендуемые.
Посещенные [5, 6, 9], Рекомендуемые [9, 1, 4]
Нужно вернуть список рекомендуемых, исключая посещенные, с той же сортировкой. Размеры список могут быть разными могут быть разными.
В этом примере результатом будет [1, 4] только в этой последовательности.
Мое решение:
Я сделал так - завернул посещенные в set(чтобы можно было искать за O(1)). Итерировался(зная индекс) по посещенным - смотрел есть ли в рекомендуемых и если да - удалял.
Сам сейчас прохожу много собеседований(ищу новое место) и выделяю для себя ряд забавных моментов.
Вот это на самом деле довольно забавный момент, действительно люди хотят, чтобы ты знал все это еще и на очень глубоком уровне. То есть ты должен на протяжении лет 15 все это выучить, применить на проектах, знать, как все реализовано под капотом, все преимущества и недостатки, сложность всего этого, но платить мы тебе будем не сильно больше мидла.
Так же по обратной связи за частую стандартная отписка происходит. Недавно проходил собеседования с Авито - прошел первую секцию на аглоритмы без проблем. Далее, чтобы ускорить процесс попросил оставшиеся 2 секции поставить в 1 день. Мне их поставили и получилось такое:
2я секция решил задачу, в ОС сказали, что решил ее не оптимально (честно, нет вариантов, как можно решить оптимальнее). Хотел постичь тайну оптимального решения этой задачи - мне сказали, что такое они не разглашают, чтобы не слить свои задачи(хотя, суть задачи я помню и так и слить нет никаких проблем). Далее были действительно некоторые спорные моменты по одной из технологий, которую я знаю не на глубоком уровне.
3я секция - проектирование системы, проектировали начальную версию твиттера, как мне показалось - прошло все хорошо(учел все моменты, отвечал на доп. вопросы интервьюера). В итоге мне на эту секцию не дали фидбека вообще потому что по результатам 2го этапа я у них не прошел бы дальше.
Итого казалось бы большая компания, а нормального фидбека от них не получить, что уж тут говорить о мелких
Попробую воспользоваться матрицей, спасибо)
Подскажите в каких аспектах? Мало знаком с Flask
Если бы она тут была - это был бы уже не python)
Я, в случае, если метод принимает 3+ аргумента сразу разному каждый из них на новую строку, для лучшей читаемости, а рядом ставлю тип, что никак не увеличивает количество строк.
Если говорить про 1-2 аргумента - оставляю их на одной строке и на ней же добавляю типы, что так же никак не увеличивает количество строк.
Расскажи в чем конкретно был гемор? Неправильно определили типы?
Сложнее и дольше - да. Но на действительно больших проектах это будет работать стабильнее)
Да, тот же FastApi завязан на них
Есть такое) С модулем typing, как по мне получился более выразительный пример. Хорошо, что не останавливался на этом вопросе, а решил его опустить
Спасибо про замечание с кодом с картинками. Это моя первая подобная статья и я вообще не подумал, что их можно вставлять в виде текста и так будет комфортнее читать.
Интересная картинка, кажется та же проблема остается по сей день в JS?)
Да, порой с MyPy приходится потанцевать, но мое мнение - он все же помогает повысить стабильность системы.
Начинающие питонисты, смотрите лучше на FastApi. Не нужен вам этот flask))