Какой язык выбрать для собеседования?
Какую статью о прохождении технического собеседования не возьми, повсюду трубят:
«Выбирайте для интервью именно тот язык, который наиболее знаком для вас».
Согласитесь, подсознательно возникает желание подыграть интервьюерам. Особенно, когда в диалоге с рекрутером и в пригласительном письме совершенно точно указываются два «рекомендуемых» для прохождения интервью языка.
Есть пример
Как-то знакомому разработчику захотелось попробовать свои силы в прохождении интервью в Microsoft. И он не послушал совета от сообщества и выбрал для прохождения собеседования язык Java, думая, что это покажет возможность легко переключиться на C# – однозначного лидера среди языков разработки в этой компании.
Ему дали достаточно сложную задачу: придумать и реализовать алгоритм удаления неправильно расставленных скобок в строке. Это достаточно известная задача и вы можете попробовать решить её здесь
Он практически наизусть знал ход решения задачи и ему не приходилось что-либо выдумывать относительно самого каркаса реализации. Но эта точная картинка у него в голове была именно на языке Python, ведь это его основной язык разработки.
Весь синтаксический сахар, безусловно, есть и в Java. Но когда ты изо дня в день используешь ipython и все его быстрые подручные скрипты, то при попытке сделать какой-нибудь zip, map или filter на Java, можно просто впасть в ступор, не говоря о попытке вспомнить коллекцию, аналогичную namedtuple или counter. И в итоге напишешь некомпилируемый код, который, конечно, не позволит пройти интервью.
Вывод:
Никогда не стоит подыгрывать интервьюерам в выборе необходимого языка, да и вообще язык – просто средство реализации. Если вам близок Bash или C, то выбирайте его.
К счастью Python-разработчиков, в последнее время этот натиск относительно «рекомендуемых» компаниями языков спал. Да и сами гиганты IT-сообщества, такие как Google и Amazon, в приглашении на интервью всё больше и больше советуют использовать Python.
Желаю всем успехов на собеседованиях! Если интересно получить профессиональные компетенции и навыки программирования на языке Python, посмотрите нашу программу курса.
Есть вопрос? Напишите в комментариях!