Monday, December 24, 2018

Список ресурсов и советов при подготовке к собеседованию в Amazon, Google, Microsoft

Хотел бы поделиться небольшим списком ресурсов (компактность важна в данном случае, временной ресурс чаще всего ограничен), который помог мне успешно пройти собеседование к компанию Amazon на позицию Software Development Engineer. Данный список является универсальным и поможет при подготовке к собеседованию в другие аналогичные компании, такие как Google, Microsoft, Facebook.

Алгоритмы

Как известно, на интервью в таких компаниях как Amazon данному аспекту уделяется большое внимание.
Список тем, которые я для себя выделил при подготовке к алгоритмическим вопросам:

  • Data Structures 
    • Array 
    • Linked List 
    • Tree (Tree, Binary Tree, Binary Search Tree, Red-Black Tree, etc.) 
    • Heap 
    • Hash Table 
    • Stack 
    • Queue 
    • Trie 
    • Graph (both directed and undirected) 
  • Sorting 
    • Bubble Sort 
    • Merge Sort 
    • Quick Sort 
    • Radix/Bucket Sort 
  • Traversals 
    • Depth First Search 
    • Breadth First Search


Материалы для подготовки:



Как я практиковался. Конечно же, хорошо известные http://leetcode.com и http://hackerrank.com, больший упор я сделал на LeetCode.
Два дополнительных совета, которые я хотел бы дать, касающихся практики решения алгоритмических задач:

  • Обязательно практикуйте решение алгоритмических задач на листке бумаги или маркерной доске (сейчас все чаще на собеседованиях можно использовать компьютер для этого, но все же лучше быть готовым и к варианту с маркерной доской), стараясь проговаривать варианты решений и мыслительный процесс вслух.
  • Платформы HackerRank и LeetCode приучают расслабляться по поводу первой версии своего решения, можно не переживать скомпилируется ли код, будет ли он работать на 100 процентов корректно, ведь с помощью платформы на проверку этого уходят секунды и можно быстро будет поправить свой код, увидев ошибки компиляции или тестов. Мой совет при подготовке к собеседованию, постараться с первого же своего submit'а стремиться к правильному решению, ведь на собеседовании не будет платформы, которая быстро укажет на эти мелкие проблемы и придирчивый интервьювер может посчитать это серьезной проблемой.

System design

Материалы для подготовки:
Здесь, конечно, тоже необходимо попрактиковаться перед реальным собеседованием. Я несколько раз потренировался в решение задач по System Design, с использованием специально приобретенной для этого маркерной доски.

Поведенческие вопросы (behavioral interview)

В Amazon уделяют внимание и данной категории вопросов в процессе собеседования, поэтому я советую не оставлять данный вопрос без внимания и потратить какое-то время на подготовку к этому тоже:

Пробное интервью

Я бы порекомендовал найти товарища, который поможет провести пробное интервью и пройтись по озвученным выше темам. Я такого товарища найти в момент подготовки не смог, поэтому воспользовался данным сервисом http://www.gainlo.co, естественно, он платный, но считаю, что мне это помогло, даже несмотря на то, что опыт собеседований в компанию уровня Amazon у меня уже был.

6 comments:

  1. It is very good and very informative. There is a useful information in it.Thanks for posting...
    https://www.apponix.com/

    ReplyDelete
  2. Good explanation I loved it
    Sanjary Kids is one of the best play school and preschool in Hyderabad,India. Give your child the best preschool experience by choosing the best playschool of Hyderabad in Abids. we provide programs like Play group,Nursery,Junior KG,Senior KG,and provides Teacher Training Program.
    ­play school in hyderabad

    ReplyDelete
  3. Wow! this is Amazing! Do you know your hidden name meaning ? Click here to find your hidden name meaning

    ReplyDelete