Вступление

Это универсальное руководство, которое вам нужно понять и подготовить к любому техническому собеседованию. Он охватывает все основные принципы, которые необходимы вам, чтобы выделиться как особый кандидат, а также ваши навыки программирования (которые вы получаете на https://30dayscoding.com/). Вот список того, что охватывает все это руководство:

  • Рабочие материалы и ATS
  • Создание правильного профиля (GitHub, LinkedIn, проекты)
  • Как подать заявку на стажировку, работу
  • Все о собеседовании по программированию
  • Подробное поведенческое интервью
  • Обращение к рекрутерам, менеджерам (правильный путь!)
  • Полезные ссылки

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

Понимание процесса

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

Кадровая статистика https://zety.com/blog/hr-statistics

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

Изучите на LeetCode, Jumpstart, Reddit или Glassdoor, как работает процесс собеседования в компании. Например, некоторые конвейеры собеседований могут выглядеть примерно так: приложение, ATS, задача кодирования 1, задача кодирования 2, задача кодирования 3, техническое интервью, предложение.

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

Рабочие материалы и ATS

АТС

Одна из наиболее распространенных ошибок, которые соискатели информатики допускают при составлении резюме, - это недооценка ATS (системы отслеживания кандидатов) и важности адаптации резюме к конкретной работе.

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

Продолжить

Поскольку его читает робот, а не человек, вы должны обратить внимание на следующее:

  1. Убедитесь, что ваше резюме содержит ключевые слова, которые упоминаются в объявлении о вакансии, а также навыки, которые они ищут. Прочтите сообщение о вакансии и попробуйте добавить эти ключевые слова в историю навыков или работы.
  2. Убедитесь, что ваше резюме составлено в удобной для чтения файловой форме, например в формате .pdf, .txt, .docx. В случае сомнений используйте .pdf, так как это довольно стандартно.
  3. Делайте это просто. Избегайте использования причудливых границ, странных маркеров, словесного искусства и т. д. Они в любом случае не служат большой цели для человеческого читателя и могут действительно сбить с толку ATS. Нет ничего плохого в том, чтобы иметь простое резюме Times New Roman вроде so.
  4. Избегайте изображений и графики. Системы ATS на самом деле не могут читать графику или изображения, поэтому, если ваше резюме содержит скриншоты, изображения или что-либо, не основанное на тексте, ATS не сможет его прочитать, и все, что в нем, вам не поможет. Напечатайте все резюме.

Здесь простой в использовании шаблон на слове, латекс. Все мы пользуемся этим шаблоном, и он отлично работает. Word и Latex работают.

Ниже приведены некоторые ограниченные бесплатные ресурсы, чтобы увидеть, насколько ваше резюме выдерживает сканирование ATS с описанием должности, на которую вы собираетесь:

Https://resumeworded.com/

Https://www.jobscan.co/

Сопроводительное письмо

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

🌟 Следующий документ содержит отличное руководство по резюме, а также образцы сопроводительных писем и пошаговые инструкции к последним страницам: https://ocs.fas.harvard.edu/files/ocs/files/hes-resume-cover-letter -guide.pdf

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

  1. Корнелл Инжиниринг
  2. Советы CICS UMass
  3. Сопроводительное письмо КМУ

Обзор резюме

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

Мы также бесплатно просматриваем резюме, поэтому, если вы хотите получить подробный обзор, напишите нам по адресу [email protected].

Создайте свой профиль

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

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

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

LinkedIn

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

🌟На сегодняшний день самой популярной профессиональной платформой является LinkedIn, поэтому есть вероятность, что если рекрутер действительно исследует вас, он проверит ваш профиль LinkedIn.

Заполните всю информацию для профиля:

  • Фотография профиля: выберите красивое и четкое профессионально выглядящее фото только вас - плеч и выше.
  • Фоновое изображение: выберите изображение вашей школы, если хотите - неплохо оставить это поле пустым.
  • Заголовок: этот раздел на удивление важен, поскольку это первое, что видят люди, когда ищут в вашем профиле. Он должен содержать краткое изложение того, чем вы занимаетесь профессионально или что ищете. Если у вас есть опыт работы в отрасли, хобби или проекты, вы должны написать, в чем у вас есть опыт, а после этого вы можете добавить несколько вертикальных полос для нескольких записей. Примерный заголовок выглядит так:

Имя Фамилия

С отличием студент факультета компьютерных наук и математики Массачусетского университета в Амхерсте

Имя Фамилия

Специалист по данным | Соавтор с открытым исходным кодом | Лектор | Предприниматель

Имя Фамилия

Аспирант информатики активно ищет летнюю стажировку

Имя Фамилия

Основатель и генеральный директор 30DaysCoding Software

  • О себе. Заполните раздел «О нас» актуальным и профессиональным описанием вашего образования, опыта работы и другими интересными деталями.
  • Опыт: укажите весь соответствующий опыт работы в интересующей вас области и заполните всю соответствующую информацию. Например, если вы работали спасателем в старшей школе, от нее, вероятно, безопасно избавиться, если у вас нет ничего другого. Эти записи в большинстве случаев можно скопировать из вашего резюме / CV.
  • Образование: обязательно укажите свои специальности, несовершеннолетние, тип степени, награды и даты выпуска.
  • Навыки: добавьте все важные навыки, которыми вы владеете - языки, программное обеспечение, межличностные навыки, структуры и т. д. Укажите 3 лучших, наиболее подходящих для должностей, на которые вы обычно претендуете.
  • Достижения. Это отличное место для участия в проектных работах или курсах для студентов, не имеющих большого опыта работы в отрасли.

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

Персональный сайт

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

С графическим дизайном, UX / UI и всем остальным, связанным с искусством, ваш личный веб-сайт обычно представляет собой портфолио всех ваших лучших работ. В этом случае вам, возможно, не потребуется делать это, и вы можете использовать бесплатные инструменты, такие как Adobe Portfolio, для размещения своих изображений и описаний.

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

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

🌟 GitHub Pages позволяет разместить простой веб-сайт (без сервера или чего-либо еще) из общедоступного репозитория GitHub. Просто назовите репозиторий yourUsername.github.io, сделайте его общедоступным, назовите основной файл index.html, сделайте несколько нажатий в репозиторий, и вы должны увидеть свою веб-страницу по адресу yourUsername.github.io. Возьмем, к примеру, это - скачайте шаблон здесь.

Проекты

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

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

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

Самый большой вопрос - как начать?

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

Вот несколько руководств по хакатону, которые помогут выбрать и превзойти свой следующий хакатон:

  1. Найдите хакатон
  2. Хакатоны MLH
  3. Хакатоны по науке о данных
  4. Хакатон Руководство
  5. 25 крутых идей

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

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

Пример созданного вами приложения для доставки еды:

«Название: мобильное приложение, которое отслеживает и доставляет еду прямо к вашему порогу в течение нескольких часов. iOS, Android, UI / UX »

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

Вот несколько руководств, которые помогут вам начать работу с проектами с открытым исходным кодом:

  1. Google с открытым исходным кодом
  2. Только для новичков
  3. Сортировка кодов
  4. GitHub

🌟 GitHub - лучший онлайн-ресурс для работы над проектами с открытым исходным кодом. Проекты с открытым исходным кодом общедоступны и могут использоваться в качестве справочника для других разработчиков (воздайте им должное за их работу). Это крупнейшая «торговая площадка» для проектов, где можно найти буквально все, что касается информатики. Просто упомяните слово GitHub после поиска в Google, и вы, скорее всего, найдете проект по этой теме.

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

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

30 дней раздела "Навыки программирования":

В настоящее время мы разрабатываем раздел навыков на сайте 30dayscoding.com и надеемся, что скоро закончим. В 2020 году у вас будет бесплатный доступ к «самообучению», посвященному основным навыкам в области информатики. Он будет включать в себя руководство для начинающих и среднего уровня по:

  1. Разработка мобильных приложений - Android, iOS, Flutter и т. Д.
  2. Разработка веб-приложений - базовый HTML, CSS, Js, JQuery, Node Js, ExpressReact, Angular и т. Д.
  3. Машинное обучение - регрессия, классификация, нейронные сети, глубокое обучение, марковские модели и т. Д.
  4. Наука о данных - вероятность, распределения, алгоритмы, модели и т. Д.

🌟Если вам нужен список бесплатных ресурсов (прямо сейчас), напишите нам по адресу [email protected].

Подача заявки на стажировку, работу

- Обратитесь к компаниям, активно нанимающим во время Covid-19: https://www.levels.fyi/still-hiring/.

- Jumpstart нанимает стажеров, потерявших стажировку, здесь https://jumpstart.me/.

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

Веб-сайты компании

Компании имеют прямые ссылки на предлагаемые ими вакансии, и обычно они находятся в разделе Карьера. Так же, как и в Facebook (https://www.facebook.com/careers/), у большинства компаний есть специальные страницы для своих вакансий. Подача заявки непосредственно с их веб-сайта отправляет ваше резюме и сопроводительное письмо через ATS, который затем отправляет проанализированный профиль рекрутерам.

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

Обязательно правильно заполните всю информацию - проекты, опыт работы, вопросы о спонсорстве. (Только для США) Если вы иностранный студент по визе F-1, вы должны сказать, что у вас есть законное право работать здесь, но вам потребуется спонсорство в будущем.

Следует ли подавать заявку на несколько должностей в одной компании? Это нормально, люди делают это все время, но обычно процесс сводится к одному и тому же для более крупных компаний. Если вы хотите подать заявку как на UI / UX, так и на инженера-программиста, тогда да, дерзайте!

Ярмарки вакансий

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

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

Если вы впечатляете рекрутеров, они могут пригласить вас на собеседование, не выполняя все традиционные шаги.

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

  1. Дизайн - игра войны, крестики-нолики, тральщик
  2. Массив - шипение, сумма подмножества, двойная сумма, найти элемент
  3. Связанный список - удалите узел, создайте связанный список, найдите средний элемент.
  4. Деревья - добавляем элементы, балансируем

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

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

Рефералы

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

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

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

Холодное письмо

Холодная электронная почта - это электронное письмо, в котором не известно, кто его получает. Это может показаться абсурдным, но работает много времени. Это похоже на отправку электронных писем или сообщений через LinkedIn вашим контактам в Google. Они ответят? Может быть, нет, но вполне вероятно, что они увидят письмо и перешлют его менеджеру по найму (если им нравится ваш профиль).

🌟Одна вещь, которая делает хорошее холодное электронное письмо / сообщение, - это аргумент в пользу продажи. Представьте себя рекрутером или инженером-программистом в компании и получаете сотни, если не тысячи писем от разных студентов. Как бы вы отличили нормального кандидата от особенного?

Вот шаблон идеального холодного письма:

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

«Здравствуйте, надеюсь, у вас все хорошо. Было здорово поговорить с вами на днях о xyz. Я хотел бы и дальше общаться с вами в LinkedIn »

«Здравствуйте, надеюсь, у вас все хорошо. Мне понравился ваш веб-сайт 30dayscoding.com, и я хотел бы поговорить с вами о некоторых вкладах. Спасибо »

Онлайн-платформы

Есть много интернет-сайтов, которые известны своими вакансиями, некоторые из них:

  1. LinkedIn (https://www.linkedin.com/jobs/)
  2. Монстр (https://www.monster.com/)
  3. Действительно (https://www.indeed.com/)
  4. Jumpstart (https://jumpstart.me/forum/all)
  5. Технические стажировки (https://www.techinternship.io/)
  6. Стажеры CS (https://csinterns.com/)
  7. AngelList (https://angel.co/jobs)

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

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

«Привет, рекрутер, надеюсь, у тебя все хорошо. Меня действительно интересует возможность xyz

Вы только что писали об этом и хотели бы поговорить об этом подробнее. Я приложил свое резюме

и ждем вашего ответа »

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

Кодирование интервью

Если вы пройдете часть процесса ATS, некоторые компании могут отправить вам тест на кодирование перед собеседованием, чтобы попытаться еще больше отфильтровать кандидатов.

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

Кодирование Тест

В тесте кодирования компания отправит вам ссылку на сайт, где вы можете выбрать время, чтобы сесть и пройти тест, используя их программное обеспечение. Сайт будет контролировать использование вашего браузера, поэтому обязательно используйте только утвержденные ресурсы (обычно ограничиваются руководствами Java JDK или C). Как только тест начнется, запустится таймер, и у вас будет от 30 минут до часа (иногда больше), чтобы заполнить и отправить каждый вопрос. Типы вопросов могут быть:

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

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

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

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

🌟В разделе веб-сайта 30 Day Challenge (https://30dayscoding.com/) мы перечислили 100–110 тщательно подобранных вопросов, которые охватывают большинство концепций собеседований по программированию. Понимание этих вопросов гораздо важнее, чем ответы на тысячи вопросов без охвата всех тем или запоминания решений.

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

Хорошие стратегии решения этих проблем очень похожи на общие стратегии сдачи тестов:

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

Live Coding Challenge

Например: Webex, документ Google, видеоинтервью.

Если вы решаете задачу по программированию вживую или лично, вам обычно дается небольшое количество задач в течение 20–45 минут. Скорее всего, они дадут вам одну большую проблему с некоторыми дополнительными вопросами для улучшения алгоритма. Если задача кодирования выполняется через компьютер, вы, вероятно, будете разговаривать с интервьюером по телефону или с помощью какого-либо программного обеспечения для телеконференций, когда вы вводите код в какой-то общий документ, чтобы они могли его увидеть.

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

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

Еще одна важная вещь, о которой следует подумать, - это обсудить время выполнения вашего кода, пока вы занимаетесь программированием в реальном времени. Интервьюеры могут попросить вас подумать об асимптотической сложности кода или о том, сколько памяти он займет. День 20 охватывает все, что вам нужно знать о сложности времени: Big-O. Прочтите статьи, посмотрите видео и практикуйтесь с каждым новым вопросом, который вы решаете. Если вам нужна дополнительная практика, напишите нам по адресу [email protected].

Для многих вопросов будет несколько решений, которые различаются как по времени выполнения, так и по памяти. Компании, в которые труднее попасть (FAANG), примут только лучшие решения, поэтому вам захочется подумать, можно ли что-то сделать быстрее.

Например, вопрос LeetCode Two-Sum (https://leetcode.com/problems/two-sum/) имеет несколько возможных решений. Если мы будем рассматривать его как массив и попытаемся перебрать решение, ваш код должен будет проверить каждую комбинацию двух чисел, чтобы увидеть, соответствует ли она цели. Это O (n²). В качестве альтернативы, если вы используете HashMap, вы можете просто просмотреть элементы в массиве и для каждой записи просто проверить, содержит ли HashMap целевое значение. Это O (n).

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

🌟Если вам нужна дополнительная практика, помимо упомянутых 100–110 вопросов, вы можете посетить онлайн-сайты, такие как leetcode, hackerrank, topcoder, project euler, или написать нам по адресу [email protected]

Возьмите проекты домой

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

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

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

🌟 Примером этого является Braintree (подразделение Paypal, которое приобрело Venmo), который отправляет собеседникам задание по программированию в стиле API. Он состоит из того, что вы делаете несколько вызовов API для применения, затем получаете задачу кодирования, а затем решаете ее, чтобы написать некоторый код. Они расширяют это до нескольких раундов, когда вызывают вас на место.

Если вам нужна дополнительная информация о конкретной компании, напишите нам по адресу [email protected] с названием компании, и мы свяжемся с вами!

Поведенческое интервью

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

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

Во время интервью часто бывает полезно не забыть использовать метод S.T.A.R для объяснения прошлого опыта. Еще одна хорошая стратегия - превратить ваш опыт в большую часть истории, поскольку людям обычно нравится слушать хорошую историю. Придавайте соответствующий фон и ощущение потока тому, что вы хотите сказать, и вы обнаружите, что у вас будет гораздо более увлекательный разговор с интервьюером.

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

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

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

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

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

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

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

Одностороннее интервью

В современном мире нам также приходится иметь дело с полностью виртуальным собеседованием. Одностороннее интервью - относительно новое творение, в котором кандидат, кажется, не взаимодействует с человеком, проводящим интервью. Независимо от того, как вы относитесь к этим странным методам найма, если вам нравится работа и компания, вам просто придется с этим разобраться. Хотя в настоящее время это редко встречается в сфере CS, тысячи компаний используют этот метод, поэтому со временем он, вероятно, станет более популярным (https://www.hirevue.com/customers ).

One Way Interview - это, по сути, программное обеспечение, которое позволяет отделу кадров избегать взаимодействия с кандидатами. Это экономит деньги и ресурсы от необходимости организовывать кандидатов для прохождения личных собеседований и может быть полезным для дальнейшей фильтрации очень больших пулов соискателей. Используя такую ​​технологию, они могут разослать серию вопросов на собеседовании каждому кандидату, который затем запишет и загрузит свои ответы, чтобы HR-команда могла их проанализировать и выбрать наиболее подходящие или наиболее подходящие для компании. Они экономят время, потому что им не нужно встречаться и общаться с кандидатами, поскольку все, что им действительно нужно, - это смотреть и оценивать свои видео.

Со стороны кандидата вы должны установить программное обеспечение, создать учетную запись или перейти по ссылке на сайт собеседования. Отсюда вы начнете сеанс, и по очереди будут задаваться вопросы. Кандидат начинает запись для каждого вопроса, говорит столько времени, сколько ему нужно (или, если есть таймер - сколько времени ему разрешено), а затем нажимает кнопку «Остановить» и отправляет запрос. В конце всех вопросов вы просто отправляете их в отдел кадров.

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

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

  • Осознавайте свое окружение:
  • Сообщите соседям по комнате или людям поблизости, что вы будете проводить собеседование, и вежливо попросите их замолчать.
  • Устройства отключения звука или все, что может издавать шум, например кондиционер.
  • Уберите телефон, если вы не используете его для записи
  • Временно переместите детей или домашних животных в другую комнату, чтобы они вас не беспокоили
  • Используйте правильное кадрирование видео - сосредоточьтесь в камере и оставьте немного места над головой
  • Убедитесь, что есть хороший источник света, чтобы вас было хорошо видно, но не слишком ярко.
  • Используйте время перед вопросом, чтобы подумать, как вы хотите на него ответить, прежде чем начинать запись (если возможно)
  • Поддерживайте зрительный контакт с камерой, улыбайтесь и при необходимости делайте жесты руками.
  • Используйте множество ключевых слов в своих ответах и ​​обращайтесь к должности, на которую вы претендуете.
  • Будьте осторожны с тем, как вы начинаете и заканчиваете свои ответы.
  • Избегайте неудобных окончаний нащупывания кнопки остановки
  • Избегайте использования таких фраз, как «ммм», «так что да», «да, вот и все» и т. Д.
  • Попробуйте перефразировать вопрос
  • Если вам это предложат, проведите тренировочный раунд - это поможет вам более комфортно отвечать на настоящие вопросы.
  • Хорошо потренируйтесь перед собеседованием и попробуйте записать себя и воспроизвести, чтобы увидеть, как у вас дела. Поделитесь этим с другом и посмотрите, есть ли у него какой-нибудь совет.
  • На самом деле, не забудьте одеться официально, причесаться / расчесать волосы и т. Д.
  • Используйте блокнот, если вам дается время на подготовку перед вопросами, чтобы вы могли записать, о чем хотите поговорить.
  • Если для записи используется мобильное устройство, не трясите его слишком сильно. Желательно использовать штатив или упирать устройство во что-нибудь (при правильном кадрировании и освещении).

Эти два видео содержат очень хорошие советы по поводу односторонних интервью и сделаны очень хорошо:

Https://www.youtube.com/watch?v=J2VnJOw5Cd0

Https://www.youtube.com/watch?v=jn0dc1cOctA

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

Следовать за

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

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

Электронная почта, LinkedIn

Отправка повторного письма через 12–24 часа после собеседования может помочь вам понравиться интервьюеру и может помочь убедить его нанять вас. Обычно это считается признаком вежливости, и они навсегда запомнят ваше имя и интервью.

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

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

Вот общая процедура для такого электронного письма:

  1. Поприветствуйте их и поблагодарите за время, проведенное с вами. Обязательно персонализируйте каждое электронное письмо и обращайтесь к интервьюеру по имени. Отправьте отдельное электронное письмо каждому интервьюеру.
  2. Поговорим о некоторых особенностях интервью
  3. Добавьте некоторую информацию, которая может подтвердить, что вы лучший кандидат и очень заинтересованы в должности.
  4. Закройте его контактной информацией, чтобы они могли ответить, если у них возникнут какие-либо вопросы.

Вот шаблон для одного:

«Здравствуйте, надеюсь, у вас все хорошо. Было здорово поговорить с вами и / или вашей командой сегодня / вчера, и я получил много уроков из этого. Было здорово поговорить с вами о ___, и я считаю, что я бы хорошо подходил для этой должности из-за моего опыта в ____. Я прикрепил несколько ссылок на свои репозитории GitHub, где у меня есть проекты, отображающие ___. Если вам понадобится дополнительная информация, свяжитесь со мной. Жду ответа, спасибо! »

Заключение

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

  1. Ace the Coding Challenge - обычно первое собеседование
  2. Руководство для начинающих и среднего уровня по мобильной разработке, веб-разработке, машинному обучению и науке о данных

Удачи с интервью. Ты можешь это сделать!

С уважением,

30dayscoding .com

Ариец, Ефим

Полезные ссылки

Кодирование интервью:

Поведенческое интервью:

Ресурсы для резюме:

Образцы резюме по информатике