Сосредоточив внимание на этих аспектах, вы преуспеете в своих интервью.

Чтобы помочь мне понять вас, заполните этот опрос (анонимно)

С тех пор, как я начал делиться тем, как я помог студентам пройти собеседования по кодированию, многие люди обращались ко мне со своими проблемами во время собеседований (включая собеседования в компаниях FAANG). Одна из причин, по которой так много людей борются с подготовкой к собеседованию, — недостаток знаний. Я не имею в виду технические знания. Скорее я имею в виду знания о самом интервью. В своем воображении люди превращают интервью в монстра. Это вызывает у них стресс и, в свою очередь, портит интервью. Имитационные интервью удивительны, потому что они подвергают вас этому стрессу, заставляя ваше тело привыкать к ним. Но в этой статье мы сосредоточимся в первую очередь на снижении стресса.

Поговорка гласит: «Знание — сила». В этой статье я расскажу о различных аспектах, по которым вас оценивают во время собеседований по кодированию. Поняв эти аспекты, вы поймете, как подходить к подготовке и собеседованию. Это уменьшит ваш стресс и поможет вам достичь максимальной производительности. Я дам вам ясную картину, вместо того, чтобы отправить вас вслепую без плана игры. Как всегда, если у вас есть какие-либо мысли/вопросы, оставляйте их в комментариях.

Четыре всадника из вашего интервью

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

  1. Технические знания (DSA). Самый простой из них. Интервьюер проверяет вашу способность анализировать формулировки проблем и анализировать соответствующую информацию, чтобы найти решение. Чтобы получить здесь высокий балл, вы должны быть в состоянии определить различные Data Structers и алгоритмы, которые будут полезны для решения вашей проблемы. Изучение компромиссов — отличный способ выделиться.
  2. Решение проблем/Организация/Принятие решений: это просто относится к вашей способности находить решения четко и организованно. Выявление тупиков, оптимизаций и ограничений — отличный способ закрепить здесь свои навыки. Иногда лучше всего будет найти простое в реализации, но не совсем оптимальное решение и рассказать о причинах его принятия.
  3. Умение программировать.Все знания не помогут, если вы не в состоянии их реализовать. Вы можете определить что-то как проблему A*, но если вы не можете реализовать это, признание не принесет вам слишком много пользы. Помимо знания того, как кодировать решения, важно следовать передовым методам кодирования.
  4. Общение. Это то, с чем борются все. Говорить с людьми, когда вы приближаетесь к решению, не совсем естественно. К счастью, это можно исправить, и это не так уж сложно, как только вы освоитесь.

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

Функция 1: Знание DSA

Помните, что в реальном мире часто бывает неоднозначно. Нам даны условия задачи с неполной информацией, со многими возможными путями. Знание DSA поможет вам определить наилучшие пути продвижения вперед. Особенно, когда речь идет о решениях, которые работают в масштабе, знание оптимальных решений может сэкономить вашей организации массу ресурсов. Ниже приведен список структур данных, с которых вы должны сосредоточиться для начала (и сколько деталей вам нужно). Это взято из моей статьи Ваш план интервью с FAANG.

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

Функция 2: Решение проблем/Организация/Принятие решений

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

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

Итак, как мы можем развить ваши навыки принятия решений и организации? К сожалению, есть только один способ, который я знаю: практика leetcode. В хорошем количестве. Вам придется практиковать большое количество задач. Кроме того, вы действительно можете отточить свои навыки, просматривая видео / читая о достижениях, происходящих в этой области. Это познакомит вас с проблемами, с которыми в настоящее время сталкиваются разные люди, и с тем, как они их решили. Ваш просмотр будет меняться в зависимости от ваших интересов. Например, большая часть моего контента посвящена машинному обучению, математике и масштабируемости, потому что это мне наиболее интересно. Ваши точные данные могут отличаться (свяжитесь со мной, если вас интересуют похожие области).

Когда дело доходит до вашей практики с буквенным кодом, все более стандартизировано. «Метод из 4 шагов, который используют мои студенты, чтобы максимизировать количество проблем с Leetcode и добиться успеха на собеседованиях в FAANG» — это статья, в которой я делюсь подробностями о том, как улучшить каждый вопрос Leetcode, который вы практикуете. Проверьте это, чтобы ускорить свое обучение.

Особенность 3: Кодирование

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

Тем не менее, вы все еще должны быть хороши в этом. Один из способов, с помощью которых я сохраняю свои навыки кодирования в достаточной степени эффективными, — это выполнение нескольких простых/средних вопросов Leetcode. Это не требует слишком много времени, чтобы пройти через них, и позволяет мне оставаться на связи с навыками собеседования по программированию. Подробное описание того, как я использую эти простые/средние вопросы, содержится в статье Почему вам нужны простые вопросы, чтобы пройти собеседование в FAANG.

К счастью, по мере того, как вы будете больше смотреть/читать и готовиться к принятию решений, ваши навыки программирования также улучшатся. Сначала это будет медленно, но по мере того, как вы станете лучше, ваш рост будет экспоненциальным.

Особенность 4: общение

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

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

Так как же нам улучшить этот навык? Ложные интервью. Вы должны привыкнуть высказывать свои мысли, знакомить людей с вашими решениями. Сформулируйте, почему вы считаете, что одна структура лучше другой. Почему вы решили реализовать один алгоритм. Хорошая коммуникация — это то, что позволяет вам подчеркнуть свои сильные стороны. Как разработать ответы на фиктивное интервью, чтобы успешно пройти собеседование в FAANG — это хороший контрольный список для справки во время подготовки. Если вы хотите стать еще лучше в общении, не стесняйтесь обращаться к нам. Был бы рад помочь.

Закрытие

Каждая из этих особенностей имеет решающее значение для вашего интервью. Их знание поможет вам лучше настроить свою подготовку, имея более четкое представление о своих сильных и слабых сторонах. Дифференцируя их, мы можем измерить эти аспекты. А что становится лучше, то улучшается.

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

Если вам понравилась эта статья, посмотрите мой другой контент. Я регулярно публикую сообщения на Medium, YouTube, Twitter и Substack (все ссылки ниже). Я занимаюсь искусственным интеллектом, машинным обучением, технологиями и разработкой программного обеспечения. Если вы готовитесь к собеседованиям по программированию, ознакомьтесь с моим еженедельным информационным бюллетенем Интервью по программированию — это просто. Вы можете получить премиум-версию менее чем за 0,5 доллара США в день. Премиум-версия откроет высококачественные решения еженедельных проблем с кодированием, специальные сообщения для обсуждения и отличное сообщество. Это помогло множеству людей в их подготовке.

Не стесняйтесь обращаться, если у вас есть какие-либо интересные работы/проекты/идеи для меня. Всегда рад вас выслушать.

Для денежной поддержки моей работы следуют мои Venmo и Paypal. Любая сумма приветствуется и очень помогает. Пожертвования открывают эксклюзивный контент, такой как анализ бумаги, специальный код, консультации и специальные тренировки:

Венмо: https://account.venmo.com/u/FNU-Devansh

Paypal: paypal.me/ISeeThings

Свяжитесь со мной

Вы можете связаться со мной на любой из платформ или ознакомиться с любым другим моим контентом. Если вы хотите обсудить репетиторство, напишите мне в LinkedIn, IG или Twitter. Проверьте бесплатную реферальную ссылку Robinhood. Мы оба получаем свободный сток (денег вкладывать не надо), и никакого риска для вас нет. Таким образом, если вы не используете его, вы просто потеряете бесплатные деньги.

Ознакомьтесь с другими моими статьями на Medium. : https://rb.gy/zn1aiu

Мой Ютуб: https://rb.gy/88iwdd

Свяжитесь со мной в LinkedIn. Подключаемся: https://rb.gy/m5ok2y

Мой Инстаграм: https://rb.gy/gmvuy9

Мой Твиттер: https://twitter.com/Machine01776819

Если вы готовитесь к программированию/техническим интервью: https://codinginterviewsmadesimple.substack.com/

Получите бесплатный сток на Robinhood: https://join.robinhood.com/fnud75