Технічний тест для старшого розробника [закрито]


21

У мене дилема. У мене є кандидат на посаду старшого розробника програмного забезпечення.

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

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

Редагувати:

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

Тож ми зробили пропозицію.

Дякую всім за розуміння.


22
рекомендовані довіреними колегами повинні бути досить хорошими. Більшість не зробить це так, як їхня репутація.
Адітя Р

28
Якщо у вас не вистачає часу, щоб перевірити його, як у чорта у вас буде достатньо часу, щоб звільнити його, шукати нового кандидата, а потім перевірити цього хлопця? Зробіть це правильно з першого разу.
Алекс Фейнман

1
@Alex: Справа не в тому, щоб не зробити процес правильно. Я хочу найняти швидко, тому що у мене є термін, який потрібно тримати. Я можу протестувати його скільки завгодно, я навіть змусив його розробити рішення в розмові - жодного коду, хоча мене справді не цікавив синтаксис мови, а запропонований рішення та відповідні технології.
Даніель Война

Ви не могли б укласти контракт протягом цього нагального часу?
Кевін Пено

1
@Aaron, чи дійсно HR буде турбувати позицію контракту? Особливо, якщо у контракті було встановлено короткий термін, щоб запобігти довгостроковій негаразді для компанії.
Кевін Пено

Відповіді:


34

Як завжди...

Це залежить

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

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

Конфіденційно я взяв технічний тест в Інтернеті як послугу для клієнта на деякий час назад (вони хотіли, щоб мої оцінки були "базовою лінією" для нових наймань), і не вдалося це зробити - здебільшого тому, що тестові запитання складалися виключно з синтаксису та імен функцій для конкретних версія певної мови. Я мовою користуюся весь час і вже роками, але не ті специфічні особливості . Це були всі речі, на які я міг шукати, коли / якщо було потрібно, і як такі були абсолютно неактуальні для вміння / компетенції.

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


:) Мені справді не цікаво форматування синтаксису чи коду. Я просто хочу досвідченого хлопця, який може впоратися з невизначеністю і добре знає свої речі. Більше того, він є SCJP - ідентифікованим в Oracle. Чи варто задавати йому питання на C # лише заради HR-процесу?
Даніель Война

3
+1 "І на частини тестувальника, і на тестувальника" ... справді. Бажаю, щоб я міг +10 цього
P.Brian.Mackey

1
@Daniel: Я не думаю, але я маю надзвичайно низьку думку щодо процесів та формальностей HR. Я думаю, що багато чого існує лише для обгрунтування існування відділу, а не для збільшення вартості для компанії. Але це лише моя думка.
Стівен А. Лоу

Якщо це онлайн-тест, то ви можете шукати відповіді так, як зазвичай, ні?
Зан Лінкс

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

33

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

Якщо тест не зміниться, пропустіть його.


2
Якщо тест не зміниться, пропустіть його. - Я думав те саме. Однак є ще одна змінна - HR, якщо вона настійно вимагає цього тесту, і це не займе багато часу, то я рекомендую зробити це за те, що HR не звинувачується в слабкому тестуванні або не підтримує правила / політику компанії.
alexb

1
@alexb Якщо HR справді вимагає тесту, саме питання є суперечливим, і тест повинен бути введений. Те, що задається питанням, ми маємо тоді припустити, що можливість не здати тест існує.
Gratzy

1
@Gratzy Безумовно, погодився. Під "HR настійно вимагає" я мав на увазі, що HR вимагає тестування, але його все одно можна пропустити (якщо HR може бути гнучким), але це може бути ризиковано для менеджера у разі найму інженера з відсутністю якоїсь необхідної кваліфікації, тому що менеджер в таких випадок можна звинуватити в тому, що він не брав тест. Просто я хотів сказати.
alexb

Що я можу додатково сказати: якщо тест не займе багато часу, я рекомендую просто взяти його, це повинно перешкоджати + отримати корисну інформацію.
alexb

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

6

Я не бачу вагомих аргументів пропустити тест. Тому слід зберігати його.

Якщо ви вірите, що кандидат буде брати участь у тестуванні, це говорить саме по собі.

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

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


Хороший момент про тест (не результат), що є проблемою. Безперечно переконайтесь, що тест є відповідним.
ChrisF

4

Технічний тест загалом корисний чи BS? Ви хочете пропустити його через те, що ви хочете, щоб його найняли швидше, бо боїтеся отримати дорожній блок до найманого вами прокату або тому, що боїтесь, що це може образити його?

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

По-друге, незалежно від того, який тиск ви відчуваєте під наймом, не дозволяйте це підштовхнути вас до прийняття поспішного рішення. Поспіх підштовхує нас сказати «так», коли ми не повинні, ігнорувати попереджувальні знаки тощо. Насправді, чим більше тиск ти піддається, тим більше потрібно тиснути на тиск, щоб переконатися, що ти прийняв правильне рішення.

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

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

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


Переважно BS, які не мають відношення до роботи. Персонал задає питання C #, але ми здебільшого є домом Java / Unix (не смійтесь - вони купили тести у консультанта з найму). Як я вже коментував вище - це не "реальний код", який запитували під час інтерв'ю, а псевдо-код та деякі ескізи UML.
Даніель Война

1
@Daniel Voina - Чи буде ця людина займатися кодуванням чи архітектурною роботою? Якщо завдання з кодування вам потрібно, щоб людина написала код в інтерв'ю. Серйозно. Якщо кандидат займається цим питанням, вам потрібно це знати, перш ніж приймати на роботу.
btilly

І те й інше. Я очікую, що він розвинеться. Я сподіваюся, що він буде приймати рішення як на рівні дизайну / архітектури, так і кодувати їх. Я думаю, що 2-е природно мається на увазі SCJP + попередній досвід + рекомендації
Daniel Voina

@Daniel Voina - тоді вам обов'язково потрібно перевірити це. Деякі дуже досвідчені, інакше дуже хороші кандидати формують таке ставлення, що кодування якось під ними. Вони можуть бути чудовими в ролі чистої архітектури, якщо чиста архітектурна роль має для вас сенс. Але якщо ви наймете його, а потім попросите їх зашифрувати, у вас не буде кінця обурення та проблем. Тому потрібно шукати це в процесі співбесіди.
btilly

4

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

Потім через пару тижнів стало очевидним, що він не зміг насправді кодувати на рівні, за яким його інтерв'ю сказав. І його особистість не відповідала команді. Позбутися його та очистити те, що він зробив, було безладдя.

Робіть технічні, перш ніж когось наймати.


3

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

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


1

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

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

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


1

Переверніть його.

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

Потім позначте деякі відповіді на власні запитання як "технічне випробування зроблено".


1

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

Крім того, наскільки здатні ви могли б сказати, що ви виконуєте роботу, яку цей тест розробив для оцінки?

Я працюю в компанії, яка вимагає близько 99% кандидатів, щоб скласти тест на програмування. 1%, яким не потрібно проходити, потрапляють у дві категорії. Перша категорія - це типи «рок-зірки», які ми активно набирали з початку роботи. Друга, і, мабуть, більш відповідна категорія - це люди, для яких процес відмовився від старшого персоналу, який має дуже сильний досвід роботи та які здатні виконувати роботу, яку вони наймають.

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


1

Я б все-таки дав тест. Він може бути рекомендований з будь-якої кількості причин (деякі з яких можуть бути не такими корисними для вас ...). Одна з переваг технічного співбесіди - розпочати процес зв’язку з іншими членами команди. Не варто недооцінювати потребу команди купуватись у процесі найму.


1

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

Потім подивіться на послідовність світлофорів. Якщо вони хороші розробники TDD , ви повинні отримати хороший повторний червоний / зелений прогрес.

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


хммм ... приємний інструмент. Я розглядав Codility codility.com, але цей безкоштовний. Спасибі!
Даніель Война

0

Ще одне питання - скільки впевненості маєте у своєму відділі кадрів.

Я, можливо, п'ю надто багато психоделічного KoolAid тут, але я часто був приємно здивований, дізнавшись, що мій відділ кадрів мав на увазі хороший план при здійсненні певного заходу щодо захисту найму. Наприклад, це здається, що це правда, що ваш старший хлопець буде потрібний для Oracle, а не для C #, тому тест на C # здається неактуальним. Але якщо ваш відділ кадрів дуже чутливий до того, наскільки важко може бути звільнити когось, коли він не може досягти позначки в декількох різних проектах, то ваша короткострокова потреба у когось може бути перероблена довгостроковою необхідністю переконатися, що кожен розробник міг би відповідати деякій мінімальній компетентності в широко використовуваній мові програмування.

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

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


Відверто? Не багато. Вони здаються нерозділеними від технологій і, можливо, ненавмисно, не відповідають місцевим тенденціям на ринку ІТ.
Даніель Война

@Daniel Voina - Ви раніше пробували звільнити когось?
bethlakshmi

Я навіть досяг успіху.
Даніель Война

@Daniel Voina - чудово ... але я бачив ситуації, коли потрібно 6 місяців до 1,5 років, щоб когось звільнити. Враховуючи біль і страждання, пов'язані не тільки з людиною та людьми, що безпосередньо керують ними, але з усією командою, я б сказав, що є вагомим моментом змусити людину перестрибувати деякі, здавалося б, непотрібні обручі, особливо якщо це частина CYA механізм.
bethlakshmi

0

Ви неодноразово повторювали, що терміни наступають - я припускаю, що ви знаєте про закон Брука.

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

Удачі з наймом та проектом!


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

Тоді це означає, що ви припускаєте, що він зможе вдарити землю бігом. Чому б вам не зробити сеанс програмування в пару годин і не прийняти рішення?
Subu Sankara Subramanian

Я мав на увазі дати йому проблему і отримати рішення за пару днів (рішення = код + тести). Парне програмування також було б чудовим. Проблема полягає в тому, що якщо я не наймаю, я можу втратити вікно можливостей - хлопець полюбляє голову та інших. Мене турбує те, що я не можу довше тримати його в місті (він зараз живе в іншому місці), поки HR не вирішить, що тест на працевлаштування буде нормальним. Я думаю, я все-таки буду слідувати своїм кишкам.
Даніель Война

Якщо ви не намагаєтеся найняти персону рівня Річарда Столмана, я впевнений, що є інші еквівалентні програмісти :). Але знову ж таки, нам доведеться слідкувати за нашими кишками раз у раз - Отже, як я вже казав, удачі :). Оновіть цю публікацію про те, як виявилося пізніше!
Subu Sankara Subramanian

0

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


0

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

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

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

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