Як SHL обробляє некомпілятивний код при оцінці навичок кодування

Як SHL обробляє некомпілятивний код при оцінці навичок кодування
Якщо ви коли-небудь проходили автоматизований тест з кодування, вас, ймовірно, засмучувало, якщо ваш код не компілювався. Ваша програма може бути майже правильною, але через якусь дурну помилку, яку неможливо виявити через брак часу, ви отримаєте НУЛЬОВИЙ бал. Згідно зі звітом SHL Tech Talent, у середньому близько 25% кандидатів у пулі найму мають сильні навички кодування, але часто їх відфільтровують через обмежені можливості традиційних платформ оцінки навичок кодування — втрачена можливість.

syntax_error

Але не хвилюйтеся! Команда штучного інтелекту SHL створила технологію, яка може визначити, наскільки хороший алгоритм програми, навіть якщо вона не компілюється. Наша платформа оцінки навичок програмування може розуміти некомпілятивні програми за допомогою штучного інтелекту та забезпечує семантичний зворотний зв'язок для вдосконалення.

Некомпілятивний код більше не еквівалентний нульовому балу в оцінці навичок кодування

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

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

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

Яке значення це має? Розглянемо деякі реальні дані. У наборі програм, випробуваних для роботи у великій e-commerce компанії в США, ми виявили, що 46% кодів не компілювалися, проте не були порожніми.

Наш алгоритм на основі штучного інтелекту виявив, що 6% цих кодів для 596 кандидатів мали майже правильну логіку. Ще 29% кандидатів, з невеликими підказками, дійшли б правильної логіки. Всі ці кандидати заслуговували на шанс у компанії!

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

Ця система також використовувалася великою IT-компанією в Індії для масштабного найму інженерів-програмістів початкового рівня. Компанія наймає тисячі інженерів-програмістів щороку і бореться із заповненням усіх відкритих вакансій. За допомогою класифікації кодів, що не компілюються, вони змогли підвищити пропускну здатність найму на 30-40%.

Зовсім недавно для технологічного гіганта в Китаї система допомогла відібрати приблизно на 26% більше кандидатів для співбесіди. Ці кандидати написали логічно осмислений код, але код не скомпілювався. З цих кандидатів близько 19% кандидатів були остаточно прийняті на роботу (детальний аналіз у таблиці 1). Це велика перемога, оскільки було прийнято на роботу багато гідних кандидатів, яких не розпізнала б традиційна система оцінювання програм.

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

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

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

 Назва рубрики

 Компілятивний код 

 Некомпілятивний код 

 Код не відповідає завданню

3361

1979

 Відповідні ключові слова та семантичні одиниці присутні

3264

2125

 Існує правильна структура управління, але відсутня залежність від даних 

2547

1440

 Правильний код, з випадковими помилками

2955

1017

 Повністю правильний код

3828

-

 Запрошені на інтерв’ю

9330

2457

 Найняті

2986

565

 

 

 

 

 

 

 

 

 

 

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

 

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

Співавтор: Варун Аггарвал – дослідник, підприємець і письменник. У 2008 році став співзасновником Aspiring Minds і зараз очолює відділ досліджень. Його робота призвела до першої у світі оцінки навичок кодування на основі машинного навчання та першої у світі автоматизованої оцінки рухових навичок. Варун опублікував понад 30 наукових робіт, а його роботи висвітлювалися в The Economist, MIT Technology Review, Wall Street Journal, HT Mint, Economic Times та IEEE Spectrum. Він заснував ML India для створення екосистеми штучного інтелекту в Індії та організував перший у науковий буткамп про дані для школярів. У 2006 році Варун був відзначений премією HUMIES за розробку алгоритмів, що імітують людський інтелект. Захоплюється написанням віршів та оповідань.

Оригінал статті доступний на shl.com

Слiдкуйте за новинами та подiями HR-спiлноти!