Меня недавно поместили в Microsoft IDC. Вот мой опыт интервью 🙂
Первые два раунда были проведены Cocubes.com в нашем кампусе. Другие раунды были на месте. Microsoft была объявлена компанией мечты в нашем кампусе, студенты потоков CSE / ECE / MCA / MTech имели право сидеть. Она пришла как для стажировки, так и для полной занятости.
Раунд 1: Техническая способность
Первый раунд состоял из 15 вопросов, которые нужно было выполнить за 30 минут.
MCQ были основаны на C.C ++, Java и некоторых вопросах операционной системы. Около 200+ из нашего колледжа собрались на этот раунд.
Раунд 2: Раунд онлайн-кодирования
После первого раунда около 100 (также состоящих из студентов) проходили отбор во второй тур. В этом раунде были заданы два вопроса по кодированию за 90 минут.
У всех разные вопросы. Вопросы, которые я получил, были:
- Если два массива представляют собой цифры одного массива, представляющие число, максимизируйте число, заменив его элементами второго массива.
например:
обр = {3,1,4,5,6}
rep = {1,9,5,2,3}после замены
обр = {9,5,4,5,6}
одну цифру респ можно использовать для замены только один раз.
Для этого почти каждый, кто получил этот вопрос, использовал метод грубой силы. Но я использовал другой подход. Я построил максимальную кучу массивов повторений. И запустил цикл, проверяющий, был ли максимальный элемент повторения больше, чем элемент в arr и затем заменил его в arr и удалил то же самое из maxheap. - Дана матрица, где каждая ячейка представляет значение прочности. Значение может быть положительным, отрицательным или нулевым. В каждой ячейке добавляется значение силы. Вы должны достичь от точки (0,0) до точки (m-1, n-1), если в любой точке сила становится нулевой или отрицательной, то вы не можете продолжить дальше. Найдите минимум Требуется сила, прежде чем начать, чтобы достичь конца матрицы.
например {{1, -3,0},
{-2,1, -1}} Ответ: 2 ((2 + 1 + (- 2) +1 + (- 1) = 1 пройденный путь)
Я дал решение DP, но не смог пройти несколько тестов в этом вопросе.
После этого тура около 15 студентов были включены в список (включая меня 😀). Через несколько дней мы получили эти результаты, а затем получили приглашение на собеседование на месте в MSIDC, Хайдарабад.
Раунд 3: Письменное кодирование
Около 30 студентов, состоящих из студентов других колледжей, также были вызваны на место. Это был письменный раунд. Каждому дали около 45 минут и 1 вопрос.
- Дан корень двоичного дерева, значения n и k. Найдите сумму узлов на расстоянии k от узла со значением n. Это похоже на вопрос о гиках -> http://espressocode.top/print-nodes-distance-k-given-node-binary-tree/
Я смог сделать это довольно быстро 😀 Я даже объяснил свой ответ персоналу, и он попросил меня написать разные типы тестовых случаев, чтобы полностью проверить, работает ли мой код на всех из них.
После этого тура около 14 человек были включены в шорт-лист.
Раунд 4: Техническое интервью
Это был раунд личного интервью. Интервьюер спросил меня о себе и о проектах, которые я сделал до сих пор. Мы кратко обсудили эти проекты.
Затем он дал мне два вопроса для решения:
- Найти и элемент в повернутом массиве http://espressocode.top/search-an-element-in-a-sorted-and-pivoted-array/
- Учитывая два связанных списка, оба представляют число. Создайте связанный список, содержащий его сумму
То же, что и -> http://espressocode.top/sum-of-two-linked-lists/
Это были довольно простые вопросы. Я знал решения и объяснил это интервьюеру. Он задал им несколько вопросов, казался удовлетворенным. Спросил меня, есть ли у меня какие-либо вопросы к нему. Хорошо, одна вещь, которую я понял после того, как дал интервью, когда он спрашивает кандидата о каких-либо вопросах, то вы всегда должны что-то задавать, показывает, что вы заинтересованы. Поэтому я спросил его о различных технологиях, над которыми будет работать новый SDE, и тому подобных вещах. У меня была довольно хорошая дискуссия с ним, он рассказал мне много вещей со своего конца тоже.
Я сделал это в следующем раунде, то 😀
Раунд 5: Техническое интервью
Этот раунд был о вопросах дизайна. Если вы пройдете предыдущие наборы собеседований, вы заметите, что Microsoft задает вопросы о дизайне, чтобы проверить способность кандидатов решать реальные проблемы. У каждого были разные вопросы в личном интервью. Вопрос, который я получил, был:
- Вы должны создать текстовый редактор, как блокнот. Вы обеспокоены следующими функциями — вставкой, удалением и поиском. Вы можете предположить, что другие функции, такие как сохранение, отображение текста и т. Д., Выполняются другим разработчиком. Вам просто нужно предложить, какие структуры данных вы бы использовали для эффективного выполнения соответствующих функций
— Он сказал мне не торопиться и дать решение. Я дал ему решение рассматривать текст как связанный список слов. Где каждый узел в связанном списке содержал строку слова и индекс. И для каждого узла в связанном списке у меня будет структура Trie. Я использовал три для эффективного поиска. То, что я предложил, это то, что я использую три, когда пользователь вводит слово и вставляет его в три, и лист этого слова будет содержать индекс этого слова плюс указатель на этот узел в связанном список Если предположить, что у дерева уже есть слово, то я увеличиваю количество слов в листе, и лист будет содержать вектор, в котором есть список индексов, где слово встречалось, и список указателей, где слово присутствует в списке. написал код и объяснил, как он может обрабатывать все угловые случаи. Мы обсудили решение, и он задал мне определенные вопросы по различным тестам. Мой подход справился с ними хорошо. Он казался довольным. Он добавил к вопросу, что поисковый запрос может содержать слова или фразы. Таким образом, мое использование индексов может справиться с поиском фразы 🙂. Я также предположил, что вместо структуры данных Trie мы могли бы использовать троичное дерево поиска, поскольку это было бы более эффективным с точки зрения пространства.
Я немного сомневался в этом раунде, но я прошел 😀 После этого раунда лишь немногие студенты прошли в последний тур.
Раунд 6: HR + Техническое интервью
Интервьюер был довольно опытным и очень приятным. Он спросил меня, как прошли мои предыдущие раунды. Он просматривал мой обзор результатов предыдущих раундов. Он посмотрел мое резюме и спросил меня о проектах, которые я сделал. Он увидел, что я проходил стажировку в IITB, поэтому он много спрашивал меня об этом проекте. Он также задал мне несколько основных вопросов по персоналу, например, почему Microsoft должна вас нанять? Где вы видите себя в следующие 5 лет? Он был очень впечатлен моей успеваемостью и моим рангом AIEEE. Спросил меня, как я справляюсь с экзаменами и входами на 12-ю доску. Он сделал это очень удобно, почти болтал и узнавал обо мне.
- Затем он спросил меня о вопросе, заданном мне в предыдущем раунде, т.е. текстовом редакторе. Я дал ему краткое объяснение моего подхода. Затем он дал мне еще один вопрос, основанный на текстовом редакторе. Он спросил меня, как я могу эффективно извлечь K наиболее часто встречающихся слов из текста. К счастью, я просто проходил этот вопрос как раз перед этим раундом 😀. Я предложил решение, используя Trie и Min Heap.
Аналогично -> http://espressocode.top/find-the-k-most-frequent-words-from-a-file/
Он попросил меня написать код для того же. Я записал это и объяснил ему. - Следующий вопрос, который он мне задал, был: — Учитывая двоичное дерево поиска, выведите путь, который имеет сумму, равную k, и имеет минимальные скачки. т.е. если есть несколько путей с суммой, равной k, то выведите путь с минимальным количеством узлов.
Сначала я дал ему подход грубой силы. Аналогично -> http://espressocode.top/root-to-leaf-path-sum-equal-to-a-given-number/
Но я знал, что дело не в том, что у нас есть дерево бинарного поиска. Таким образом, интервьюер дал мне несколько советов — например, каковы основные критерии BST. Я сразу понял, что минимальный путь всегда будет справа от узла, потому что он имеет большее значение. Я сказал ему решение, которое он казался удовлетворенным ..
Затем он спросил, есть ли у меня вопросы к нему. Поэтому я спросил его, где я могу улучшить себя, он сказал, что мне не нужно никаких улучшений, которые я делаю очень хорошо, и что я должен продолжать делать то, что я делаю. Это, безусловно, сделало мой день. Я задал еще пару вопросов о Microsoft и затем ушел.
Наконец, через неделю, когда пришли результаты, я получил письмо, которое я попал в шорт-лист на должность на полный рабочий день 😀
Подсказки :
- Хорошо разбирайтесь в структурах данных. Решите как можно больше проблем от Geeks4Geeks
- Будьте уверены в интервью. Имейте улыбающееся лицо и приспосабливайтесь к вопросу. Интервьюер может в любое время изменить или изменить вопрос, просто чтобы сбить вас с толку.
- Интервьюеры очень полезны, если вы чувствуете, что застряли, общайтесь с ними .. объясните свой подход, они дадут вам подсказки.
- Когда интервьюер задает вопрос, внимательно его слушайте, не спешите сразу же писать код. Спросите его о различных критериях и ограничениях, касающихся вопроса.
- Проверьте свой код со всеми возможными тестовыми примерами и перечислите их.
- Наконец, даже если вы не можете найти правильное решение, просто объясните свой подход. Рекрутеры анализируют, как вы решаете проблему, не обязательно, чтобы у вас было точное решение.
Благодаря geeksforgeeks это действительно помогло мне пройти подготовку к размещению. Широкий спектр вопросов о структурах данных, безусловно, очень помог.
Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.
Все проблемы практики для Microsoft !
Рекомендуемые посты:
- ServiceNow Интервью Опыт Oncampus
- Опыт интервью MathWorks (EDG, Oncampus)
- UHG Интервью Опыт | OnCampus- 2019
- InfoEdge Интервью Опыт | OnCampus-2019
- Опыт Microsoft Interview для работы на должности инженера-программиста в Microsoft Ireland Research
- Опыт интервью с Microsoft (полный рабочий день, 2018 г., Вашингтон, округ Колумбия, опыт работы 2,5 года)
- Microsoft Интервью Опыт | Комплект 151 (SDE-2 3,5 года опыта)
- Microsoft Интервью Опыт | Комплект 169 (SDE 2 для 3,5 лет опыта)
- Microsoft IDC Интервью Опыт | Набор 68 (для SDE)
- Microsoft Интервью Опыт
- Microsoft IDC Интервью Опыт
- Microsoft Интервью Опыт | SDE-II
- Microsoft Интервью Опыт | Комплект 166
- Microsoft Интервью Опыт | Набор 75 (для SDE II)
- Microsoft IDC Интервью Опыт | Установите 69 (для SDE)
0.00 (0%) 0 votes