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

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

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

В чем заключается весь этот процесс

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

  1. Предварительное собеседование по телефону (Phone Screen)
  2. Техническое собеседование
  3. Тестовое техническое задание
  4. Последующие собеседования, чтобы убедиться, что вы подходите (Fit Interviews)
  5. Предложение работы (Job Offer)
  6. Обсуждение условий предложения (Offer Negotiation)
  7. Принятие предложения (Offer Acceptance)

Предварительное собеседование по телефону

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

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

ФИНАЛЬНОЕ ПРИМЕЧАНИЕ - это не универсальный метод и многие компании пропускают его, чтобы сразу же нырнуть в глубины технического собеседования, поэтому вам нужно приготовиться просто на всякий случай. Ссылка ниже на Coding Horror самая иллюстративная для этого случая.

  • Добейтесь совершенства в телефонных собеседованиях от Monster
  • 7 шагов на пути к достижению вершин мастерства телефонного собеседования

Техническое собеседование

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

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

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

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

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

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

Ссылки

  • Разбиремся с собеседованием для программистов это ОБЯЗАТЕЛЬНЫЙ К ПРОЧТЕНИЮ МАТЕРИАЛ , который станет вашим лучшим другом. Он всесторонне рассматривает все виды задач, с которыми вы столкнетесь на собеседовании. Он выходит за рамки того, что мы уже изучили в этом курсе и затрагивает такие вещи, которые хорошо было бы знать, потому что скорей всего вы с ними встретитесь. Потратьте время на то, чтобы познакомиться с как можно большим количеством материала.
  • Interviewing.io дает вам шанс попрактиковать анонимно и онлайн техническое собеседование.
  • Как получить высшую оценку на техническом собеседовании
  • Как выделиться на следующем собеседовани на должность веб-разработчика
  • Прочитайте 40 ключевых концептов информатики, объясненных доступным языком
  • Руководство для развития технических навыков от Google (для продвинутых)

Тестовые задачи на программирование:

  • 8 королев - это классическая задача.
  • Программирование на собеседоваии: знай стандартные библиотеки может оказаться перебором для начинающего, но никогда не повредит, если вы найдете на него время.
  • На Project Euler вы найдете более обобщенные и сложные задачи, которые нужно эффективно решить (они могут потребовать большого объема вычислений).
  • На Coding Bat опубликованы практические вопросы для Java и Python.

Обучение алгоритмам:

  • Курс по алгоритмам от Udacity (несинхронизированны)
  • Курс по алгоритмам от Coursera (частично-синхронизированный)

Архитектура:

Техническое тестовое задание

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

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

Финальное собеседование ("Fit")

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

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

Немного о заработной плате

Не. Озвучивайте. Ваши. Зарплатные. Ожидания.

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

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

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

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

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

    А что на собеседованиях раздражает или напрягает вас? Поделитесь в комментариях.

    Собеседование с позиции соискателя

    Каждый раз при поиске работы программисту приходится проходить множество технических собеседований. Он ходит по офисам или разговаривает по скайпу, решает задачки или делает тестовые задания, отвечает на заковыристые технические вопросы, пытаясь продемонстрировать себя с лучшей стороны. Однако и сам он при этом оценивает людей, которые собеседуют и проверяют его, думая о том, что завтра ему потенциально с этими людьми придётся работать. И есть множество способов для технических интервьюеров отпугнуть соискателя от интересной должности. Я расскажу о том, что всегда отпугивало лично меня, и чего стараюсь не допустить я как интервьюер.
    1. «Какое ещё техническое собеседование?»
    Первое и главное, что всегда настораживало меня в техническом собеседовании - это его отсутствие. Бывает так, что вся беседа с техническими специалистами - потенциально будущими коллегами - строится на вопросах относительно профессионального опыта: где работал, какими проектами занимался, какую функцию в них выполнял. По технологиям или знаниям - вопросы уровня «какого цвета учебник». Знаете, что такое Message Broker? Отлично, мы вас берём!

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

    2. «Ну и чем вы там занимались в этом своём…»
    Удивительно, как часто встречается пренебрежительное отношение к соискателям на технических собеседованиях. Да, возможно, вы суровый и опытный программист с кучей проектов за плечами, вас оторвали от чрезвычайно важной работы ради каких-то ненужных интервью с людьми, большая часть из которых, по вашему мнению, совершенно некомпетентна. Но не забывайте о том, что вы в этот момент представляете свою компанию и свою команду, и человек по вашему поведению обязательно составит оценку о климате в коллективе и о том, как к нему в этом коллективе будут относиться. Будьте вежливы и уважительны к соискателю, даже если вы с первых пяти минут поняли, что его и близко нельзя подпускать к вашему драгоценному коду.
    3. «Что-то у вас имя/фамилия/отчество в резюме неправильно написано!»
    Это совсем не технический, но, тем не менее, часто встречающийся косяк даже на технических интервью. У меня, к счастью, достаточно простое и распространённое имя, и таких проблем со мной не случалось. Однако я знаю, что существует удивительно много людей, которые свято уверены в том, что определённых имён и даже отчеств попросту не существует. Они будут вас убеждать, что правильно не «Данила», а «Даниил», или что имени «Алёна» нет, а есть только «Елена». Будут предлагать исправить и записать в своих документах «правильно». С такими грамотеями-доброхотами приходится часто иметь дело людям с редкими или необычными именами, и поверьте, это невероятно раздражает. Так вот, есть одно простое правило: нет таких имён, которых нет. Правильно писать так, как записано в паспорте. Проявите уважение к соискателю и не считайте его настолько глупым, что он не в состоянии переписать из паспорта в резюме собственное имя. Если даже подозреваете ошибку, это можно уточнить как-то более тактично.
    4. «Сколько шариков для гольфа понадобится, чтобы помыть все круглые окна в школьном автобусе, уменьшенном до размеров пятицентовой монеты, во время эвакуации из Сан-Франциско, используя не более 3 взвешиваний?»
    Ни одна статья про собеседования не будет полной без упоминания канализационных люков. Можете считать это моим персональным пунктиком, связанным с неумением быстро и под напряжением решать нестандартные задачи. Но я уверен, что брейн-тизеры на собеседованиях абсолютно бесполезны. Вернее, это отличный способ набрать полный отдел вундеркиндов с олимпиадой головного мозга, которые круглыми днями вместо работы будут перекидываться свеженькими брейн-тизерами. Реальный программист в естественной среде обитания, даже занимающийся очень крутыми и нестандартными задачами, всё равно редко кодит под напряжением, а большую часть дня сидит и в относительно спокойной обстановке неспешно думает над тем, как ему красиво распилить код по методам. «Мозговые мышцы» для решения хитрых задачек он не задействует в этом процессе ни разу.
    5. «Неправильно. Дальше.»
    Конечно, заниматься обучением приходящих на собеседование людей - это не задача интервьюера. Однако, если соискатель не смог ответить на вопрос, но всё же заинтересовался, то подсказать или хотя бы указать ему на правильное решение, прежде чем переходить к следующему вопросу - это вопрос профессиональной этики, демонстрация того, что здесь ему в случае чего помогут, научат, не бросят наедине с техническими проблемами. Скажите хотя бы пару слов, что ему погуглить, что почитать. Ведь интерес к правильному решению задачи - это само по себе положительное качество технического специалиста, и не стоит демотивировать такого человека пренебрежительным отношением к его ошибкам или неточностям.

    Собеседование с позиции интервьюера

    Каждый раз при открытии новой вакансии ведущему специалисту или начальнику отдела приходится проводить множество технических собеседований. На собеседования приходят люди с разным техническим опытом, уровнем подготовки, ожиданиями. Для проведения собеседований нужно продумывать план разговора, составлять список вопросов, а потом пытаться по ответам на эти вопросы понять, подходит человек на должность или нет. И вот иногда соискатели на собеседованиях говорят такие вещи, что становится сразу ясно - нет, ты с этим человеком работать вместе не сможешь. Вот некоторый набор ключевых фраз соискателей, которые настораживают лично меня.
    1. «Какие-то у вас вопросы теоретические. Я не силён в теории, я закалён в практике! Давайте лучше тестовое!»
    Слово «теоретические» обычно произносится с пренебрежительным оттенком, как будто это что-то плохое. Но беда даже не в этом. Думаете, этой фразе предшествовала просьба интервьюера доказать теорему Коши? Дать точное определение третьей нормальной форме? Отнюдь. Такие возгласы я слышал в ответ на следующие вопросы:
    • чем сравнение по == отличается от сравнения по equals в Java?
    • расскажите, как устроена хэш-карта.
    • объясните своими словами, что такое REST.
    • что такое транзакции и зачем они нужны?
    Да, с определённой позиции, любой вопрос по программированию является теоретическим, если он не требует от вас прямо здесь и сейчас написать строчку кода. Но я уверен, что человек с достаточно большим опытом в определённой области должен уметь своими словами объяснить самые базовые вещи, или хотя бы не делать вид, что их незнание - это нормально и естественно.
    2. «Не ожидал здесь испанскую инквизицию! У вас прямо как на экзамене в институте. Обычно просто спрашивают, где работал, что делал»
    Вы пришли на техническое собеседование. На техническом собеседовании вам будут задавать технические вопросы, чтобы проверить ваши технические навыки. Методику проверки и выбор вопросов оставьте на совести интервьюера - вопросы не всегда могут вам казаться адекватными, но интервьюер знает, какую именно информацию он хочет о вас получить, анализируя ваши ответы. Многие вопросы нужны не затем, чтобы проверить знания, а чтобы заставить вас порассуждать и посмотреть на ход ваших мыслей. Помните также, что не на все вопросы требуется идеально точный ответ, и если вы внятно ответите хотя бы на половину из того, о чём вас спросили, это уже произведёт хорошее впечатление.
    3. «Мне и не нужно это знать, я специализируюсь на более высокоуровневых задачах!»
    Не надо путать специализацию и незнание основ программирования. От разработчиков мобильных приложений я слышал подобные вещи про протоколы стека TCP/IP, от фронтэнд-программистов - в ответ на вопросы про алгоритмы сортировки и поиска. «Зачем мне это знать, всё есть в стандартной библиотеке, я работаю на более высоком уровне». В ответ на такие заявления я давно придумал пару небольших задачек с подло скрытой алгоритмикой - в надежде показать, что «наивное» решение, выданное от незнания алгоритмов, не выдерживает критики, и побудить хотя бы к самообразованию. Причём это не какие-то искусственно сконструированные задачи, а такие вещи, которые встречаются в разработке ежедневно. Любой код это алгоритм. Понимание основных алгоритмов и структур данных важно для любого программиста, а протоколы сети Интернет - это база, без знания которой невозможно грамотно написать хоть что-то, что выходит за пределы одного компьютера.
    4. «А сами-то! / А покажите ваш код! / А вот я зашёл к вам на GitHub, а там такое...»
    Меньше всего интервьюеру хочется взять человека на работу, а потом выслушивать от него критику своей кодобазы. Да, она, скорее всего, неидеальна. Да, технический долг есть везде и у всех. В любом коде найдётся что покритиковать. Но если вы действительно считаете себя настолько крутым, что видите очевидные проблемы в коде своих потенциальных работодателей - переведите это в конструктивный позитив: я знаю, как улучшить, у меня есть наработки на эту тему, я смогу принести вам пользу.
    5. «Вы не правы!»
    Всякое бывает, конечно, но мнение относительно неправоты интервьюера или сомнения в его компетентности лучше оставить при себе до окончания собеседования. Потом погуглите и разберётесь, кто из вас был прав. Техническое собеседование - это не место для дискуссий или самоутверждения, и вопросы здесь в первую очередь задают вам. Интервьюер не станет спрашивать о том, в чём сам не разбирается.

    Заключение

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

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

    Бенджамин Вейсс из компании Infusive Solutions обратился к коллегам из отдела кадров и разработчикам компьютерных игр, чтобы создать «игру-собеседование». В «игре» будут уровни, которые нужно будет «пройти», чтобы получить должность, начиная с собеседования со специалистом по набору персонала. Может, концепция игры и покажется смешной, но вот информация, которую предоставили Вейсс и его коллеги, просто бесценна.

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

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

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

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

    Секундочку, что за супер-квест? Что за уровни? Похоже на компьютерную игру, не так ли?

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

    Главному игроку (например, Марио, Зельде или Дюку Нюкему) нужно победить всех боссов в игре, чтобы пройти на следующий уровень: совсем как менеджеров в IT-компаниях.

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

    - специалист по набору персонала;
    - старший разработчик;
    - менеджер по программному обеспечению;
    - CTO.

    Готовы? Отлично! Начинаем со схватки со специалистом по набору персонала из отдела кадров на первом уровне.

    1 уровень: Босс, специалист по набору персонала

    Босс из отдела кадров обладает следующими характеристиками:

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

    Дженифер Лоффус, региональный директор компании Astron Solutions, бывший президент ассоциации специалистов по работе с персоналом Нью-Йорка.

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

    Существует мнение, что у кадровиков только одно желание - заваливать кандидатов на новую должность. Помните Тоби из сериала «Офис»? Так вот, его образ специалиста отделов кадров сильно приукрашен.

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

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

    Не высылайте резюме с ошибками

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

    Не высылайте слишком длинное резюме

    Вы многого добились в карьере и хотите об этом рассказать. А кадровик хочет понять, подходите ли вы на конкретную позицию, при этом у него очень мало времени на знакомство с вашим резюме. Отредактируйте свое резюме так, чтобы оно подходило именно на ту вакансию, на которую вы его подаете. Резюме должно содержать 500 - 1000 слов и быть длиной максимум в две страницы. Используйте 12 шрифт, чтобы текст было удобно читать (а не 8 или 9).

    Не высылайте общих резюме и мотивационных писем

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


    Вас пригласили на собеседование с сотрудником отдела кадров!

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

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

    Приходите заранее и хорошо подготовленным

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

    Оденьтесь в официальном стиле

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

    Приведите себя в порядок

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

    Сосредоточьтесь!

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

    Почти 2 уровень!

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

    Поддерживать зрительный контакт

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

    Переходить в наступление

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

    Приготовьтесь рассказать о прошлых работодателях

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

    Говорите понятными словами

    Программные разработчики используют много аббревиатур: ASP, CAO, GAC, IIS и т.д. Во время беседы с кадровиком (возможно, без технического образования), расшифровывайте каждую аббревиатуру, когда будете называть ее в первый раз. Убедитесь, что вы говорите понятным для собеседника языком, чтобы не провоцировать новые вопросы.

    Задавайте вопросы

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

    - Что вам больше всего нравится в организации?
    - Почему вы здесь работаете? Люди любят рассказывать о себе!
    - Каким образом информационные технологии поддерживают планы компании по развитию?
    - Какие ошибки обычно допускают новые сотрудники?

    Скажите «спасибо»

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

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

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



    Тэги:

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

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

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

    А что на собеседованиях раздражает или напрягает вас? Поделитесь в комментариях.

    Собеседование с позиции соискателя

    Каждый раз при поиске работы программисту приходится проходить множество технических собеседований. Он ходит по офисам или разговаривает по скайпу, решает задачки или делает тестовые задания, отвечает на заковыристые технические вопросы, пытаясь продемонстрировать себя с лучшей стороны. Однако и сам он при этом оценивает людей, которые собеседуют и проверяют его, думая о том, что завтра ему потенциально с этими людьми придётся работать. И есть множество способов для технических интервьюеров отпугнуть соискателя от интересной должности. Я расскажу о том, что всегда отпугивало лично меня, и чего стараюсь не допустить я как интервьюер.1. «Какое ещё техническое собеседование?»
    Первое и главное, что всегда настораживало меня в техническом собеседовании - это его отсутствие. Бывает так, что вся беседа с техническими специалистами - потенциально будущими коллегами - строится на вопросах относительно профессионального опыта: где работал, какими проектами занимался, какую функцию в них выполнял. По технологиям или знаниям - вопросы уровня «какого цвета учебник». Знаете, что такое Message Broker? Отлично, мы вас берём!

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

    2. «Ну и чем вы там занимались в этом своём…»
    Удивительно, как часто встречается пренебрежительное отношение к соискателям на технических собеседованиях. Да, возможно, вы суровый и опытный программист с кучей проектов за плечами, вас оторвали от чрезвычайно важной работы ради каких-то ненужных интервью с людьми, большая часть из которых, по вашему мнению, совершенно некомпетентна. Но не забывайте о том, что вы в этот момент представляете свою компанию и свою команду, и человек по вашему поведению обязательно составит оценку о климате в коллективе и о том, как к нему в этом коллективе будут относиться. Будьте вежливы и уважительны к соискателю, даже если вы с первых пяти минут поняли, что его и близко нельзя подпускать к вашему драгоценному коду.3. «Что-то у вас имя/фамилия/отчество в резюме неправильно написано!»
    Это совсем не технический, но, тем не менее, часто встречающийся косяк даже на технических интервью. У меня, к счастью, достаточно простое и распространённое имя, и таких проблем со мной не случалось. Однако я знаю, что существует удивительно много людей, которые свято уверены в том, что определённых имён и даже отчеств попросту не существует. Они будут вас убеждать, что правильно не «Данила», а «Даниил», или что имени «Алёна» нет, а есть только «Елена». Будут предлагать исправить и записать в своих документах «правильно». С такими грамотеями-доброхотами приходится часто иметь дело людям с редкими или необычными именами, и поверьте, это невероятно раздражает. Так вот, есть одно простое правило: нет таких имён, которых нет. Правильно писать так, как записано в паспорте. Проявите уважение к соискателю и не считайте его настолько глупым, что он не в состоянии переписать из паспорта в резюме собственное имя. Если даже подозреваете ошибку, это можно уточнить как-то более тактично.4. «Сколько шариков для гольфа понадобится, чтобы помыть все круглые окна в школьном автобусе, уменьшенном до размеров пятицентовой монеты, во время эвакуации из Сан-Франциско, используя не более 3 взвешиваний?»
    Ни одна статья про собеседования не будет полной без упоминания канализационных люков. Можете считать это моим персональным пунктиком, связанным с неумением быстро и под напряжением решать нестандартные задачи. Но я уверен, что брейн-тизеры на собеседованиях абсолютно бесполезны. Вернее, это отличный способ набрать полный отдел вундеркиндов с олимпиадой головного мозга, которые круглыми днями вместо работы будут перекидываться свеженькими брейн-тизерами. Реальный программист в естественной среде обитания, даже занимающийся очень крутыми и нестандартными задачами, всё равно редко кодит под напряжением, а большую часть дня сидит и в относительно спокойной обстановке неспешно думает над тем, как ему красиво распилить код по методам. «Мозговые мышцы» для решения хитрых задачек он не задействует в этом процессе ни разу.5. «Неправильно. Дальше.»
    Конечно, заниматься обучением приходящих на собеседование людей - это не задача интервьюера. Однако, если соискатель не смог ответить на вопрос, но всё же заинтересовался, то подсказать или хотя бы указать ему на правильное решение, прежде чем переходить к следующему вопросу - это вопрос профессиональной этики, демонстрация того, что здесь ему в случае чего помогут, научат, не бросят наедине с техническими проблемами. Скажите хотя бы пару слов, что ему погуглить, что почитать. Ведь интерес к правильному решению задачи - это само по себе положительное качество технического специалиста, и не стоит демотивировать такого человека пренебрежительным отношением к его ошибкам или неточностям.

    Собеседование с позиции интервьюера

    Каждый раз при открытии новой вакансии ведущему специалисту или начальнику отдела приходится проводить множество технических собеседований. На собеседования приходят люди с разным техническим опытом, уровнем подготовки, ожиданиями. Для проведения собеседований нужно продумывать план разговора, составлять список вопросов, а потом пытаться по ответам на эти вопросы понять, подходит человек на должность или нет. И вот иногда соискатели на собеседованиях говорят такие вещи, что становится сразу ясно - нет, ты с этим человеком работать вместе не сможешь. Вот некоторый набор ключевых фраз соискателей, которые настораживают лично меня.1. «Какие-то у вас вопросы теоретические. Я не силён в теории, я закалён в практике! Давайте лучше тестовое!»
    Слово «теоретические» обычно произносится с пренебрежительным оттенком, как будто это что-то плохое. Но беда даже не в этом. Думаете, этой фразе предшествовала просьба интервьюера доказать теорему Коши? Дать точное определение третьей нормальной форме? Отнюдь. Такие возгласы я слышал в ответ на следующие вопросы:

    • чем сравнение по == отличается от сравнения по equals в Java?
    • расскажите, как устроена хэш-карта.
    • объясните своими словами, что такое REST.
    • что такое транзакции и зачем они нужны?

    Да, с определённой позиции, любой вопрос по программированию является теоретическим, если он не требует от вас прямо здесь и сейчас написать строчку кода. Но я уверен, что человек с достаточно большим опытом в определённой области должен уметь своими словами объяснить самые базовые вещи, или хотя бы не делать вид, что их незнание - это нормально и естественно.2. «Не ожидал здесь испанскую инквизицию! У вас прямо как на экзамене в институте. Обычно просто спрашивают, где работал, что делал»
    Вы пришли на техническое собеседование. На техническом собеседовании вам будут задавать технические вопросы, чтобы проверить ваши технические навыки. Методику проверки и выбор вопросов оставьте на совести интервьюера - вопросы не всегда могут вам казаться адекватными, но интервьюер знает, какую именно информацию он хочет о вас получить, анализируя ваши ответы. Многие вопросы нужны не затем, чтобы проверить знания, а чтобы заставить вас порассуждать и посмотреть на ход ваших мыслей. Помните также, что не на все вопросы требуется идеально точный ответ, и если вы внятно ответите хотя бы на половину из того, о чём вас спросили, это уже произведёт хорошее впечатление.3. «Мне и не нужно это знать, я специализируюсь на более высокоуровневых задачах!»
    Не надо путать специализацию и незнание основ программирования. От разработчиков мобильных приложений я слышал подобные вещи про протоколы стека TCP/IP, от фронтэнд-программистов - в ответ на вопросы про алгоритмы сортировки и поиска. «Зачем мне это знать, всё есть в стандартной библиотеке, я работаю на более высоком уровне». В ответ на такие заявления я давно придумал пару небольших задачек с подло скрытой алгоритмикой - в надежде показать, что «наивное» решение, выданное от незнания алгоритмов, не выдерживает критики, и побудить хотя бы к самообразованию. Причём это не какие-то искусственно сконструированные задачи, а такие вещи, которые встречаются в разработке ежедневно. Любой код это алгоритм. Понимание основных алгоритмов и структур данных важно для любого программиста, а протоколы сети Интернет - это база, без знания которой невозможно грамотно написать хоть что-то, что выходит за пределы одного компьютера.4. «А сами-то! / А покажите ваш код! / А вот я зашёл к вам на GitHub, а там такое…»
    Меньше всего интервьюеру хочется взять человека на работу, а потом выслушивать от него критику своей кодобазы. Да, она, скорее всего, неидеальна. Да, технический долг есть везде и у всех. В любом коде найдётся что покритиковать. Но если вы действительно считаете себя настолько крутым, что видите очевидные проблемы в коде своих потенциальных работодателей - переведите это в конструктивный позитив: я знаю, как улучшить, у меня есть наработки на эту тему, я смогу принести вам пользу.5. «Вы не правы!»
    Всякое бывает, конечно, но мнение относительно неправоты интервьюера или сомнения в его компетентности лучше оставить при себе до окончания собеседования. Потом погуглите и разберётесь, кто из вас был прав. Техническое собеседование - это не место для дискуссий или самоутверждения, и вопросы здесь в первую очередь задают вам. Интервьюер не станет спрашивать о том, в чём сам не разбирается.

    Заключение

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

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

    1. JavaCore
    2. Базы данных.
    3. Инструменты, которыми пользуешься.

    JavaCore

      Вначале меня попросили нарисовать иерархию интерфейсов у Коллекций (это было не сложно, там всего их несколько (Collection , List , Set , Queue , Map).

      В чем различие ArrayList и LinkedList (это один из самых заезженных вопросов и ответов в инетах просто тьма).

      Обсудили скорость выполнения запросов в них и какая разница между листами.

      Вопрос про класс Object . Какие у него методы, что они делают.

      Рефлексия. Что делает метод getClass() . Очень интересный вопрос, разберите его. Особенно про то, как получить всё про класс, пусть даже там приватные методы или переменные.

      Спросили за многопоточность. Слабенько, как я считаю, так рассказать как ты понимаешь что такое многопоточность. Что нужно, чтоб запустить новый поток. Реально, если вы 20+ уровень, то эти вопросы для вас покажутся смешными.

      Что можешь сказать про Stream . Это имеется в виду не про Java 8. Имеется в виду потоки ввода и вывода. Как базовые интерфейсы, какие они (символьные и байтовые). На понимание, никакой конкретики.

    • Исключения. Здесь опять-таки попросили нарисовать иерархию исключений, какие бывают, какие из них checked , а какие unchecked . Что нужно делать с Runtime исключениями. Назовите самое часто попадающее (NullPointerException).
    • Вопрос с тем, что нужно делать с checked исключениями(пробрасывать дальше или обработать - понятно и то и другое).

    ООП

      Что такое ООП в двух словах?

      Какие еще есть парадигмы программирования? В чем их различие от ООП

      Какие основные принципы ООП (наследование,полиморфизм и инкапсуляция)? Рассказать про каждый из них. Пока всё абстрактно, не привязываясь к какому-то языку.

      Задача на понимание проектирования систем: есть Лошадь и Птица. Нужно получить Пегаса. принцип "has a" и "is a"

    REST

      Что такое REST. В Википедии об этом говориться очень круто. Реально статьи из Википедии для ознакомления хватит.

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

      Коды состояния HTTP. На какие пять частей делиться, расскажите про самые известные (200,204,404,500,501). Зачем они. Спросили еще про 401 и 403. Но я не знал их. Сказали они важные.

    Базы данных

    Здесь я рассказал, что знаю MySQL. Рассказал про три нормальные формы. Рассказал про Join"ы, какие бывают и нарисовал пересечение областей, в котором используются разные джоины. Рассказал про то, как я понимаю реляционную БД. Не забыл еще о про MongoDB - это NoSQL база данных. Через некоторе время я напишу и про это.

    Другие инструменты

    Здесь мы прошлись по моем резюме. У меня было написано, что использую Maven/Gradle для сборки, использую JIRA для тасков, git, Docker, Swagger. Для Continuous Integration - Stash, Bamboo, Puppet. Для тестирования JUnit , Mockito, JMeter. Я мог что-то забыть, поэтому если интересно - спрашивайте в комментариях постараюсь ответить. Это была первая часть собеседования. Теперь жду результаты и если да, то будет вторая часть. Напишу о ней как только так сразу. Всем кому статья понравилась и была полезна - ставьте "+". Пишите в комментариях. См. также мои другие статьи: