LINUX.ORG.RU
ФорумTalks

Как нужно проводить собеседования

 , , ,


0

3

Волею судеб скоро буду проводить собеседования на работу. Джава если что. И вот тут встает вопрос - какой лучший подход к собеседованиям?

1) Мне не важно что вы знаете, я хочу чтобы вы за*бались.

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

2) Проверяем адекватность кандидата.

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

Какой путь вам близок? почему?


Ответ на: комментарий от abraziv_whiskey

Да с некоторой периодичнойстью нанимать будут, вопрос не в этом. В своей жизни пару раз были собеседования по пункту 1, не могу для себя понять зачем так отсеивать адекватных кандидатов. В самом деле - не rocket science же, но может я чего-то упускаю?

by_zero
() автор топика
Ответ на: комментарий от by_zero

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

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

abraziv_whiskey ★★★★★
()
Ответ на: комментарий от by_zero

периодичнойстью

Блин, ржу. Повтори это слово несколько раз вслух. Оно даже звучит. Нелепо, но звучит.
:)

MimisGotAPlan
()

Дать тестовое заранее и потом его обсуждать и/или короткое задание прямо на собеседовании и тоже обсуждать. Так и предмет обсуждения собеседуемому понятен (он же и писал) и можно задать вопросы разного уровня (включая вопросы первого рода, если по коду оно имеет смысл, но не концентрироваться на этом). Всем кандидатам давать одинаковые задания, тогда можно будет сравнивать результаты.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

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

by_zero
() автор топика
Ответ на: комментарий от by_zero

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

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

А какая у вас сфера деятельности и язык, что находите столько желающих бесплатно тратить свободное время?

by_zero
() автор топика
Ответ на: комментарий от by_zero

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

der_looser ★★
()
Ответ на: комментарий от by_zero

Я не так чтобы особо провожу их регулярно, просто показало себя хорошо. Но вообще PDF библиотеки и компиляторы, на и для C++ в основном.

бесплатно тратить свободное время?

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

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

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

by_zero
() автор топика

Я несколько раз проводил собеседования. Какие сложности:

1) Часто у нас есть вот сейчас этот человек, а других нет. А работать надо

2) При собеседовании не вдавался в дебри. Если человек адекватный изучит.

3) Расспрашиваю где работал, где живет. Удобно ему ездить к нам? Какие цели ставит.

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

Не поверите у нас хотели заменить начальника транспортного цеха. Взяли человека. Старый начальник передал все права и тут СБ выясняет, что новый аферист и что на него открыто дело от которого он скрывается.

dmxrand
()
Ответ на: комментарий от by_zero

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

Правда там уровень под почти архитектора, а не галеры в ынтырпрайзе.

Vit ★★★★★
()
Ответ на: комментарий от by_zero

Тестовое задание - отличная оценка адекватности конторы.

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

Надо понимать, что человек находится в режиме стресса.

dmxrand
()
Ответ на: комментарий от Vit

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

Это из моей жизни. Я это великолепие неделю только осматривал неделю. Потом отказался. Задавал вопросы разрабу и получал ответ «понимаешь этот кусок был написан в 2005 году и он фундаментальный и менять его нельзя». В базе таблиц за 2000 штук.

А да чуть не забыл. Дампа базы нет. Даже если ты собрал систему ты не можешь тупо потыкать в нее ибо юзера нет. А юзера нельзя создать потому, что роли нет (исторически вручную добавили). А куда в базе прописать роль неизвестно. Там только юзеры хранятся в 10 таблицах. Ну и все остальное.

dmxrand
()
Последнее исправление: dmxrand (всего исправлений: 1)
Ответ на: комментарий от dmxrand

Ну то ж махровая проприетарщина. А я с опенсорсами во всем белом :) . Отношение другое совсем.

Vit ★★★★★
()
Ответ на: комментарий от Vit

Не скажи. Вот тебе пример https://www.odoo.com/ конечно это хорошая система, но для того чтобы без сопровождения ее писать надо минимум год....

Кстати с проприетарщиной. Был у нас самопальный ЕРП. Приходит налоговая и говорит «а распечатайте отчет за 2015 год». Бух говорит - не вопрос. Жам клавишу и вся система падает. Ибо в таблицах есть данные за 2015 год, но тогда небыло полей которые добавили в 2017 :-)

dmxrand
()
Ответ на: комментарий от dmxrand

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

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

Vit ★★★★★
()

Если у кандидата есть профайл на гитхабе, то ТЗ не даем, достаточно посмотреть историю коммитов.

Если у кандидата нет профайла, то просим прислать примеры кода, релевантные нашему стеку технологий.

Если у кандидата нет примеров кода (отказывается присылать, NDA, еще что-то странное), то просим выполнить простое ТЗ. В случае отказа на собеседование не приглашаем.

На собеседовании до трети всего времени задаем вопросы по коду который прислал кандидат, чтобы: 1) убедиться насколько грамотна и корректна речь, как формулирует мысли 2) насколько он компетентен в том что запрограммировал (осознанная компетентность) 3) убедиться в том что именно он написал этот код

outtaspace ★★★
()

1) Мне не важно что вы знаете, я хочу чтобы вы за*бались.

Приглашаешь кандидата в 9 утра, выдаёшь лопату и объясняешь, какую яму хочешь получить. К трём дня оцениваешь яму и требуешь закопать её.

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

polym
()
Ответ на: комментарий от imul

Кого именно? Начальника транспортного цеха? Новый пропал с работы. Кинул и книжку и все. А что делать со старым никто не знал. Он вообще был уже «зомби». В итоге еще много лет там проработал пока сам не уволился

dmxrand
()

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

TaV0x222
()

Мне лично наплевать, знает ли собеседуемый про устройство HashMap или наизусть UML диаграммы всех 23 шаблонов GoF.

Мне важен чел, имеющий практический опыт, а не «титеритик».

Так, практик всегда напишет заполнение и вывод НashMap, а студиоуз будет умничать про «бакиты», а реальный пример не осилит.

«Заср@ть» вопросами можно любого - и умницу-тугодума и дурака-всезнайку.

Bioreactor ★★★★★
()
Последнее исправление: Bioreactor (всего исправлений: 2)

3) Изучаем инициативность: есть ли свои проекты, делал ли что-то дл университета, доводил ли прошлые проекты до конца, читает ли книги для повышения квалификации.

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

lochness
()
Ответ на: комментарий от Bioreactor

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

by_zero
() автор топика
Ответ на: комментарий от lochness

А вот как часто надо книги читать для повышения квалификации чтобы быть годным кандидатом? При условии что проектов нет и в свободное время человек занимается вещами не связанными с работой ну никак.

by_zero
() автор топика
Последнее исправление: by_zero (всего исправлений: 1)
Ответ на: комментарий от by_zero

А вот как часто надо книги читать для повышения квалификации чтобы быть годным кандидатом?

Ой ща отгребу. «Третий рейх изнутри. Альберт Шпеер.» Пойдет?

dmxrand
()
Ответ на: комментарий от lochness

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

Xellos ★★★★★
()

2. Ибо идя первым путем ты отпугнешь адекватов.

drull ★☆☆☆
()

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

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

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

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

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

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

stevejobs ★★★★☆
()
Ответ на: комментарий от abraziv_whiskey

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

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

drull ★☆☆☆
()
Ответ на: комментарий от outtaspace

2) насколько он компетентен в том что запрограммировал (осознанная компетентность)

Зачем вам осознанная компетентность?

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

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

stevejobs ★★★★☆
()
Ответ на: комментарий от Xellos

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

Автор книги «Совершенный код» утверждает, что книги читать надо. В рабочее время читать - неэтично как минимум. Когда же их читать?

lochness
()
Ответ на: комментарий от stevejobs

Типа как попросить гусеницу объяснить, как она перебирает таким количеством лапок

Допустим я знаю чем осознанная отличается от неосознанной.

Зачем вам осознанная компетентность?

1) Если человек в отдельных вопросах «плавает». Важно чтобы он разбирался в том что написал. Если мы не понимаем как работает наш код - код нам не принадлежит. 2) Чтобы посмотреть как человек объясняет. Если он опытный, то как он будет молодняк учить?

Хорошо объясняют только новички

Все самые трудные вопросы мироздания имеют очевидные ответы. Если не может дать разъяснения по достаточно высокоуровневым вопросам - такой человек не интересен.

outtaspace ★★★
()
Ответ на: комментарий от stevejobs

Если попросить эксперта объяснить решение - всю его экспертность сдует к чертям.

Если он не может объяснить, то, может, он сам не понимает?

lochness
()
Ответ на: комментарий от outtaspace

Можно пример высокоуровневого вопроса?

by_zero
() автор топика

Посмотри интересное видео про неадекватные интервью от Антона Архипова: https://youtu.be/Vlb_Is-rRTQ

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

Очень нравится, когда кандидаты говорят: «Я это не запоминал, когда надо будет, погуглю». Ага, вот так вот взял и погуглил, какую мапу брать в том или ином случае. По-любому человек использует первое попавшееся / знакомое, а не сравнивает.

Irben ★★★
()

А ведь человека ищут под определённой круг обязанностей, проект... почему не сократить круг вопросов в соответствии с этим кругом?

Меня однаждв спросили как работает компилятор в Ruby. Спустя 5 лет я наконец узнал - как. Но к обязанностям Ruby-программиста это никак, совсем никак не относится.

lochness
()
Ответ на: комментарий от Irben

Посмотри интересное видео про неадекватные интервью от Антона Архипова: https://youtu.be/Vlb_Is-rRTQ

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

lochness
()
Ответ на: комментарий от outtaspace

Если он опытный, то как он будет молодняк учить?

он будет работу работать, а не учить.

stevejobs ★★★★☆
()
Ответ на: комментарий от Irben

Видео хорошее, и общий подход нравится

by_zero
() автор топика
Ответ на: комментарий от by_zero

нет, не противоречат)

Например, я - успел немного увидеть много разных языков, и на каждом из них успешно писал веб-приложения. Но я не помню, какие методы есть у List в каждом конкретном языке - это помнят пальцы, либо и они не помнят. Но при этом что угодно можно нагуглить либо в готовой библиотеке, либо на Stackoverflow за секунды. Поэтому весь класс «вопросов для собеседования» вида: какие вы знаете коллекции в C#, какие методы у List в Java, итп - не имеют особого смысла. Без IDE, гугла, и привычной среды - я не знаю вообще никаких. С ними - знаю любые.

с другой стороны, есть вопросы, на которые можно и нужно отвечать интуитивно. Например, вот ты писал веб-приложение, и там нажатия всех кнопочек обрабатываются по HTTP прямыми вызовами (совершенно похрену, помнит ли поциент каким конкретным API) - а не проще ли заменить это HTTP-концентратором с очередью (например ActiveMQ, но не особо важно), пусть каждый клик кнопочки ложится в очередь. Или например, есть у нас несколько очередей, и мы хотим сделать очередь очередей, чтобы она сливала очередь в очередь - какие продукты вы будете использовать, и когда (на вскидку) они сдохнут под нагрузкой? Ну и КОНЕЧНО человек не сможет просто так взять и привести конкретные баги в ActiveMQ, но сможет по опыту сказать что оно падало там-то и там-то, а ZeroMQ падало примерно там-то, поэтому наверное вот на таких задачах лучше Zero, а на вот таких - Active. И КОНЕЧНО он не сможет вспомнить детали API каждой из этих очередей, что он - задрот что ли помнить это говно наизусть

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

stevejobs ★★★★☆
()

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

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

Legioner ★★★★★
()

Отсеивай неадекватов, набирай умных. Знание джавы - не так важно, по ходу дела освоят.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.