Чего ожидать и как добиться успеха.

Автор Логан Джонсон.

Внимание, мы переехали! Если вы хотите и дальше быть в курсе последних технических материалов Square, посетите наш новый дом https://developer.squareup.com/blog

Один мой друг-инженер недавно решил подать заявку в Square и попросил меня дать советы при прохождении собеседования. К счастью, я даю много интервью! Я собрал несколько заметок, затем поделился ими с другими интервьюерами на Square и попросил комментариев. Это наш коллективный совет при прохождении собеседования на пару Square.

Узнайте о нашем процессе

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

Практика игрушечных задач

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

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

Большинство проблем алгоритмически сфокусированы. Наборы задач, такие как Project Euler, полезны для формирования такого образа мыслей. Многие из нас рекомендуют такие книги, как Cracking the Coding Interview. Вам не нужно запоминать конкретные алгоритмы, просто введите свой мозг в этот режим.

Будь собой

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

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

Используйте любые ресурсы и ссылки, которые вы обычно использовали бы. Эффективное использование таких ресурсов, как Google и StackOverflow, не только приемлемо, но и приветствуется. Умение находить информацию - ключевой навык!

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

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

Просто делайте свое дело, а если сомневаетесь, спросите, что ищет интервьюер.

«Не бойтесь задавать вопросы. Это то, что показывает нам вашу способность критически мыслить и учиться вместе со своей командой ». Ханна Лау, инженер

Учить и учиться

Мы в Square увлечены любопытством, и наши любимые интервью обычно связаны с тем, что кто-то чему-то учится.

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

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

«Я видел сотни различных решений одного и того же вопроса на собеседовании - существует огромное пространство возможностей! Что интересно, так это то, что не существует единственного «правильного» ответа, это скорее путь к открытию. Мне нравится, когда мы узнаем что-то новое ». Мэтью Тодд, инженер

Продемонстрировать инженерное мастерство

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

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

Оптимизировать для готового

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

Сделайте необходимые и уместные компромиссы и вызовите их.

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

Компилировать рано, компилировать часто. Лучше решить первую половину задачи, чем не хватить времени и ничего не заработать. Это также поможет вам ускорить работу.

Расслабиться!

Мы хотим нанять вас, а не держать вас в стороне! Наш идеальный результат - это если вы поработаете с нами.

Ваши интервьюеры ищут то, что у вас хорошо получается. Хорошие успехи перевешивают ошибки.

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

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

Если вы хотите пройти собеседование в Square, загляните на squareup.com/careers, чтобы узнать о возможностях карьерного роста, и не стесняйтесь оставлять любые вопросы в комментариях ниже.