C# - как проводить собеседование ?
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.10.07 21:42
Оценка:
Привет !

Провожу собеседование с кандидатами по технической части. Нужен специалист — C# .Net WinForms DevExpress XML.

Раньше больше спрашивал по C++/ATL/COM, чистых дотнетчиков не собеседовал. Сейчас занимаюсь собеседованием чисто дотнетчиков(всего собеседования провожу около 3-4 лет).

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

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

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

Понятно, что знание не означает умение, а умение не означает работу, а работа не означает знание
Тем не менее, кто как спрашивает по технической части ?

Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?
Re: C# - как проводить собеседование ?
От: Кэр  
Дата: 30.10.07 22:50
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

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


В Microsoft в телефонном интервью спрашивают: как работает GC, как построена работа с ошибками в C#. В личных интервью вопросов именно по языку не задают. То есть на знание конкретно C# — вопросов на самом деле не очень много. Хотя даже по заданным "простым" вопросам можно уже многое понять — насколько стройное изложение, как хорошо собеседуемый может объяснить сложное простыми словами, насколько сильно при этом отклоняется от истины.

Я бы от себя добавил вопрос про операции со строками — в .Net они проводятся с учетом текущей локали и большое количество даже senior программистов пишут код невалидный для экзотических локалей. Ответ на этот вопрос заодно показывает, насколько четкая картина мира в голове относительно "представление строки в памяти", "интерпретация строки в различных локалях". Хотя это уже во многом вопросы на засыпку. Я бы лучше что-нибудь по структурам данных поспрашивал и по несложным алгоритмам. Знания конкретной технологии — вещь приходящая
Re: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 00:03
Оценка: 4 (2) +1
PE>Основная проблема — люди не знают простых вопросов, зато знают сложные Посему постоянно ищу, что спрашивать, а что не спрашивать.
Имхо, проблема не людей, а ваша

PE>Понятно, что знание не означает умение, а умение не означает работу, а работа не означает знание

PE>Тем не менее, кто как спрашивает по технической части ?
Из ощущуния последних пройденых собеседований. Не знаю как там отвечают, давно не собеседовал, а спрашивать не умеют точно. Большинство технических собеседований похожи на "назад в университет". Упор делается на знания, а не на понимание. В результате после прохождения 2-3 собеседований можешь спокойно, к примеру, нарисовать любую uml диаграмку из GoF`а, хотя из самих патттернов использовал дай бог половину, а сам uml и того реже.
Попробуйте проводить собеседование не один. Лучше с кадровиком и лучше если это не просто девочка с улицы. Эт опозволит создать более комфортную обстановку. Не заставляйте человека долго обдумывать вопрос, задавайте наводящие вопросы, включайте его в обсуждение, общайтесь.
По поводу задачки на 15 мин на листочке со скобками. Это просто ОПА. Вы сами часто пишите код на листочке. Заметьте не наброски кода, а именно законченый код со скобочками да ещё с тремя жизнями Думаю большинство из нас довольно быстро забывают что такое ручка, рабочий инструмент у нас клавиатура Меня дико ломала необходимость писать на бумаге, даже программку из 4-5 строчек. При наличии компьера тоже не всё так гладко. Я без решарпера уже не могу и порою ловлю себя на том, что на голой студии задумываюсь над простыми вещами вроде синаксиса foreach Так что достаточно спросить именно решение. Программку из 10-15 строчек и её идею довольно просто описать словами. Зачем вводить человека в стрессовое состояние. Что вы хотите протестировать таким способом на техническом собеседовании ?
С технической точки зрения в винформах нет ничего сложного. Основные проблемы при использовании многопоточности и GDI. У более продвинутых можно спросить про binding И если человек идёт на эту позицию, то общаться можно довольно долго.

PE>Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?

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

зы. Хотя, зачем я вам всё это пишу. С опытом проведения собеседований 3-4 года, вы должы это и так знать
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[2]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 00:11
Оценка:
PE>>Если есть у кого большой опыт, поделитесь, пожалуйста, как вы спрашиваете в подобных случаях кандидатов ? Собеседование, напомню, провожу как технический специалист — кандидаты могут попасть на разные проекты.
Кэр>В Microsoft в телефонном интервью спрашивают: как работает GC, как построена работа с ошибками в C#.
Помоему у каждого на интервью спрашивают как работает GC. Что однако не мешате людям, с завидным постоянством, вызывать GC.Collect
У меня на каждом интервью спрашивали как работает GC. Всё сводилось к цитированию Рихтера. Что именно хотели этим протестировать для меня до сих пор остаётся загадкой.
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re: C# - как проводить собеседование ?
От: SkyDance Земля  
Дата: 31.10.07 06:21
Оценка: 12 (2) -1
PE>Основная проблема — люди не знают простых вопросов, зато знают сложные Посему постоянно ищу, что спрашивать, а что не спрашивать.

Напоминаете мне профессоров из ВУЗов. Которые эти самые "простые вопросы" объясняли фразой "отсюда очевидно, что ...", но потом требовали у студентов доказывать эти "очевидные" истины.
Возможны два варианта:
1. Вы не совсем корректно представляете себе, что просто, и что сложно. Например, вы так долго работали с одной конкретной сложной технологией, так в нее погрузились, что для вас она стала простой. И, напротив, совсем не работаете с другой, простенькой, потому вам она кажется странной и сложной.
2. Вы ждете ответа на "простой" вопрос именно в той форме, в которой этот ответ содержится у вас в голове. Грубый pattern matching механизм Ну как у плохих преподавателей, которые дают лекции, и на экзамене требуют ответа в точности теми же словами, что они говорили на лекции. Для того, чтобы это обнаружить, надо просто... поприсутствовать на собеседовании в виде безмолвного человека, а собеседование пусть проведет ваш коллега. Просто посмотрите со стороны, как это происходит. Многое станет более ясным. Просто за 4 года уже глаз-ухо замылились, на однотипных собеседованиях это быстро происходит.
Re[2]: C# - как проводить собеседование ?
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 31.10.07 12:45
Оценка:
Здравствуйте, Dog, Вы писали:

PE>>Основная проблема — люди не знают простых вопросов, зато знают сложные Посему постоянно ищу, что спрашивать, а что не спрашивать.

Dog>Имхо, проблема не людей, а ваша

Я об том и говорю, что проблема у меня.

Dog>Попробуйте проводить собеседование не один. Лучше с кадровиком и лучше если это не просто девочка с улицы.


Идейка весьма сильная ! Лучше психолога проф. рядом сажать.

Dog>По поводу задачки на 15 мин на листочке со скобками. Это просто ОПА.


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

Dog>С технической точки зрения в винформах нет ничего сложного. Основные проблемы при использовании многопоточности и GDI. У более продвинутых можно спросить про binding И если человек идёт на эту позицию, то общаться можно довольно долго.


binding сдается очень сложный вопрос.

PE>>Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?

Dog>Надо не спрашивать, а общаться с человеком.

Я стараюсь так и делать, но проблема в том что я профессиональный девелопер а не профессиональный психолог.
Re[2]: C# - как проводить собеседование ?
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 31.10.07 12:55
Оценка:
Здравствуйте, SkyDance, Вы писали:

PE>>Основная проблема — люди не знают простых вопросов, зато знают сложные Посему постоянно ищу, что спрашивать, а что не спрашивать.


SD>Напоминаете мне профессоров из ВУЗов. Которые эти самые "простые вопросы" объясняли фразой "отсюда очевидно, что ...", но потом требовали у студентов доказывать эти "очевидные" истины.


Меня иногда зовут "профессор" или "боцман"

SD>Возможны два варианта:

SD>1. Вы не совсем корректно представляете себе, что просто, и что сложно.

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

SD> Просто за 4 года уже глаз-ухо замылились, на однотипных собеседованиях это быстро происходит.


Точно, надо попробовать поприсутствовать в качестве наблюдателя, как ты говоришь. Хотя мне кажется любой такой наблюдатель немного нагнетает атмосферу.
Re[3]: C# - как проводить собеседование ?
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 31.10.07 13:01
Оценка:
Здравствуйте, Dog, Вы писали:

Dog>У меня на каждом интервью спрашивали как работает GC. Всё сводилось к цитированию Рихтера. Что именно хотели этим протестировать для меня до сих пор остаётся загадкой.


Как именно спрашивали, не вспомнишь ?
Re[3]: C# - как проводить собеседование ?
От: yumi  
Дата: 31.10.07 13:26
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

Dog>>С технической точки зрения в винформах нет ничего сложного. Основные проблемы при использовании многопоточности и GDI. У более продвинутых можно спросить про binding И если человек идёт на эту позицию, то общаться можно довольно долго.


PE>binding сдается очень сложный вопрос.


Ахринеть, а что тогда легкий вопрос?
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re: C# - как проводить собеседование ?
От: Vzhyk  
Дата: 31.10.07 14:22
Оценка: 1 (1)
Plutonia Experiment пишет:
>
Мне показалось, что ты нес той стороны "копаешь". Ты пытаешься выяснить
какие вопросы задавать, какие простые из них, а какие сложные.
Фактически твое собеседование в таком ключе сведется просто к экзамену.
А это, ИМХО, худший вариант собеседования.

Вопрос: Какова основная цель твоего собеседования?

Для меня ответ прост, как умеет человек решать задачи?
Поэтому я всегда выяснял какие проекты человек делал, причем выяснял что
именно он делал сам и почему так, а не иначе. Смотрел на логичность его
построений, как он искал ту или иную информацию.
А язык программирования, если человек уже делал проект какой на С#, то с
большего он его знает уже. А детали, их слишком много и разных, чтобы
все знать.
Posted via RSDN NNTP Server 2.0
Re: C# - как проводить собеседование ?
От: yumi  
Дата: 31.10.07 14:53
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:

PE>Привет !

Привет!

PE>Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?

Я могу посоветовать поступить так: выложить на сайте компании тестовое задание, а на собеседовании беседовать по выполненному заданию.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[4]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:03
Оценка:
Dog>>У меня на каждом интервью спрашивали как работает GC. Всё сводилось к цитированию Рихтера. Что именно хотели этим протестировать для меня до сих пор остаётся загадкой.
PE>Как именно спрашивали, не вспомнишь ?
Как на экзамене Расскажите как работает GC. Рассказываешь поколения и т.д., в конце добавляешь про воскрешение, можно ещё про мягкие ссылки. Всё, следующий вопрос. Ни слова о применени, слабых и сильных сторонах ...
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[2]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:03
Оценка:
SD> Для того, чтобы это обнаружить, надо просто... поприсутствовать на собеседовании в виде безмолвного человека, а собеседование пусть проведет ваш коллега. Просто посмотрите со стороны, как это происходит. Многое станет более ясным. Просто за 4 года уже глаз-ухо замылились, на однотипных собеседованиях это быстро происходит.
Лучше самому походить на собеседования. Гораздо больше опыта, как отрицательного, так и положительного
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[4]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:03
Оценка:
Dog>>>С технической точки зрения в винформах нет ничего сложного. Основные проблемы при использовании многопоточности и GDI. У более продвинутых можно спросить про binding И если человек идёт на эту позицию, то общаться можно довольно долго.
PE>>binding сдается очень сложный вопрос.
Y>Ахринеть, а что тогда легкий вопрос?
Как работает GC
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[3]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:03
Оценка:
Dog>>Попробуйте проводить собеседование не один. Лучше с кадровиком и лучше если это не просто девочка с улицы.
PE>Идейка весьма сильная ! Лучше психолога проф. рядом сажать.
Лучшее собеседование на котором был проводили сразу три человека кадровик, старший программист и начальник. Было неплохое собеседование программист + начальник, так же интересно было с кадровиками у которых есть скил в психологии и которые не спрашивают тупо вопросы "какую пользу вы принесёте нашей компании". В независимости от результата, всегда остаются положительные эмоции, что мне кажется хорошо для собеседуемого и большой плюс компании.

Dog>>По поводу задачки на 15 мин на листочке со скобками. Это просто ОПА.

PE>Это то я понимаю. Много кандидатов могут легко рассказать алгоритм, но не могут ничего заимплементить. Проверял не раз, давая им доступ к компьютеру. Задача предполагает минимум времени на написание.
Минимум времени на написание вами ? Попробуйте дать её тем сотрудникам что у вас работают.

PE>Кандидат почти ничего не пишет, кроме задачи, пишу обычно я сам, что бы его не загружать.

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

PE>binding сдается очень сложный вопрос.

Сложный скорее всего из-за того, что не используют.

PE>>>Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?

Dog>>Надо не спрашивать, а общаться с человеком.
PE>Я стараюсь так и делать, но проблема в том что я профессиональный девелопер а не профессиональный психолог.
Можете проводить не с психологом, у вас его вроде нет ,а ещё с одним программистом. Выберите кто у вас поразговорчивее. Обычно всегда есть пару весёлых раздолбаев
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[2]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:09
Оценка:
PE>>Ощущение, что чего то не хватает в собеседовании. Кто подскажет, чего именно ?
Y>Я могу посоветовать поступить так: выложить на сайте компании тестовое задание, а на собеседовании беседовать по выполненному заданию.
Это должна быть очень хорошая работа, что бы я согласился тратить время на тестовое задание (имхо)
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[5]: C# - как проводить собеседование ?
От: fmiracle  
Дата: 31.10.07 15:23
Оценка: 4 (2)
Здравствуйте, Dog, Вы писали:

Dog>Как на экзамене Расскажите как работает GC. Рассказываешь поколения и т.д., в конце добавляешь про воскрешение, можно ещё про мягкие ссылки. Всё, следующий вопрос. Ни слова о применени, слабых и сильных сторонах ...


Ты удивишься, узнав, как много приходит на собеседование людей, реально работавших с .НЕТ, и при этом не знающих о поколениях, порядке сборки мусора, не слышавших о мягких ссылках и даже не представляющих такой возможности, как воскрешение...
Re[6]: C# - как проводить собеседование ?
От: Dog  
Дата: 31.10.07 15:53
Оценка:
Dog>>Как на экзамене Расскажите как работает GC. Рассказываешь поколения и т.д., в конце добавляешь про воскрешение, можно ещё про мягкие ссылки. Всё, следующий вопрос. Ни слова о применени, слабых и сильных сторонах ...
F>Ты удивишься, узнав, как много приходит на собеседование людей, реально работавших с .НЕТ, и при этом не знающих о поколениях, порядке сборки мусора, не слышавших о мягких ссылках и даже не представляющих такой возможности, как воскрешение...
Если человек после собеседования, не ответив на вопрос, неудосуживается открыть Рихтера...
В тех случаях что я встерал люди рассказывали как работает GC, но на вопрос "Какого ... здесь вызывается сборщик мусора ?", с чистой совестью отвечали "Думал, так будет быстрее"
... << RSDN@Home 1.2.0 alpha rev. 730>>
Re[4]: C# - как проводить собеседование ?
От: egaron http://127.0.0.1
Дата: 01.11.07 08:21
Оценка: 1 (1) :)
Здравствуйте, Dog, Вы писали:

Dog>>>Попробуйте проводить собеседование не один. Лучше с кадровиком и лучше если это не просто девочка с улицы.

PE>>Идейка весьма сильная ! Лучше психолога проф. рядом сажать.
Dog>Лучшее собеседование на котором был проводили сразу три человека кадровик, старший программист и начальник. Было неплохое собеседование программист + начальник, так же интересно было с кадровиками у которых есть скил в психологии и которые не спрашивают тупо вопросы "какую пользу вы принесёте нашей компании". В независимости от результата, всегда остаются положительные эмоции, что мне кажется хорошо для собеседуемого и большой плюс компании.

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


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


воскрешение ? А Великий Пост в дотнете есть или пасха ? а рождества там не предусмотрено ?

после этих "воскрешений" невольно задумываюсь — и почему это в нашем проекте только один класс имплементит IDisposable и ниче, все работает и заказчик доволен....
Re[5]: C# - как проводить собеседование ?
От: BulatZiganshin  
Дата: 01.11.07 09:17
Оценка:
Здравствуйте, egaron, Вы писали:

E>воскрешение ? А Великий Пост в дотнете есть или пасха ? а рождества там не предусмотрено ?


у нас есть всё, во что верят наши объекты! есть пророк Билли, есть иуда Джимми, и Страшный Суд, где погибнут все unmanaged объекты
Люди, я люблю вас! Будьте бдительны!!!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.