Pull to refresh

Comments 24

Поясните, пожалуйста, зачем нужны эти курсы? В чем смысл натаскивания на собеседования?

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

Но ведь если кандидат не использовал их в своей работе (или в своих учебных проектах), то это довольно странные знания. Ну объяснять научился, а понимать, на мой взгляд, без практики — нет. Тогда к чему это?

Бюрократическое решение проблемы найма. Это знаете как у врачей, у них должна быть какая-то бумажка(сдача на категорию или типа того) не старше года, иначе нанимать их нельзя. Никому не нужны эти алгоритмы(ну почти). Просто если вы прошли собес по алгоритмам, то Яндекс может вам доверять. А тем, кто про свой опыт красиво наговорил, доверять не может, видимо много самозванцев попадает или ещё что. Короче, для их системы это работает. А связи "Хороший разработчик должен вслепую на листочке решить все задачи по алгоритмам" тут нет, не ищите.

Дрессировка на прохождение собеседования — та же самая SEO-оптимизация: попытка занять место, не соответствующее реальным достоинствам. А то, что после окончания тестового периода от его услуг откажутся — это уже совсем другая история.

Если человек даже после курса смог прорешать задачи на интервью — то из него точно получится достойный программист. Научить перекладывать джейсоны и клепать формочки можно даже филолога. А вот алгоритмическое мышление и умение решать задачи доступно не всем.

Обратите внимание: в описании курса пишут про разбор алгоритмов, которые могут встретиться на собеседовании, но ни слова не пишут про изучение базовых свойств алгоритмов. Натаскивание на конкретные задачи при отсутствии изучения теоретической базы.

Но если человека — не дав ему даже основ теории — натаскали решать определённые типы задач, то он и будет уметь решать только эти задачи — при этом нередко даже не понимая смысла вызубренного способа решения.
UFO just landed and posted this here

В большинстве случаев требуется не какой-то конкретный алгоритм или структура данных в чистом виде, а суметь понять, что конкретно надо применить в данной задаче. Тут важнее навык. Реализовывать красно-черное дерево никогда не понадобится ни в работе, ни даже на собесе. А вот задача, в решении которой участвует дерево - запросто. К тому же для многих задач нужны не готовые алгоритмы, а "подходы", например, то же ДП. В общем, без практического навыка не обойтись. А по стандартным алгоритмам надо помнить асимптотику, чтобы смекнуть асимптотику решения.

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

Решить задачу без понимания не получится. А тем более объяснить решение. Это не билет на теоретическом экзамене, где тупо выучил текст и зачитал его.

Осталось сделать обязательным прохождение алгоритмического собеседования для поступления в Яндекс.Практикум.

Появление этого курса от Яндекса (с их зарубами на собесах) выглядит как иллюстрация к "придумай проблему, продай решение"

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

Странно видеть столько негативных коментов.

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

Ну не хочется алгоритмов - не учите, делов то. Кому-то не нужно, а кому-то очень даже необходимо..

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

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

Яндекса — часто приходится иметь дело с алгоритмами в работе?

Могу сказать про гугл (работа над хромом). Динамическое программирование, дихотомию и всякие sliding window max приходилось писать. Плюс всякая математика вроде фильтров Калмана, регрессии и немного теории чисел понадобилось. Далеко не каждый день, да. Раз в пару месяцев что-то вот такое интересное высплывает. Но когда оно нужно — оно действительно нужно. Без знания об алгоритмах тупо не было бы даже мысли "а вот тут нужен алгоритм". Или задача была бы признана нерешаемой и расслаблены требования, или что-то наивное за O(2^n) сидело бы в коде вечно.

Ну т.е. достаточно универ закончить по профильной специальности ;)

UFO just landed and posted this here

Порой без пузырька чужую либу и не освоить...

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

Во всем Фаанге так. И многие западные компании это копируют.

Было бы замечательно, если бы пояса по C++ реанимировали

Sign up to leave a comment.