Сможете ли вы пройти собеседование в Microsoft всего за 2 месяца? Да, это возможно при правильном планировании и дисциплине. Собственно, это относится к любой подготовке к интервью. Я это сделал!!

Жизнь до Microsoft

Я не IITian, ​​но мои мечты не меньше. Я получил инженерное образование в области информационных технологий в Университете Пуны, и, как каждому ребенку 90-х, мне предложили устроиться на работу, чтобы покрыть мои расходы и быть довольным этим. Но я не был. Я знал, что хочу добиться Большого, и работа в одном из FAANG была моей мечтой. Таким образом, я начал планировать свой Большой Переключатель сразу после того, как закончил свой первый год профессионального опыта.

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

Итак, вы можете спросить, что еще требуется?

Обладая отличными навыками кодирования, вам также необходимо иметь:

  1. Отличное знание структуры данных
  2. Знание большинства алгоритмов
  3. Навыки проектирования на системном уровне

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

Было совершенно ясно, что мне нужен четкий план, который можно быстро выполнить.

Мой план

  1. Изучите структуры данных
  2. Практические проблемы
  3. Читать об алгоритмах
  4. Читать Проектирование системы
  5. Начать подачу заявки
  6. Повторить

В Интернете доступно много материалов по каждой из вышеперечисленных тем, но это может оказаться недостатком, поскольку может привести к пустой трате времени, а не к помощи. Таким образом, я решил придерживаться только нескольких ресурсов:

  1. «Взлом книги интервью по кодированию» для структур данных и проблем
  2. «GeeksForGeeks» для решения задач
  3. «Видео на YouTube» для проектирования системы
  4. Наставник для пробных интервью, чтобы дать честный и жестокий отзыв.

Выбор языка программирования также важен, поэтому я выбрал C++, хотя не использовал его в своей профессиональной жизни. Мне было очень комфортно с ним.

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

Я связался со старым другом, работавшим в Microsoft, и попросил его стать моим наставником. Он убедился после 30 минут мольбы. Его основные действия заключались в том, чтобы держать меня в курсе и периодически брать пробные интервью.

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

Детальный план

Затем последовал более подробный и четкий план, также поэтапный;

ЭТАП 1 (первые 30 дней)

  1. Прочтите структуры данных из книги Cracking the Coding Interview (CTCI) и решите ее основные вопросы.
  2. Попрактикуйтесь в вопросах из книги CTCI, но уделяйте каждому вопросу всего 30 минут. Если вопрос был каверзным, я записывал шаги на бумаге и приклеивал на стену, чтобы видеть каждый день.
  3. Читайте алгоритмы от GeeksforGeeks. Я читаю только основные алгоритмы, такие как сортировка, поиск, кучи max-min, DFS и BFS.
  4. Системные проекты были получены из YouTube. Я смотрел видео почти по каждому вопросу проектирования системы. Я просматривал по одному видео о проектировании системы в день и вскоре начал распознавать закономерность.

Через месяц я подал заявку в Amazon, Google и Microsoft через соответствующие страницы вакансий. Затем начался второй этап моей подготовки независимо от ответа. Мой мыслительный процесс был таким: «В любом случае я узнаю что-то, что будет использоваться либо сейчас, либо позже». Через несколько дней я получил ответ от Microsoft.

ЭТАП 2 (следующие 30 дней)

  1. Структуры данных из книги, а также GeeksforGeeks
  2. Вопросы о компании от GeeksforGeeks
  3. Биндж просмотрел все ранее просмотренные видеоролики о проектировании системы за 2 дня.
  4. Пробное интервью с моим наставником два раза в неделю.

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

Интервью

Мое собеседование состояло из 4 раундов, включая онлайн-тест, телефонное интервью и 2 очных интервью.

Онлайн-тест представлял собой комбинацию вопросов с несколькими вариантами ответов и двух несложных вопросов по кодированию.

Телефонное интервью представляло собой продолжительный часовой разговор, в ходе которого вопросы в основном касались технологий .net, компиляторов и облачных вычислений. Был 1 вопрос сортировки, который можно было легко решить с помощью «сортировки ведром».

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

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

Вещи, которые творили чудеса в моей подготовке

Не тратить долгие часы на решение одного вопроса. В самом начале я понял, что мне нужно быстро переходить от одного вопроса к другому. В самом начале мне удалось решить самостоятельно только 40% вопросов. Но я очень хорошо понимал вопросы, вместо того, чтобы просто ломать голову над решениями.

Прямых вопросов никогда не будет, поэтому сосредоточьтесь на понимании решений. Кроме того, я не тратил время на изучение очень сложных алгоритмов, таких как граф кратчайшего пути и т. д. Это сэкономило много времени и нервов. Я воспользовался этим шансом, и это сработало для меня.

В мире много компаний. Сосредоточьтесь на подготовке, а затем подавайте заявки в как можно больше компаний, не думая о результате.

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

Это была моя история того большого шага в моей жизни. Я знаю, что в Интернете уже есть много материалов по взлому интервью, так что составьте свой план сегодня, и если вам нужен наставник, то свяжитесь со мной на моем linkedIn.

Вы также можете использовать платформы, которые могут связать вас с существующими сотрудниками FAANG. Я рад познакомить вас с изменяющей жизнь платформой под названием «TheThrivingCareer».

https://thethrivingcareer.com/

Эта платформа предоставляет надлежащую дорожную карту для прохождения сложных технических интервью, таких как FAANG (то есть MAANG), и позволяет связаться с отраслевыми экспертами, чтобы развеять ваши сомнения и провести пробные интервью. На платформе есть список замечательных наставников на выбор.

Статью о том, как подготовиться к собеседованию по системному дизайну, вы можете найти здесь.

Удачи!!