Здравствуйте, Timur I., Вы писали:
TI>Кто там был, расскажите, пожалуйста, какие задачки (кроме копирующего конструктора ) там дают ?
Примерно можно у них на сайте в вакансиях посмотреть.
Но это только одна пятая вопросов, по языку и STL
Дальше были вопросы по системе (примитивы синхронизации, COM, multithreading — race conditions), затем по соображалке (придумать алгоритм как равномерно крутить банерами), про проектированию объектных моделей (иерархия фигура — квадрат — прямоугольник, к примеру).
Всякую фигню про "определить фальшивую монету за 15 взвешиваний" не дают.
Дальше меня гонять не стали (должны были гонять и по более хитрым задачам на проектирование и еще что то), но я соображал настолько туго, что после 3 часов бесед меня выпроводили
В принципе, если знать заранее что от тебя ждут — подготовиться можно, я бы, по крайней мере, продвинулся дальше. А так было непонятно — дают задачу — и ждут ответа. Я сижу думаю как бы что по-красивше придумать (тупое решение то обычно сразу есть). А на самом деле им больше не конкретный ответ нужен был, а чтоб я сразу вслух начал рассуждать, пока им не надоест слушать, или они не услышат то что хотят услышать. Заодно, дают подсказки и ждут как быстро они до кандидата доходят.
Вообще, это было самое плотное собеседование за мою жизнь. Плотнее, чем Setdsp и Vocord, в примеру.
Щас придет Anatolix и скажет что все не так
Re[2]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, aik, Вы писали:
aik>Здравствуйте, Timur I., Вы писали:
TI>>Кто там был, расскажите, пожалуйста, какие задачки (кроме копирующего конструктора ) там дают ?
aik>Примерно можно у них на сайте в вакансиях посмотреть. aik>Но это только одна пятая вопросов, по языку и STL
aik>Дальше были вопросы по системе (примитивы синхронизации, COM, multithreading — race conditions), затем по соображалке (придумать алгоритм как равномерно крутить банерами), про проектированию объектных моделей (иерархия фигура — квадрат — прямоугольник, к примеру).
aik>Всякую фигню про "определить фальшивую монету за 15 взвешиваний" не дают.
aik>Дальше меня гонять не стали (должны были гонять и по более хитрым задачам на проектирование и еще что то), но я соображал настолько туго, что после 3 часов бесед меня выпроводили
aik>В принципе, если знать заранее что от тебя ждут — подготовиться можно, я бы, по крайней мере, продвинулся дальше. А так было непонятно — дают задачу — и ждут ответа. Я сижу думаю как бы что по-красивше придумать (тупое решение то обычно сразу есть). А на самом деле им больше не конкретный ответ нужен был, а чтоб я сразу вслух начал рассуждать, пока им не надоест слушать, или они не услышат то что хотят услышать. Заодно, дают подсказки и ждут как быстро они до кандидата доходят.
aik>Вообще, это было самое плотное собеседование за мою жизнь. Плотнее, чем Setdsp и Vocord, в примеру.
aik>Щас придет Anatolix и скажет что все не так
А можно поподробнее?
Re: Задачки на собеседовании в Яндексе на C++ программиста
Потом спросили задачу про нахождение максимимальной суммы подпоследовательности последовательности за одну проходку.
Не сказать даже чтоя все отвечал (я думаю чуть больше половины ответов сразу, остальные только после подсказок, впрочем, с подсказками ответил на все), но действительно пытался получив каждую задачу рассуждать вслух.
Потом долго думали позвали на второе собеседование, на котором уже менеджеры проектов и HR задавали вопросы более частного плана (так что каждому я думаю там свое задают). Где-то там что-то не понравилось и все таки не взяли меня =)
Re[3]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, branco, Вы писали:
B>А можно поподробнее?
подробнее расскажут в яндексе. ты подготовиться что ли хочешь? ну так я тебе рассказал все что тебе могло помочь, остальное ты либо сразу знаешь, либо быстро не выучишь.
Re[2]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, aik, Вы писали:
aik>Щас придет Anatolix и скажет что все не так
Все не так. Потому что придется все засвеченные задачи поменять.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[3]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, dupamid, Вы писали:
A>>Все не так. Потому что придется все засвеченные задачи поменять. D>Значит задачки не достаточно хорошы, если их опубликование сводит их ценность на нет
А можно эту мысль развить?
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[5]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, Anatolix, Вы писали:
A>Здравствуйте, dupamid, Вы писали:
A>>>Все не так. Потому что придется все засвеченные задачи поменять. D>>Значит задачки не достаточно хорошы, если их опубликование сводит их ценность на нет A>А можно эту мысль развить?
видимо, имеются в виду вопросы, которые даже при правильном ответе (если такой существует) предполагают последующую развернутую дискуссию.
типа "чем отличается ссылка от указателя" и дальше про ссылки, перегрузку операторов, время жизни объектов и т.д., куда угодно.
Или упомянутый квадрат-прямоугольник — тоже отличная задача, можно крайне много обсудить, так что свети ее, не свети — если ты не понимаешь принципов ООП — просто знание правильного ответа тебе не поможет.
В этом смысле вообще хороши задачи, для ответа на которые кандидату придется много говорить — в процессе изложения ответа/решения наверняка всплывает что-нть, за что можно зацепиться и понять, насколько человек глубоко в теме и как у него со смежными темами обстоят дела.
Здравствуйте, Anatolix, Вы писали:
aik>>Щас придет Anatolix и скажет что все не так A>Все не так. Потому что придется все засвеченные задачи поменять.
ну во1ых, все мною перечисленное должно угадываться просто по профилю вашей конторы.
во2ых, там у вас такой перекрестный допрос, и настолько до черта вопросов что тупо выучить будет сложно, а если кто и выучил — он однозначно смышленый чувак
Re[6]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, jazzer, Вы писали:
J>видимо, имеются в виду вопросы, которые даже при правильном ответе (если такой существует) предполагают последующую развернутую дискуссию. J>типа "чем отличается ссылка от указателя" и дальше про ссылки, перегрузку операторов, время жизни объектов и т.д., куда угодно. J>Или упомянутый квадрат-прямоугольник — тоже отличная задача, можно крайне много обсудить, так что свети ее, не свети — если ты не понимаешь принципов ООП — просто знание правильного ответа тебе не поможет. J>В этом смысле вообще хороши задачи, для ответа на которые кандидату придется много говорить — в процессе изложения ответа/решения наверняка всплывает что-нть, за что можно зацепиться и понять, насколько человек глубоко в теме и как у него со смежными темами обстоят дела.
Тем не менее правда ведь, что зная правильный ответ все равно сильно легче?
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[4]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, aik, Вы писали:
aik>Здравствуйте, Anatolix, Вы писали:
aik>>>Щас придет Anatolix и скажет что все не так A>>Все не так. Потому что придется все засвеченные задачи поменять.
aik>ну во1ых, все мною перечисленное должно угадываться просто по профилю вашей конторы. aik>во2ых, там у вас такой перекрестный допрос, и настолько до черта вопросов что тупо выучить будет сложно, а если кто и выучил — он однозначно смышленый чувак
ИМХО — многие на таких собеседованиях действительно теряются настолько, что мало на что могут ответить.
Особенно если собеседующих несколько.
Re[5]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, Anatolix, Вы писали:
A>>>Все не так. Потому что придется все засвеченные задачи поменять. D>>Значит задачки не достаточно хорошы, если их опубликование сводит их ценность на нет A>А можно эту мысль развить?
На мой взгляд, вопросы на собеседовании должны быть такими, чтобы было о чем поговорить и простого знания ответа не достаточно (ему могли этот вопрос задавать где-то еще и т.п. так что ответ он знает). Важно чтобы была возможность отличить понимает ли человек о чем говорит или просто заучил. А если он пришел на собеседование слегка подготовившимся то это даже лучше, можно углубиться дальше. И к тому же подготовка это плюс человеку — значит его интересует вакансия. Пример хорошего вопроса, на мой взгляд "абстрактные типы данных, что вы о них знаете, примеры как вы их использовали". Готовиться к этому вопросу почти бесполезно, его нужно просто понимать, так как этот вопрос может увести куда угодно и подготовиться по всем фронтам нельзя, если не знать что такое АТД.
Здравствуйте, navy, Вы писали:
N>Здравствуйте, Timur I., Вы писали:
TI>>Кто там был, расскажите, пожалуйста, какие задачки (кроме копирующего конструктора ) там дают ?
N>Меня сначала спрашивали стандартные задачки по С++/STL N>Упор на алгоритмы, сортировку, хешконтейнеры, связные списки.
Типчные вопросы. Самое смешное окажеться, что писать будешь на ANSI-C или, еще хуже, на Жабе.
Re[6]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, jazzer, Вы писали:
J>Или упомянутый квадрат-прямоугольник — тоже отличная задача, можно крайне много обсудить, так что свети ее, не свети — если ты не понимаешь принципов ООП — просто знание правильного ответа тебе не поможет.
О да! Аж воспоминания нахлынули — одна из моих любимых тем для разговора с кандидатами во времена, когда я активно проводил собеседования. Помню, что несмотря на кажущуюся простоту, буквально единицы, как ни странно, могли грамотно аргументировать выбор того или иного варианта ответа.
Re[7]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, Anatolix, Вы писали:
A>Тем не менее правда ведь, что зная правильный ответ все равно сильно легче?
Зависит от вопроса.
Простая просьба объяснить, почему этот ответ правильный, сразу выявляет уровень знаний, особенно если тут же задать вопрос "по диагонали".
Скажем, вот знает человек, что поиск в std::map логарифмический — так это ему не поможет ответить на близлежащие вопросы:
1) объяснить, почему логарифмический (хотя бы на пальцах)
2) ответить, какая сложность поиска в хэшированном контейнере
3) если скажет, что мап обычно реализуется через дерево — сразу возникает целая толпа вопросов по деревьям вообще
4) если скажет, что ключи всегда отсортированы — еще большая толпа вопросов по сортировке
5) раз уж зашла речь о STL — заодно требования к контейнерам, к элементам контейнеров, к предикатам
6) отсюда можно заглянуть в гости к Мейерсу с его удалением в цикле
и т.д.
аналогично с наследованием квадрата-прямоугольника — начать с того, что короткого правильного ответа при стандартной формулировек вопроса просто не существует А дальше, в зависимости от того, как свой ответ объяснил соискатель, можно пойти говорить про принцип Лисков и остальные принципы ООП, а там уже рукой подать до паттернов, и т.д.
А если человек, узнав правильный ответ на какой-то вопрос, действительно заботает все вокруг него, чтобы быть готовым к любому вопросу вбок — так это уже реально довольно-таки знающий человек получится
У меня вот совсем недавно такой случай был — собеседовал по телефону (т.е. обкладывайся книжками, собирай рядом коллег и т.п. — никто не узнает) нескольких человек из одной и той же (!) фирмы.
Задавал одни и те же вопросы. Первый ответил неправильно, я ему сказал правильный ответ. Следующий отвечает правильно, прошу объяснить — но пасаран. Попытки придумать объяснение на ходу приводят к новым вопросам с моей стороны уже по тому, что он только что сказал. Следующий — то же самое, с некоторыми вариациями.
Вопрос был простой, кстати, не скрываю — вариации на тему "что есть ссылка в С++?"
Правильные ответы, как водится, в Стандарте
Здравствуйте, aik, Вы писали:
aik>Здравствуйте, Timur I., Вы писали:
TI>>Кто там был, расскажите, пожалуйста, какие задачки (кроме копирующего конструктора ) там дают ?
Здравствуйте, Anatolix, Вы писали:
A>Здравствуйте, aik, Вы писали:
aik>>Щас придет Anatolix и скажет что все не так
A>Все не так. Потому что придется все засвеченные задачи поменять.
Особенно про конструктор копирования. Это самая завальная задача
Re[7]: Задачки на собеседовании в Яндексе на C++ программис
Здравствуйте, Melo, Вы писали:
M>Здравствуйте, jazzer, Вы писали:
J>>Или упомянутый квадрат-прямоугольник — тоже отличная задача, можно крайне много обсудить, так что свети ее, не свети — если ты не понимаешь принципов ООП — просто знание правильного ответа тебе не поможет.
M>О да! Аж воспоминания нахлынули — одна из моих любимых тем для разговора с кандидатами во времена, когда я активно проводил собеседования. Помню, что несмотря на кажущуюся простоту, буквально единицы, как ни странно, могли грамотно аргументировать выбор того или иного варианта ответа.
А можно подробнее, что за прямоугольники-треугольники?