Наймаючи молодшого розробника, що мені запитати? [зачинено]


56

Зараз ми наймаємо молодшого розробника, щоб допомогти мені, оскільки у мене більше проектів, ніж я зараз можу керувати. Я ніколи не наймав когось, хто не був другом чи принаймні знайомим. У мене є телефонне інтерв'ю з єдиним претендентом, який насправді виділявся зі мною (на папері), але я ніколи цього не робив.

Наші проекти - це велика масштабованість, обмінні даними веб-програми, які обробляють мільйони транзакцій на годину на різних серверах та клієнтах. Для мови / стека ми використовуємо ASP.Net MVC2, WebForms та C # 4, MSSQL 2008 R2, всі вони працюють на версії Windows Server 2008 R2

Що я мушу його запитати? Як слід структурувати телефонний дзвінок?


5
Чому молодший розробник, а не старший?
Робота

10
Вартість; компанія щойно стала прибутковою в цьому кварталі ... і моє его є тендітним;)
Джеремі Бойд

48
Багато в чому «недорогий» розробник може бути дорожчим, ніж досвідчений / дорогий розробник. Неміцний коментар до егою прямо-таки страшно. Якщо ти ніколи не наймаєш людей, які розумніші за тебе, то ти завжди викладач і ніколи не студент. Так ви залишитеся в пилу.
JohnFx

6
Там є кілька фальшивих юніорів (<3 роки досвіду, але багато навичок). Чи важливий вік?
Джеймс П.

2
Якщо ви наймаєте молодших розробників, це означає, що ви не в змозі оцінити їх досвід. Тому що вони не мають великого досвіду своєї короткої кар’єри. З іншого боку, ви можете оцінити їхні навички програмування, а також побачити, як вони пишуть код. Отже, першим кроком може стати тест на вміння, наприклад http://tests4geeks.com. На другому кроці ви можете попросити їх написати прості програми вдома. У вашому випадку це може бути програма MVC, яка показує список деяких даних за допомогою JSON та AJAX. Список автоматично оновлюється таймером, тому опублікований елемент можна побачити без перегляду ..
суворий

Відповіді:


49

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

По суті, за телефонним інтерв'ю ви хочете розібратися, чи це хтось, хто захоплюється технологіями та програмуванням та зацікавлений у навчанні та знанні більше.

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


Я б хотів вибрати два відповіді, тому що і твій, і Пітер К. - чудовий комбо.
Джеремі Бойд

5
Ця відповідь обмежена, і це зашкодить людям, які дотримуються лише цієї поради. На екрані телефону дотримуйтесь порад Стіва Йегге . Для особистої роботи - Проблеми з кодуванням та дотримуйтесь Посібника Джоела по партизанським інтерв'ю . У вас є дизайнерське запитання - "які всі кроки потрібно зробити <вставити загальний нетривіальний фрагмент програмного забезпечення>?" Ви побачите, що незалежно від досвіду, всі хороші наймачі мають хороші, швидкі відповіді на ці проблеми.
Роберт П

Хочеться, щоб я міг +3 @RobertP-блоги таких людей, як Єгге, Джоел та Етвуд - скарбники для тих, хто проводить інтерв'ю чи будь-яку керівну посаду. чи справді хтось у цій галузі, але особливо, якщо ви готові давати керівництво або оцінювати інших інженерів.
Джиммі Хоффа

26

Я використовую відкритий підхід до інтерв'ю по телефону, але для того, щоб надати певну структуру, я зазвичай прошу людину поговорити через резюме, яке вони подали. Часто шлях їхнього резюме підкаже інші питання, і ви краще зрозумієте, що вони таке.

Інша річ, про яку слід подумати під час телефонного інтерв'ю, - це запитати: Чи можу я працювати з цією людиною? Вони енергійні? Дратівливий? Точні?


20

Код з ними.

Ви обов'язково повинні робити звичайні речі для інтерв'ю. Але я нікого не наймаю, не роблячи з ними сеансу програмування.

Мій підхід: я займу 2-3 години і проблема з іграшками (наприклад, "Давайте побудуємо Twitter v 0.1" для повнорозмірного диска, або "Давайте реалізуємо Список від примітивів" для бек-енд-шоу). Ми сядемо за той самий комп’ютер і поговоримо, як з цим боротися. Я напишу перший одиничний тест і скажу: "Зроби цей пропуск". Можливо, я напишу наступну пару тестів, щоб допомогти їм пройти. І тоді я взагалі відпускаю їх бігати, стрибаючи лише зрідка. Коли ми скорочуємось, я зупиняю їх і запитую, де вони візьмуть його далі, і що вони хочуть зробити, перш ніж натиснути на це.

Що я шукаю:

  • Чи можуть вони добре співпрацювати?
  • Чи розуміють вони основи?
  • Чи можуть вони розбити проблему на частини?
  • Чи цінують вони чистий код?
  • Вони ловлять власних клопів?
  • Вони намагаються дурити, коли чогось не знають?
  • Чи їм подобається кодування?

17
Я серйозно сумніваюся, що молодший буде добре робити сеанси програмування в парах з модою TDD-стилю, або взагалі навіть тестовими одиницями.
Мартін Блер

3
Залежить від рівня молодшого програміста. Я тільки найняв одного минулого тижня, який був чудовим у цьому. Однак, ширше, це частина того, що я намагаюся з’ясувати під час співбесіди. Якщо вони не добре підходять до тестування, я просто напишу тести самостійно, або дозвольте їм заряджатись без тестів. Будь-який спосіб дозволяє мені побачити, які їх сильні та слабкі сторони.
Вільям Піетрі

2
Я б не хотів цим займатися зараз, після 10-річного досвіду, неважливо, коли я був молодшим. Жахлива думка!
AnthonyBlake

3
Я вважав би себе молодшим програмістом і вітав би такий підхід, щоб показати, як і що я можу зробити. Я занадто часто стикаюся з питаннями, які вимагають досконалих визначень словника, мало враховуючи їх використання та загальну реалізацію. Чи бажаєте я процитувати запам'ятований список використання staticключового слова в Вікіпедії або показати, як я можу використовувати його у життєздатному та застосовному контексті?
amcc

7

What's your Stack Overflow account name?

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

В іншому випадку застосовуються стандартні запитання. Запитайте про складні ситуації та про те, як вони їх подолали. Запитайте про те, які нові мови вони вивчають або думають про вивчення, і чому. Запитайте їх, який IDE вони використовують, і чому вони обрали його? Яке управління джерелом?

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


Краще попросіть їх обліковий запис github, хоча вони, мабуть, поділилися б цією інформацією, якби вони мали обліковий запис.
Робота

7
Цього разу я ввійшов у ТА і зрозумів, що 90% людей там піклуються лише про розробку веб-сайтів ... тоді я пішов ... так багато для мого представника.
Pemdas

3
Хоча це може працювати, це не обов'язково точно. Можна докласти значних зусиль у своїй оплачуваній роботі, ніж у випадкових консультаціях, що надаються.
NoChance

5
Для чого це варто, деякі найкращі розробники в моїй компанії або не мають облікового запису SO або мають репутацію <100. Звичайно, це здорово, якщо вони мають обліковий запис з високим представником, але ви не можете багато читати в вони не мають високого.
Джеремі Віггінс

Насправді, якщо кандидат дещо активно працює на ЗП (або якщо він був активним іноді в минулому), ви, ймовірно, знайдете посилання на нього у своєму резюме. З іншого боку, інтерв'юери рідко мають час переглядати щось подібне. Що в деяких випадках може бути для вас корисним, тому що я, наприклад, не пишаюся кожним запитанням / відповіддю, яке я опублікував на ТАК.
Раду Мурзеа

6

Одне, чого я тут не побачив у своєму швидкому читанні, - це необхідність запитати їх про:

1 - Готовність вчитися

2 - Можливість самонавчання проти формальної підготовки

3 - Приклад чогось, про що вони дізналися в минулому

4 - Приклад областей, які їм не комфортні

5 - Загальне запитання на високому рівні, наприклад, "якщо перед вами поставлено завдання створити веб-додаток про ... які завдання, які повинні виникнути, і хто повинен їх виконувати" - Це повинно дати вам уявлення про їхні поточні знання про процес розробки - Це не обов’язково бути точним, але принаймні ви дізнаєтесь їх погляд на сьогоднішній день.


4

Поговоріть зі мною через проект, над яким ви працювали в минулому

  • Опишіть загальну архітектуру проекту. Високий рівень - це добре.
  • Що вам сподобалось у проекті.
  • Що одне, що вам не сподобалось у проекті.
  • Щось таке, що, заднім числом, ви зробили б інакше?

Це чудове запитання для інтерв'ю, на мою думку, по телефону чи іншим чином. Якщо вони можуть розумно поговорити про проект, над яким працювали, ймовірно, що вони "отримають його". Ви наймаєте розробника молодшого рівня, тому не важливо, щоб вони ще були експертом, але вони повинні, принаймні, добре зрозуміти свою сферу, щоб про це поговорити. Зазвичай люди, яких ви хочете взяти на роботу, не матимуть проблем із цим, тоді як люди, від яких ви хочете залишитися осторонь, відповідатимуть через пару пропозицій чи менше.

Що ви робите, щоб залишатися в курсі?

  • Які блоги ви читаєте?
  • Які книги ви читали / читаєте?
  • Ще щось?

У галузі, яка постійно змінюється, я думаю, що їм важливо залишатися в курсі. Це не найважливіше питання, яке я задаю в інтерв'ю, але якщо вони не зможуть нічого сказати, це не чудовий знак.

Розкажіть, як би ви писали клас велосипеда

Можливо, краще питання для особистого інтерв'ю, щоб вони насправді могли написати якийсь псевдо-код, але я думаю, що це може спрацювати і для телефонного інтерв'ю ... Опишіть велосипед (він має ручки, колеса тощо. Хтось їде на ньому. ) та запропонуйте їм описати, як вони моделювали б клас (и). Тут нічого не руйнується, але якщо вони боротимуться з цим питанням, вони, ймовірно, ще є ТОО молодшими, щоб стати перевагою.


2

Вже написано багато хороших порад щодо інтерв'ю, але я не думаю, що ви можете зайняти цю посаду, поки точно не дізнаєтесь, що вони збираються робити щодня. Якщо ваша перша думка була: "Що б мені не потрібно було робити". просто перестань. Знайдіть певний фрагмент коду для їх перегляду. Виберіть для них найкращий і найгірший код, щоб подивитися, чи знають вони різницю. Дайте їм області для роботи над першим швидким проектом, який, можливо, був занедбаний.

Сподіваємось, ви найняли найкращого програміста, але у кожного є сфери, в яких вони кращі / досвідченіші, ніж інші. Скористайтеся цим і визначте їх роль відповідно.

О, і найміть когось із історією виконання справ.


0

Коли ви ведете один на один обговорення з розробником, ви можете познайомитися з ним, а потім перевірити, чи чесні вони з вами.

Для цього ви можете задати йому наступне питання, щоб знати, наскільки він справді чесний

  1. Якщо вони провели якісь сертифікати, як-от сертифікація Microsoft, перевірте з ними, щоб дізнатися, чи справді вони вивчили це, і очистити його.

  2. Деякі молодші розробники, які зробили свої проекти на останній рік, не зробили б проект самостійно, тобто їхні друзі, мабуть, зробили це для них і т.д.

Чесність відіграє дуже важливу роль, коли молодший розробник доручає конфіденційні проекти.

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


1
припускаючи найгірших людей?
tp1

+1 для припущення. @ tp1 Утримуйте всі параметри відкритими. : D
Картік Сріенівасан

0

Нещодавно генеральний директор Sandglaz Нада Алдахле написала про це повідомлення в блозі, спираючись на власний досвід найму розробників для її запуску. Ось кілька речей, які вона шукає:

  • вирішення проблем розуму
  • сильні комунікативні навички
  • задавати питання архітектури та алгоритму; молодший розробник повинен вміти розробляти нові невеликі функції, а питання щодо алгоритму можуть розповідати про мислення, що вирішує проблеми, і про те, який фундамент вони мають
  • пазли для виділення аналітичних навичок

І, звичайно, тест програмування, який не повинен складатися хоч із питання про Fizz Buzz. Завдання з реального життя, яке може бути виконане протягом декількох годин у вашому офісі, було б найкращим випробуванням.

Ви можете прочитати більше її порад тут: http://blog.sandglaz.com/how-to-interview-and-hire-junior-developers/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.