Re: Интервью Microsoft MSN Search Team. Как это было.
От: Kart-shk  
Дата: 30.10.05 09:10
Оценка: 33 (8)
В конце октября в Москве компания Microsoft проводила интервью на позиции SDE и SDET (в основном на последнюю) для MSN Search Team. Читая сообщения на RSDN относящиеся к данной теме поймал себя на мысли, что господа побывавшие на интервью по каким-то причинам не хотят делиться теми вопросами которые были интервью. Хотя слово о не разглашении никто с никого не брал да и интервью уже закончились.
Этим сообщением постараюсь полностью осветить то как проходило интервью, что спрашивали, что ожидали от кандидатов.

Итак, что же было на интервью.
Сначала немного общих впечатлений. В назначенное время интервьюировали 5 кандидатов, был один рекрутер, который собственно и организовывал интервью, помощник рекрутера и 5 SDE и SDET из MSN Team. Было сказано, что каждый кандидат пройдет по 3 интервью, если они будут коллебаться в своем решении будет четвертое интервью (это общепринятая практика в Microsoft. Если вас оставляют на дополнительное интервью значит есть шансы, что возьмут, если не оставляют, соответственно “thank you and good bye”, хотя сами рекрутеры говорят, что это не так), а может быть и пятое. Интервьюеры были крайне благожелательны, мне показалось, что даже слишком. Это выражалось в том, что даже если ты, скажем при решении задачи, в чем-то ошибался, они продолжали кивать головой, говорить ОК, молодец мол, продолжай дальше. Каждое интервью длилось 45 минут. Если задачу решаешь быстро или быстро и хорошо отвечаешь на поставленный вопрос немедленно задают следующий, времени на подумать дают хоть все 45 минут, но это минус, потому что это означает, что кандидат застрял на первом же вопросе, поэтому думать приходилось быстро, отвечать почти сразу. После каждого 45 минутного интервью рекрутер, помощник и все интервьюеры собираются в отдельной комнате, где совещаются минут 10-15, потом каждый выходит к кандидатам и забирает следующего. Показалось, что у них существует некая система оценок, которые выставляются после каждого интервью, то есть следующий интервьюер уже знает чего ты стоишь от твоего последнего интервьюера. Всегда спрашивают в начале и в конце интервью есть ли у вас вопросы ко мне. На последнем интервью меня спросили как, мол тебе интервью. Рекрутер (Holly Peterson) постоянно спрашивала в перерыве как мы себя чувсвуем. Шутили не нужна ли кому медицинская помощь. Было видно, что рекрутеры получают удовольствие.
Что ожидали от кандидатов: быстроту мышления, знание алгоритмов, креативность, кодинг на С.
Чего не спрашивали вообще: программирование под Windows, С++.

Собеседование с SDE:
Есть веб-сервер принимающий запросы пользователей, есть веб-индекс хранящий в себе миллиарды страничек. Каждый из них состоит из сотен машин. Между веб-сервером и веб-индексом распологается веб-кеш, также состоящий из сотен машин.
— Как бы вы организовали веб-кеш. При этом учитывайте, что веб-кеш должен быть масштабируемым, отказоустойчивым (если одна или несколько машин выйдет из строя, это не должно повлиять на результат запроса)?
— Как вы будете заносить станички в кеш, как его обновлять, по каким критериям, какие структуры данных при этом использовать? Почему одни структуры данных будут более предпочтительны?
— Здесь просили написать функцию перестановки, других просили написать функцию сортировки (quick, merge).

Собеседование с SDET:
Команда разрабытывающая некий компонент выпускает каждый день новый build. Каждый новый build прогоняется через автоматические уже написанные тесты для тестирования API. Отчет о прогоне build’а публикается на веб-страничке, которая каждый раз обновляется. Скажем, на 13-ом build’е обнаружили, что какой-то тест дает ошибку. При этом ситуация сложилась так, что этот тест просто забыли прогонять с 4-го build’а, а до 4-го этот тест проходил нормально. У вас есть возможность проинсталлировать любой build, у вас есть исходники для каждого build’а, у вас есть сообщения от разработчиков какие изменения были внесены для каждого build’а вместе с исходниками этих изменений.
— Как вы будете искать с какого build’а тест перестал проходить?
— С чего вы начнете, как дальше будете действовать, почему?

Дана непрерывная последовательность от 0 до 99, дан массив чисел из указанного диапазона 2, 45, 76, 13, 55. Напишите фугкцию, которая печатает только те числа из диапазона, которых нет в данном массиве. Теперь оптимизируйте вашу функцию по скорости, по использованию памяти.

Есть компонент, который выполяет spell checking поискового запроса пользователя.
— Как вы будете тестировать компонент?

Назовите самые важные качества необходимые SDET. Миниум пять. Расскажите почему именно эти качества.


Дан двумерный массив A[x][y]=
{
{1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 }
};

Напишите функцию печатающую следующую строку значений из этого массива:
1, 2, 3, 4, 8, 12, 16, 15, 14, 13, 9, 5, 6, 7, 11, 10

Для понимания задачи напишите массив А[x][y] на бумаге так как он приведен здесь и проведите линию через значения первого ряда (зачеркните первый ряд) от 1 до 4, затем вниз по правой коллонке от 4 до 16, затем справа налево от 16 до 13, далее вверх от 13 до 5, слева направо от 5 до 7, вниз от 7 до 11, влево от 11 до 10.

Ваш коллега написал функцию (генератор случайных чисел) возвращающую случайные равновероятные значения от 1 до 5. Напишите функцию используя только этот генератор случайных чисел возвращающую случайные равновероятные значения от 1 до 6.

Puzzle:
Стрелочные часы показывают 3:30:10.
Найдите углы в градусах между часовой и минутной стрелкой, часовой и секундной.
Задача несколько хитрая... думаю сами догагаетесь почему


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