Тестові завдання. Купатися чи ні? 🙂

Привіт усім!

Можете нам допомогти, будь ласка?

Як ви ставитеся до тестових завдань?

Напишіть у коментах.

1 — нормально, роблю за потреби

2 — не нормально, не робитиму, навіть якщо вакансія цікава

3 — ваш варіант

Хочемо нашим клієнтам показати реальну картинку, так би мовити, «з полів».

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

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

Дякую дуже💙💛

👍ПодобаєтьсяСподобалось1
До обраногоВ обраному0
LinkedIn

Найкращі коментарі пропустити

Тестові це — waste of time. Тестові без знання контексту нічого не вартують, а щоб розібратись в контексті — треба вже не один місяць працювати в компанії. Тому 3 місяці випробовувального терміну більш валідні, як на мене

непопулярна думка: краще вже тестове, ніж live coding

Нормальне тестове завдання це на співбесіді. Один раз проходив інтервью у Facebook, там давали 45 хвилин та 2 завдання на алгоритми.
В українські компанії як правило дають технічне завдання на яке витрачаєш пів дня або день, а потім навить фідбеку не отримуєшь. Тому одразу відмовляюсь від таких завдань.

Як людина з досвідом зрозумів, що можу оцінити практику тестових завдань з двох точок зору.
З погляду техліда (наймача в команду):
— Якщо кандидатів багато, явного фаворита немає, а розмовляти з кожним по 1-2 години у мене не вистачить часу.
— Якщо мені нав’язують кандидата, а я бачу, що у нього не вистачить досвіду прийти і одразу включитися в роботу.
— Це позиція на джуна і треба серед натовпу фальшивих резюме відсіяти тих, з ким є сенс поговорити.
— Компанія пропонує смішні гроші, на які не прийде навіть тямущий джун.
Таким чином, невелике тестове завдання на 1-2 години дозволяє відсіяти тих, хто дійсно зацікавлений у роботі. Або переконати менеджерів, що за такі гроші ніхто не захоче працювати!
З погляду кандидата:
— Для рівня мідл та вище тестове завдання не має сенсу — бо це повинна бути чимала система, а не просто якийсь «калькулятор».
— Якщо в мене є приклади роботи на гігхабі — то замість тестового завдання я можу показати готове рішення на потрібних технологіях.
— Якщо в мене небагато досвіду — я погоджуся виконати тестове завдання, за умови викласти його на своїм гітхабі і побачити там оцінку від експерта. Так я не втрачу час марно.
— Замість великого тестового завдання я б краще долучився волонтером до якогось опенсорс проекту, який робить та компанія. Це непогана можливість познайомитися з майбутньою командою.
— Звичайно про тестове завдання можна думати тільки коли ця вакансія мене вже дуже зацікавила (у тому числі і фінансово). Зробити тестове завдання щоб потім почути пропозицію нижче ринку — безглуздо.
Таким чином, задля «роботи мрії» має сенс довести свій рівень виконавши тестове завдання. Але для цього компанія теж потрібна мати репутацію: що туди важко потрапити тому що вони можуть дозволити собі обирати кращих!

Купатися чи ні?

Якщо Ви вже цитуєте класику, то робіть це точно: «Купатись чи не купатись?»

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

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

Ранiше робив, потiм зрозумiв, що це waste of time. Деколи робив, коли завдання менi були просто цiкавi. Зараз не роблю, а прошу зразу органiзувати менi спiвбесiду з тiмлiдом. Якщо вiдмовляються, вiдмовляюсь i я. Ще я останнiм часом завжди дивлюсь вiдгуки про компанiю людей, якi там вже працювали. Часто один прочитаний коментар вартий бiльше, нiж втрата часу на декiлька спiвбесiд. З приводу робити тестовi завдання за грошi-це в найближчим планах))).

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

Я джун и для меня ТЗ я считаю норм. Это и шанс показать что могу и какая-никакая тренировка. НО. Почему все компании об людей ноги вытирают. Ну не подошел я вам, неужели нельзя сделать фидбек с описанием что именно не так. Почему такое свинское отношение. Я трачу 2-5 дней, а в итоге мне будто в лицо плюют

Практически все галеры исчезли после того, как предложил им оплатить тестовое, которое на вскидку потянуло бы на день-два чистой работы. Предложение оплатить ваше время — хороший тест отсеять самодуров, кидал и жлобов, которые удавятся за лишний потраченный доллар. Объемное тестовое для синьора — это типичный тест поработаешь ли ты на халяву. Синьор дирижирует несколькими офферами на руках, ему некогда через день делать тестовые днями напролет. Если вы стоите своих умений, вас с руками загребут без всяких бессмысленных задач на дом

Привіт! ДУЖЕ сильно вам дякую за кожен залишений коментар.❤️
На їх основі ми сформували чіткі рекомендації для наших клієнтів, класних продуктових компаній, які готові чути і виправляти погані процеси.
Ми й далі будемо опитувати вас на інші теми, щоб рекрутинговий процес ставав професійним у всіх компаніях. Дякую за відвертість та бажання цій місії сприяти!
Якщо вам потрібна ця презентація, напишіть нашій Тані, будь ласка: [email protected], і вона поділиться.
Гарного дня!

-

1. Давайте! Я люблю тестові! Тільки цікаві і не дуже великі! Я одне дуже корисно використав, лол (на іншій співбесіді).

Це я пишу із егоістичних збочених інтересів, щоправда. Для контори — це зло! Ну можна дати джунам, щоб відсіяти треш відразу, але там щось простеньке на півгодинки можна. Можна, якщи ви майже рівню гуглів (у т.ч. по грошах), таких зустрічав, в таких — цікаві!

МААНГИ, чи як їх там — не дають тестові! Ну хоч наче у омозомгу є автоматичне на 2 години. Ну але це таки омозомг (хоч мені здається — як би не найгірший з крупняків щось) і таки — чітко на 2 години, із обмеженням часу. Поговоріть краще там про за життя, про сюстем дизайн, попитайте те, шо вам для роботи треба, як би ви там отаке зробили. Дайте задачку не складну на півгодинки, щоб перевірити, що взагалі кодити може, а не тільки язиком. Ну дайте складну, якщо хочеться когось дійсно розумного (і прохаваного на співбесідах, тому буде дорого). От і все, що треба. Я дофіга бачив цікавих онсайт задач. Код там подивитись перебрати, наприклад. Ну але воно онсайт, не більше години кожне.

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

Примадони, які там: «да как ві смєєтє мнє прєдлажіть тєстовоє», це теж як на мене мінус. Я — візьму тестове і заб’ю на нього! А міг би працювати у вас успішно. Ну можу ввічливо відмовити (якщо явно завелике та/або нецікаве). Або не дуже ввічливо, якщо криво сформульоване. Якщо ваш клієнт не розуміє, чому треба якнайкраще формулювати тестове на дом — я б вам радив таких слати, вони упороті. І це при тому, що я таки люблю тестові!

І ще не факт, що тестове зробить саме той кандидат! Якщо ви параноідально боїтеся взяти балабола, який не вміє кодити, то тестове — не для вас! Бо у балабола може бути якийсь сіньор знайомий, що зробить по дружбі/за магарич/щоб балабол відстав. Може і на фрілансі знайде когось =) Я б взявся за цікаве. =) Не безкоштовно, але не по моєму рейту. Я допомагав падаванам із цим! Ну щоправда не критично, полірувати, трохи думки направляти.

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

Коментар порушує правила спільноти і видалений модераторами.

Якщо воно адекватне за складністю, то добре. А коли тестове завдання потрібно робити тиждень, то це занадто.

Робив тестове на поточне місце роботи. Не жалкую наразі :-)

Раніше впевнено відповідала на питання чи робити тестове — «ні»
Але за останній рік (точніше рік до великої війни) думка змінилась на «it depends», головне — робити після першого знайомства-співбесіди або коли точно знаєш що цікаво обом сторонам. Ну або на роботу мрії.
1. Моя поточна робота отримана з тестовим. Продукт. Зроблено воно було обмежено, обіцяла витратити вечір, його і витратила. Після була година чи більше созвону — обговорення що і як, як можна щось зробити краще і комбіноване з тех. співбесідою. Сподобалось і завдання, і формат обговорення. І пропонували мені дуже ввічливо, розуміючи, що то мій час, терміни не лімітували, я його робила за 2 тижні після отримання, бо були свята (про що одразу попередила і мене зрозуміли).
Але при тому мені щиро сподобався проект і перший мітинг-знайомство з замовником, які були ДО. Тому була зацікавлена.
2. Ще одне тестове завдання робила на короткий проект, на який взяли. Все було дуже прагматично, оплатили по норм рейту. І теж дуже адекватно все було, з обговоренням і фідбеком. Найцікавіше, що давали «на 4 години», робила майже 2 дні. Мене спитали «скільки реально часу витратила?» і оплатили не 4 години, а озвучені 12. Самі.
3. Українські аутсорсери-аутстафери кілька разів пропонували з оплатою на карту. Не робила, але чесна і адекватна позиція HR не може не викликати симпатію.

Тут смотря из какой позиции смотреть.
Из позиции, где я нанимаю, it depends:
1) Если я нанимаю на аутсорс/аутстафф -то это трата времени. Моя задача чтобы человек прошел интервью у клиента и все. Тут тестовые не нужны.
2) Если я нанимаю к СЕБЕ в команду/продукт, то скорей позитивно. На словах все хорошие, а на деле совсем получаем не то что хотим.

Из позиции, где я устраиваюсь:
1) Если я устраиваюсь в компанию, где условия черезмерно хорошие для меня, и я понимаю что хорошие шансы пройти, то не вопрос: могу сделать тестовое, станцевать, записать видео cover letter, пройти тест ДНК или бекграунд чек.
2) Если условия в среднем «как у всех», ваирантов много, и этот ничем не лучше дургих. И соответственно большой пайплайн найма, то тут я подумаю.

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

могу сделать тестовое, станцевать, записать видео cover letter, пройти тест ДНК или бекграунд чек.

паліграфа не згадав

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

2 — не нормально, не робитиму, навіть якщо вакансія цікава

Этот вариант.

Джунам-трейни — да, остальным — нет

3.
Відношусь норм, але за 10+ років ніколи не зробив.
Одного разу почав, прочитав умови, годинку подумав, підняв новий проект та й все.
Якщо вакансія з тестовим завданям не пропонує чогось екстра порівяно з іншими то й тратити на неї час я не буду.
Тобто якщо це в ФААНГ, ЗП на 20+% вище від інших то я ще попробую.
В іншому випадку мене заївнтить інша фірма.

Для трейні/джунів тестове це норм бо в них вибору не має

Згоден робити тестове за такої умови:
якщо візьмуть не мене, а іншу людину — щоб зі мною потім влаштували мітинг десь на 1 годину, показали код для тестового тієї людини, яку взяли, та пояснили, чому його/її варіант кращий за мій.

Простими словами — тестове в обмін на розгорнутий та якісний фідбек

Залежить від проекту та компанії. Але зазвичай прошу сплатити, якщо виконання займає більше 2 годин, оскільки це насправді робота. Щоправда, лише одна компанія погодилася. Інші тисняться, виправдовуючись тим, що вони «беруть тільки тих, хто дуже хоче до них потрапити».
Нещодавно був випадок, теж запропонували тестове, але безглуздо складене і з помилками. Я відмовився, в результаті зійшлися на live coding.

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

Це нормально і варто робити. Ми зараз говоримо про інженерну спеціальність. А не про поговорити, камон.

Ок, рекрутер виходить на зв’язок і дає вам технічне завдання на 3 тижні роботи. Ваша відповідь?

Так питання в доцільності завдання, чи ми зараз про строки/час?

За 16 років айтішного досвіду от такого випадку не зустрічав ні в кого. На три тижні тестове?)))
Але ок. Можна гіпотетично порозмірковувати на подібний кейс.
По-перше, не бачу якоїсь глобальної проблеми. Хтось забороняє відмовитись від завдання?
1. Якщо я хочу потрапити саме в цю компанію, бо це компанія моєї мрії, то не бачу в цьому проблеми взагалі. Американський найм взагалі говорить часто про кількамісячний підіхід в співбесідах.
2. Якщо мені потрібна робота «отпрямщяс», то піду співбесідуватися в іншу контору, бо мене піджимає час.
3. Якщо я відчуваю, що мене таким чином намахують і хочуть за рахунок мого ресурсу виконати кусок роботи, то теж ніхто не забороняє відмовитись)
Проблем не бачу

Запропонували немаленьке тестове перед безкоштовним стажуванням, після якого можуть взяти на оплачувану практику 3-6 місяців. Оплатити виконання відмовилися.
Мені здається, це вже перебор.

Для розуміння: навіть за оцінкою рекрутера, на виконання дається ТИЖДЕНЬ.

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

Извините что не по теме. Как долго топик модерируется?

Робив кілька раз. Одного разу навіть цікаво було, витратив десь годин 5 на завдання, зо мало б зайняти 1-2 години. Ні фідбеку, ні оцінки ніякої, не отримав. Зробив висновок раз і назавжди. ТЗ — це благодійнасть на користь роботодавця.

Робитиму завдання тільки якщо дуже хотітиму потрапити в цю компанію. Але не робитиму якщо там буде щось екзотичне(наприклад з останнього — автотести на Cucumber ) або якщо треба буде сидiти бiльше нiж 4-5 годин

Пару раз зтикався з тим, що дають тестове «на 4 години», але якщо робити його якісно (дизайн БД та API, зрозуміла логіка, тести, супровідна документація по розгортанню в дев енвайроменті) то легко можна витратити на нього кілька днів. А чисто за 4 години вийде спагетті код, який може й виконувути поставлену задачу і пройти автотести, але при рев’ю викличе купу WTF з боку перевіряючого.
Для себе вирішив, що робитиму тестове тільки за умови, що прям дуже хотітиму потрапити саме в цю компанію, на позицію і умови кращі ніж «3й квартиль по статистиці ДОУ для відповідної спеціальності і років досвіду». Ну і перед тим як братися за тестове буду уточнювати, навіщо воно і яку роль відіграє у рішенні про найм — чи це формальна галочка яка ставиться по результату автоматизованої перевірки, чи його будуть перевіряти живі люди й звертати увагу на технічні рішення і імплементацію.
Коли наймався в останню компанію, то робив тестове й отримав навіть певне задоволення від процесу (там була досить цікава технічна задача). Але я розумів важливість цього етапу для найму, ну і був зацікавлений показати свій рівень скілів. Для більшості компаній які представленні на ДОУ, не бачу сенсу на таке погоджуватися.

Робитиму, якщо цікава компанія і цікаве завдання.

Дуже залежить.
Взагалі я люблю програмувати (сюрпрайз ;-) і краще щось накодю ніж 100500й раз розказувати що таке GC і як він працює. Будь-які варіанти live coding за який тут багато топлять це не для мене, я ненавиджу коли за моєю роботою (будь-якою, хоч змащування ланцюга на велосипеді) спостерігають з-за спини.
Буду робити якщо:

  • це займе 2-4 години
  • завдання не є трешом з літкода
  • завдання складене так що не викликає питань більше за саме завдання
  • є бодай якісь формалізовані критерії оцінки, наприклад заздалегідь написані юнит-тести
Не буду робити якщо:
  • завдання нагадує продуктову проблему
  • потребує застосування надто широкого стеку технологій (це автоматично тягне за собою перевищення ліміта часу у 2-4 години)
  • заздалегідь не передбачено якоїсь зустрічі для обговорення результатів (лише письмовий фідбек не пройде бо нема гарантії що його не зроблять «на відчепись»)

Вот не надо про GC — это на редкость злобный вопрос. Начиная с того сколько поколений и сколько видов куч

Ну ось тому про це буде розмова на інтерв’ю з вірогідністю відсотків 90 ;-)

не знаю как сейчас, но еще прошлым летом на зп 8к+ в 95% вакансий нужен был live-coding. Захочешь бОльшую зп освоишь и литкод задачки, и про GC запоешь как соловей))

Якщо це не контора рівня «робота мрії», не робитиму.
Якщо задача нудна, довга, то теж не робитиму

Если это не контора уровня Гугла или МС, отправляю лесом.

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

Якщо цікаво — робити, не цікаво — не робити

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

Предлагаю оплатить тестовое задание по своему обычному рейту. Нет — на***! Почему?
Да потому, что это тест на прогибаемость: человек согласный делать тестовое задание послушно задержится на бесплатный овертайм, подпишет кабальное соглашение и т.п.

Після другого тех інтерв’ю і якщо разом з інтерв’юером why not

В іншому разі йдуть в корзіну

Або ти цінуєш свій час і себе, або ні

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

Не делаю и не советую.

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

Несравнимы затраты по времени со стороны компании и со стороны кандидата. Кандидату — нужно потратить несколько часов своего времени. Компании — в крайнем случае несколько минут времени ректурера, который отправил тестовое задание, которое потом никто не посмотрит.
Сорян, но нет. Час моего времени на час времени вашего инженера или hiring manager или кого-то повыше, или в сад.

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

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

для себе зробив висновок що більше не витрачатиму на це свій час
єдине виключення це якщо буде «компанія мрії» і там вже будем бачить

1 — нормально, роблю за потреби

Саме так влаштовувався на багато компаній/проектів, і це набагато краще ніж місити live coding. Загалом якість ТЗ сама по собі краща і це щось на створення.

Live coding теж був на 40 хвилин, після тестового завдання, з вебкою, шарингом коду і коментуванням англійською. Але я на це пішов тому що компанія була з S&P top-10, нонеймам відмовляю. Зазвичай live coding — або абстрактна фігня з псевдокодом, або щось на увагу (чи помітив, чи не помітив).

2. Не делаю
3. Предлагаю оплатить компании мое время, потраченное на тестовое задание — практически все галеры замолкают и исчезают, сразу понятно , что с жлобами и неадекватами нет смысла дальше связываться
Еще бывает вариант есть пройти автоматический тест-квест из 40 вопросов, где какой-то бот «оценивает» знание чего-то. От такого тоже отказываюсь, куча вопросов не по теме или протухшие вопросы, или скажи за полминуты «что делает этот говнокод»
Ради прикола пару раз делал тестовое в приличные конторы, потом они «думают» 2 недели и скидывает бредовый отказ в стиле «выбрали другого кандидата» или вообще пропадают. После этого завязал с тестовыми.

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

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

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

непопулярна думка: краще вже тестове, ніж live coding

live coding краще

Не все чувствуют себя комфортно, когда кто-то смотрит как ты кодишь, думаешь.

Та почти никто себя комфортно не чувствует.
А тот кто чувствует — пусть лучше карьеру на onlyfans делает, там больше заплатят

пусть лучше карьеру на onlyfans делает, там больше заплатят

Сирозна? Фрилансеры не согласны

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

такой человек — я. На лайв-кодинге в первую же секунду как вижу онлайн-редактор мозг отключается, могу простейшую задачу мучать час, в ту же минуту после собеседования решаю её за пару минут... И ничего с этим не могу поделать.

Імхо проходження live coding інтерв’ю тренується і прокачується як і будь-який інший скіл, можу сказати на основі свого досвіду. Тут питання в часі витраченому на підготовку і кількості пройдених інтерв’ю. Мені свого часу проходження mock interviews допомогло трохи покращити ситуцацію, хоча я теж сильний інтроверт і на початку навіть ловив панічні атаки.

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

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

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

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

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

опа, виявляється не така вже й непопулярна

Як людина з досвідом зрозумів, що можу оцінити практику тестових завдань з двох точок зору.
З погляду техліда (наймача в команду):
— Якщо кандидатів багато, явного фаворита немає, а розмовляти з кожним по 1-2 години у мене не вистачить часу.
— Якщо мені нав’язують кандидата, а я бачу, що у нього не вистачить досвіду прийти і одразу включитися в роботу.
— Це позиція на джуна і треба серед натовпу фальшивих резюме відсіяти тих, з ким є сенс поговорити.
— Компанія пропонує смішні гроші, на які не прийде навіть тямущий джун.
Таким чином, невелике тестове завдання на 1-2 години дозволяє відсіяти тих, хто дійсно зацікавлений у роботі. Або переконати менеджерів, що за такі гроші ніхто не захоче працювати!
З погляду кандидата:
— Для рівня мідл та вище тестове завдання не має сенсу — бо це повинна бути чимала система, а не просто якийсь «калькулятор».
— Якщо в мене є приклади роботи на гігхабі — то замість тестового завдання я можу показати готове рішення на потрібних технологіях.
— Якщо в мене небагато досвіду — я погоджуся виконати тестове завдання, за умови викласти його на своїм гітхабі і побачити там оцінку від експерта. Так я не втрачу час марно.
— Замість великого тестового завдання я б краще долучився волонтером до якогось опенсорс проекту, який робить та компанія. Це непогана можливість познайомитися з майбутньою командою.
— Звичайно про тестове завдання можна думати тільки коли ця вакансія мене вже дуже зацікавила (у тому числі і фінансово). Зробити тестове завдання щоб потім почути пропозицію нижче ринку — безглуздо.
Таким чином, задля «роботи мрії» має сенс довести свій рівень виконавши тестове завдання. Але для цього компанія теж потрібна мати репутацію: що туди важко потрапити тому що вони можуть дозволити собі обирати кращих!

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

Для цього існує ramp-up на 2-4 тижні в адекватній компанії, я раз працював в компанії, де в перший робочий заставили закривати таску (підняти проект мав сам без документації).
Треш і угар.

На нашем барыжном айти-рынке кидалово на тестовых лишь верхушка айсберга.

Купатися чи ні?

Якщо Ви вже цитуєте класику, то робіть це точно: «Купатись чи не купатись?»

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

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

Приклад: назвіть 10 типів чисел із плаваючую комою (треба вгадати саме ті 10, що в методичці). Чи напишіть по пам′яті алгоритм QuickSort (треба саме та реалізація). Чи моє улюблене: що виведе шматок некоректного гівнокоду, який ви особисто ще й не перевіряли?

ніяких тестових, тільки live coding, набагато ефективніше бачити як людина мислить

фу... руки то хоть не под столом будут?

бачити як людина мислить

Тобі краще цього не знати, повір. Мозок взагалі-то створений для задач класу life threatening critical condition. І дарма ти гадаєш, що ці алгоритми зупиняться хоча б на 1/10 секунди, чи мають можливість додати туди breakpoint, щоб ти міг втрутитися в процес. Або ти маєш можливість зробити дебаг цьому процесу, особливо під час виконання.

Тобто, live coding є одним із аналогів стрес-інтерв′ю. З усіма наслідками проведення цієї процедури. Що саме є стресом? Не створені умови для роботи, які вимагають робити зупинку процесу в таких неочікуваних для мозку місцях, яких не передбачено в звичному алгоритмі.

Суть проблеми: Мозок не має засобів зупинки процесу із збереженням стану пам′яті. Від так, зупинка процесу вимагає переключити пам′ять, а потім відбудувати її заново із зовнішніх джерел, або використати постійну пам′ять. Обидва процеса не гарантовані, а від так, це перемикання вимагає десятків циклів намагання втримати в пам′яті перерваний процес. Додайте туди ще один, наприклад звиздьож інтерв′юера під час кодингу — і фейл гарантований. Не просто фейл, а з жорстким формуванням поведінкового алгоритму, із блокуванням пам′яті.

Що ви побачите: Під час кодингу (модель точної науки) вам потрібна 0% толерантність до помилок. Тобто, побачена помилка перериває процес задля її вирішення, або фіксації. Під час розмови (гуманітарний процес) — майже 100% толерантність до помилок, навіть до відвертої брехні. Ці режими роботи несумісні, навіть на гормональному рівні. Гуманітарний процес є пріоритетним, на нього мозку переключитися легко, а от повернутися до зосередженого та нетолерантного режиму — не лише важко, а є лише одна спроба. Кожна наступна спроба важче на порядок. Процес можна повторювати аж до стану вивченої безпорадності.
Вчинити кандидату вигоряння за одне інтерв′ю — хіба ви цього домагалися?

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

Дарма ви гадаєте, що мозок не вміє ділити на нуль. Вміє. Спробує. Через його призначеність для life threatening critical condition. Інакше кажучи, мозок не вміє оцінювати нульовий час. Якщо часу нема, ситуація вважається загрозою для життя, від так мозок відмикає зайві повільні алгоритми, формує нейтів середовище, із блокуванням складних механізмів сприйняття. До того ж в чоловіків процес підсилюється тестостероном, який підсилює ефект блокування «зайвого».

=============================================
Що робить мозок у критичній ситуації? Одне з трьох, залежно від того, який алгоритм спрацює швидше, який частіше використовувався раніше.
Битися. Тобто, зруйнувати ситуацію, вважаючи загрозою перш за все живих істот поряд. Тому, коли вам на секунду здалося, що вас хочуть вбити — вам не здалося. Більш того, соціальні механізми контролю в цей час відімкнені, тому ніяка мораль не завадить вас вбити. Завадити може... симпатія, тобто якщо механізм «свій/чужий» спрацює на вас. Це ваша єдина надія. Так, ймовірність похибки приблизно 1 на 5000-10000 (може бути збільшена тренуванням). Але факт, що створюючи стрес, ви ризикуєте життям. І не лише в цю секунду, алгоритм дій може і буде записаний у пам′ять. І колись, за пару років, ви зустрінитесь із вашим вже прийнятим співробітником напідпитку (наприклад, корпоратив), і він вас вб′є. Без жодних вагань чи мотивів. Просто тому що давно хотів.

Тікати. Це просто. Мозок просто вигружає із пам′яті деталі процесу, та перемикається на зовнішнє оточення. В цей момент ви втратили кандидата, він більше не хоче тут знаходитися. Ви для нього як середовище перебування перемкнулися зі «свій» на «чужий». Жоден ваш логічний аргумент вже не подіє. Ви маєте знати інструментарій поведінкового психолога, щоб мати хоча б шанс змінити це підсвідоме рішення.

Адаптуватися бездіяльністю. Тобто, зупинити активний процес і надалі перемкнути алгоритм поведінки з індуційованого (самостійного) до адаптивного (реакційного). Це стадний інстинкт: не знаєш що робити — підкорися лідеру, роби те що він вимагає чи робить сам. Людина зробить усе, що ви попросите, якщо зможе та раніше робила, або не зробить — не пояснюючи чому та не взмозі це пояснити. Це власне і є стрес, яким ви його звикли бачити. Що довше він протікатиме, то більш вираженою стає ця поведінка на швидшим перемикання. В цьому режимі продуктивність максимальна, тестити людину одне задоволення — підкупає, чи не так? Але начисто втрачена здатність приймати самостійні рішення. Тобто, найцінніша професійна навичка — пошук коротких шляхів. Ви можете отримати потрібного вам кандидата, він буде у вас працювати, але його показники будуть повільними та потроху спадати. Аж до звільнення. А потім так само раптово відновляться. Ви й не здогадуватиметеся, із ким поряд працювали, що він може у 5 — 10 разів швидше.
=============================================
Ніколи не проводьте стрес-інтерв′ю чи live coding, якщо ви цьому спеціально не навчалися. І ви особисто не створювали задачу, і не готові контролювати процес щосекунди.

PS. Коли насправді потрібні тести реального часу: Коли робота вимагає швидких вивчених рішень, та не думати на роботі. Наприклад, військових тестують саме так. Вони працюють у режимі постійного стресу. До речі, цей стан швидко перестає бути дискомфортним, навпаки, формує залежність.
Коли кажуть, що «сісадмін — це загиблий у душі програміст», насправді це так і є. Адміністративна робота — це фактично стресовий стан системи. Маючи людей, що працюють у стресовому режимі, система дозволяє іншим людям (наприклад, керівникам, або користувачам) — бути вільними у прийнятті рішень.

PPS. Це власне і є користь більшості IT продуктів: надання права приймати рішення там, де без продукту люди стикаються зі стресом. Не вірите? А ви озирніться на те, чим користуєтесь самі. Усе це антистреси.

Нормальне тестове завдання це на співбесіді. Один раз проходив інтервью у Facebook, там давали 45 хвилин та 2 завдання на алгоритми.
В українські компанії як правило дають технічне завдання на яке витрачаєш пів дня або день, а потім навить фідбеку не отримуєшь. Тому одразу відмовляюсь від таких завдань.

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

Або якщо вакансія цікава, або якщо є час і завдання цікаві. А такі також бувають

Є нормальні тестові завдання, цікаві, і дійсно на кілька годин. Роблю навіть якщо розумію що в компанію не проходжу. В будь-якому випадку код можна залишити для себе на GitHub.
А є лютий треш. З завданнями на 3 тижні яке треба виконати за кілька години. Ось наприклад так виглядає «тестове завдання» від компанії ANVI — quwi.com/...​fbrh_JShqUOevPmbbaTt-mZpV — термін до п’ятниці до вечора включно)

Людям треба було написати Телеграм «до п’ятниці»? І ще, напевно, код віддати?

ну звісно, це ж «тестове» :)))

Від мене одного разу вимагали браузер написати. Не жартую.

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

Только если вакансия особо вкусная

Тестові це — waste of time. Тестові без знання контексту нічого не вартують, а щоб розібратись в контексті — треба вже не один місяць працювати в компанії. Тому 3 місяці випробовувального терміну більш валідні, як на мене

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

Не факт. Увесь процес є waste of time, тому треба лише обрати найменше зло, яке дасть максимально цінний результат. А саме — нікого не відсіє з тих, хто потрібен, та дасть 15% похибку, пропустивши до наступного етапу тих, хто не зовсім підходить.

Спроба знизити ймовірність похибки — гарантовано призведе до росту ймовірності помилкового відсіву, а це надзвичайно дорога помилка. Можна збільшувати похибку навіть до 67% в окремих випадках, особливо якщо шукаєте рідкісний кадр.

Якщо ж взагалі прибрати (забути) вимогу нульового відсіву — це буде гарантовано негативний фільтр, тобто з таким підходом краще прибрати цей етап взагалі.

Якщо коротко, це фільтр рівня капчі. Аж ніяк не мірялка «синьйорності». Варто помилитися, переоцінивши можливості цього простого етапу — і компанія пролітає по ринку праці, віддаючи кадри конкурентам. В той час коли текучку власних кадрів ніхто не відміняв.

Тому 3 місяці випробовувального терміну більш валідні

Особенно если таких компаний 5-7 одновременно и выстраивается поток следующих.

Нормально, якщо вакансія цікава і роботи на 2-4 години. При цьому дуже важливий фідбек, якщо компанія відмовляє, і нормальний, а не відписка. В інакшому випадку піду напишу відповідний відгук ;)

Підписатись на коментарі