Как стать автором
Обновить

Каким может быть алгоритмическое собеседование и как к нему подготовиться

Время на прочтение4 мин
Количество просмотров10K
Всего голосов 17: ↑11 и ↓6+5
Комментарии28

Комментарии 28

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

  2. Ребят из практикума, я понимаю, что вы разработчики платформы, но если там будет пробегать где продюссер, дайте ему по башке. Я тут на днях решил пробежаться по курсу инженера облачных платформ, ну там, от скуки. Притом, что я яндекс облаком пользуюсь, сделал некоторое число коммитов в документацию, регулярно общаюсь с поддержкой, тесты практикума посчитали, что знания у меня ну средненькие. Нет, в смысле я его даже прошёл, но мягко говоря я там фейспалмил регулярно. Как практикующий специалист могу сказать, что данный курс как бы больше вводит в заблуждение. Впрочем, я там в отзывах отписался.

  3. Сейчас, кстати, разбираюсь ещё с одним сервисом яндекса, не буду говорить с каким. Саппорт мой вопрос поставил в тупик. Как я понимаю, плоха не только внешняя документация, но и внутренняя. Так что толку от ваших алгоритмов, если примерно никто нормально не понимает, как работают ваши сервисы?

Согласен! Нужно быть специфическим яндекс подобным, чтобы с ними общаться на одном языке.

Такого собеседования в нормальной компании быть недолжно, насторожится и выбрать другую компанию

Перестать нести деньги в компании которые обещают сделать вас программистом, тестировщиком или еще кем либо за N месяцев, это еще один звоночек чтобы выбрать другого работодателя

Я ни разу не программист и видео еще не смотрел, но разве это не что-то типа кода ниже? Или тут смысл сделать все вручную?:

def solution(data):
____def check(x):
________nonlocal counter
________counter += not x
________return x
____counter = 0
____return list(filter(check, data)) + [0] * counter

(сорри, я настолько не программист, что даже не могу понять, как в этом редакторе отформатировать текст как код и как сделать, чтобы редактор не уничтожал пробелы)

Начните пустой абзац, слева будет знак +. Ткните в него и выберите "код". Появится поле для ввода кода. Или выделите текст, появятся кнопки над ним, выберите <>.

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

Я не питонист, т.ч. не уверен 100%, но я бы такое решение принял на "leaning no hire". Естественно, если у вас и остальные решения такого же уровня были бы. По одной этой простой задачке судить рано.

Как вы считаете, нормально ли, что вам приходится выпускать статьи "как пройти собеседование типа X в Яндекс" вместо того, чтобы придумать такие собеседования, которые бы реально отсеивали кандидатов по их профессионализму, а не по тому, как много они ваших статей прочитали?

Предлагайте! Только помните, что там сотни кандидатов сплошным потоком, надо сделать все более менее объективно, технологии внутри яндекса все проприетарные (так что по какому-нибудь условному реакту не погоняешь кандидата). А еще туда, несмотря на ненавистные всеми алго-собеседования, ломятся куча вайтишников и прочих самозванцев, ведь зарплаты там неплохие, да и строчка в резюме потом дает хороший буст к нанимаемости. И вам очень важно иметь низкое количетсов ложно-положительных результатов, ведь вы нанимаете и из других городов, и платите за переезд и большую зарплату.

Если стоит проблема большого количества кандидатов, и такие этапы позволяют их отсеить, зачем тогда писать статьи с помощью в прохождении яндексовых же собеседований? Делаю вывод, что отсеиваются недостаточно много.

Чтобы снижать ложное-отрицательные результаты.

Делаю вывод, что отсеиваются недостаточно много

Вы опечатались? По контексту подходит, что вы считаете, что отсеивается слишком много. Если бы отсеивалось недостаточно много, то наоборот вводились бы какие-то дополнительные секретные практики и каверзные вопросы.

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

Да, не совсем верно выразился, смысл хотел передать такой, что подходящих кандидатов в итоге совсем не остается.

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

Слушайте, а я подписывался, что их предоставлю, или что? Я даже не критиковал Яндекс в своем комментарии, я лишь вопрос задал, видят они в этом проблему или нет. К тому же это не только у них так и не только с алгоритмами, можно на System Design еще посмотреть, тоже в докладах или статьях на тему «как подготовиться» говорят «мы ожидаем, что кандидат почитал статьи и посмотрел видосы и понимает, как такие собеседования проходить, только там еще круче — готовиться решением задач не надо, а надо выучить скрипт, по которому надо отвечать интервьюверу так, как он этого ожидает.

Да, не совсем верно выразился, смысл хотел передать такой, что подходящих кандидатов в итоге совсем не остается.

Да не, остается. Просто если кандидаты будут заранее иметь представление о собеседовании, то они будут меньше тупить и паниковать. И общий уровень прошедших подрастет.

Что вы подразумеваете под профессионализмом?

Совокупность качеств, определяющих, будет кандидат справляться со своими будущими задачами на работе или нет. Для каждой вакансии и компании она своя, конечно.

Как определить, есть у кандидата эти качества (чем бы они ни были) или нет? По резюме? С его слов об опыте? У 99% соискателей на рынке РФ опыт вида "перекладывал жсоны в круд приложении с веб интерфейсом", по этому опыту невозможно понять, смогут ли они решать проблемы, которые возникнут завтра у компании масштабов яндекса. Что с ними делать, сразу реджект?

А вы намекаете, что их можно проверить только на алгоритмическом интервью? Ну это не так)))

Я намекаю на то что вы неверно понимаете назначение алгоритмического интервью) бигтех не нанимает людей на решение конкретных проблем, бигтех собирает крутые команды, которые смогут решать любые проблемы, которые перед бигтехом встанут завтра (и через год). На рынке исчезающе мало людей, обладающих опытом (или профессионализмом, как вам больше нравится), который релевантен для яндекса, когда яндекс кого-то нанимает, он практически всегда делает это на вырост. Главная задача всего дроча на собесах это определить, может ли кандидат вырасти, есть ли у него потенциал, стоит ли в него вкладывать кучу времени и денег. Алгособесы, которые по мнению людей снижают их шансы попасть в яндекс и за это их все ненавидят, на деле наоборот повышают эти шансы с 0 до приемлемых значений. У кандидата, не имеющего никакого интересного для яндекса опыта, есть шанс блеснуть на алгосекции и тем самым заинтересовать нанимающих.

Если что, я с яндексом никак не связан)

бигтех собирает крутые команды, которые смогут решать любые проблемы, которые перед бигтехом встанут завтра

Какие проблемы встают перед, например, фронтендерами и мобильщиками, где нужно деревья вращать? Да даже сами собеседующие сто раз извиняются на платформенной секции за алгоритмы, что вот так у нас исторически сложилось.

может ли кандидат вырасти, есть ли у него потенциал

То есть если я не зашел на литкод, то я не могу расти и потенциала нет, а если зашел и порешал easy-задачки (чего для алгосов в яндекс достаточно), то сразу и потенциал есть, и расти могу? Звучит как ни разу не сломанный процесс найма, определенно.

Я не фронтэндер и мобильщик, но подозреваю что им тоже нужно думать головой, есть корреляция между этим и вращением деревьев, поэтому через вращение деревьев удобно это проверять) Способность удерживать в голове информацию и корректно ей манипулировать (она же - алгоритмическое мышление) в принципе полезна во многих областях человеческой деятельности

если я не зашел на литкод

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

нужно думать головой, есть корреляция между этим и вращением деревьев, поэтому через вращение деревьев удобно это проверять

Еще раз. Не зашел на литкод — не умеешь думать головой. Порешал пару задачек — сразу научился. Правильно вашу логику понимаю?

Не решил задачи (medium, easy не берем), значит либо не зашел на литкод, либо не умеешь думать. Можно придумать еще каких нить экзотических вариантов вроде «гений у которого отключается мозг на собесах», или «второй Линус Торвальдс, но с литкодофобией», или чувак был с бодуна а так вообще он норм. Во всех случаях у компании нет ресурсов разбираться, что там по факту имеет место, ей надо не допустить фолс-позитив. Ради этого всеми гениями с литкодофобией придется пожертвовать, это намного лучше чем давать шансы и тратить кучу ресурсов на обучение только для того чтобы в конце понять что чувак не тянет. Так это работает в бэке. Не знаю насколько это рабочая тема для фронтэндеров и мобильщиков, пусть они сами разбираются)

Разумеется это будет работать только если у вас есть конкурс по сто человек на место. У яндекса он есть (наверное).

ни разу не сломанный процесс найма

Просто вы ожидаете что процесс найма будет минимизировать фолс-негативы, а он совершенно для другого оптимизирован, его задача минимизировать фолс-позитивы. Разумеется такой процесс подходит далеко не всем, если кто-то его внедряет бездумно - нуштош, земля ему пухом)

Начинайте приходить в форму заранее, если планируете сменить работу

Или не ходите на алгоритмические собеседования :D Нафига они сдались вообще кому-то?)

Они сейчас везде. Их не избежать

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

UPD: речь, конечно идёт о собеседованиях на middle/senior. С джунов, в общем-то, кроме алгоритмов и спросить обычно нечего.

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

Камон, ты либо тролль, либо сильно убежден в своей правоте. В первом случае все понятно, во втором тебе еще можно помочь.

Именно по этой причине в яндексе такой провал по многим проектам, баги, ошибки, отсутствие нормальной аналитики. А все потому что берут туда людей которые умеют решать задачки, а уровень senior+ идут уже в нормальные компании, где нужен опыт и знания. Благо от это треша как в яндекс и мейл-групп, много компаний уже отошли.

По многим проектам, но не повсем. Тем более, то что в опенсоурсе - довольно хорошие и полезные продукты - ClickHouse, YTsaurus, userver.
У самого был опыт прохождения трёх кругов секций в яндекс, собеседовали меня вполне адекватные люди, кроме последнего)
Сложилось впечатление, что самим собеседующим надоели эти алгоритмы и они рады просто о плюсах поговорить, все кроме последнего собеседующего)

Сейчас собеседование это не оценка знаний, умений и опыта и подходит ли кандидат на собеседуемую должность. А религиозный тотем, который нужно просто пройти, преодолеть чудище поганое. Несколько месяцев готовиться, заучивать фразы и т. д Что бы после всех техническим мытарств, тебе наконец позволили перекладывать json в json именно в их компании. Это победа, аминь.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий