国产精一区二区_午夜视频99_免费白白视频_中文字幕一区免费

怎么實現技術評卷時間0投入的?(下)

ShowMeBug
+ 關注
2024-07-11 17:09
721次閱讀
試想如下一個場景:
“技術面試官Arron 的企業要招聘Java 后端工程師,考核 SpringBoot 框架和 MyBatis 這兩個后端開發的必備技能。而他要負責評審多份候選人的編程題試卷,題目是要求使用SpringBoot 和MyBatis實現一個購物車結算功能。
Arron 經常跟另個一個面試官對代碼打分產生分歧。
比如一位候選人使用SpringBoot編寫了購物車控制器,實現了加入購物車和結算請求的API。他使用MyBatis調用存儲過程,完成了庫存扣減等邏輯。代碼整潔,測試用例完整,另一位面試官稱贊了他的SpringBoot應用結構。
但是Arron評審時發現,他直接在控制器中寫了業務邏輯,沒有遵循MVC分層的架構設計原則,導致可維護性較差,這點另一個面試官卻不太在意。
Arron已花費大量時間對代碼進行逐行評審,他除了測試用例完整與否,還會在可維護性與解題思路等多方面進行考察。
時間離截止只有兩小時,他與另一個面試官依舊爭執不下,難以達成共識,編程題評審的復雜性讓Arron倍感壓力......”
以上技術招聘的場景,反映出了Arron 面臨的什么問題呢?
要回答這個問題,先要了解企業使用編程題進行技術測評的原因。正如Linux的創始人Linus Torvalds 所說:“Talk is cheap,show me the code”。相對于選擇題、問答題,編程題最能直觀展示候選人在實際工作環境下的編程能力
但企業對編程題進行評卷時,往往面臨如下三大麻煩:
一、評審耗時費力
 
正如Arron所遇到的,當侯選人的測試用例完整通過,但企業仍想深入考察其他方面的代碼能力;又或者測試用例沒通過,企業還是想深入了解他的代碼出了什么問題,這些都需要Arron逐行反復審閱代碼,耗費他巨大的時間與精力。
怎么實現技術評卷時間0投入的?(下)
評審一位候選人所花時間可能平均需要幾十分鐘不等,更何況還不止一位候選人,可見評卷工作對Arron 來說確實是件苦差事。
二、評審維度單一
 
有的企業會出于提升效率的考慮,僅以簡單的OJ 系統評價候選人代碼是否通過測試用例,并不會進一步考核代碼的其他方面,該評審方式可能更適用于海量候選人情況下的初步粗略篩選。
但若想進行更加精準的招聘,則需要考核候選人是否有真正的解決問題的能力,那么在技術測評中候選人的代碼除了“能跑通”外,其他維度也極為重要,這也是Arron 如此費心考核候選人代碼的原因。
根據知名技術問答網站 Stack Overflow 針對8萬名開發者的調研顯示,他們覺得除了代碼的“正確性”與“功能性”外,代碼的“可讀性”、“可維護性”、“可拓展性”、“安全性”、“代碼規范”、“開發效率”等維度的重要性也名列前茅。
三、評審受主觀偏差影響
 
但即便企業建立了更多的評分維度,也會由于面試官對不同維度的重視程度不同,而產生像Arron跟別的面試官之間,難以達成一致的問題。
國外一份發表于ESEM研究調查了127名來自17家公司的開發者,考察他們在代碼審查時關注的維度。結果顯示,開發者關注的維度因其崗位、工作經驗和項目而異。例如,高級開發者比初級開發者更注重代碼設計和可維護性,嵌入式系統開發者比web應用開發者更重視可測試性。
由以上三點可知,要解決編程題評卷的麻煩,需要建立自動化方式以節省時間,并且建立客觀全面的評價體系,而且同時還要盡量避免人為主觀偏好所產生的偏差。
那有什么方法可以實現呢?
AI 的出現帶來了破局之道。其依據算法所建立的標判斷準,以及全自動化流程,很合適搭建編程題評卷機制。ShowMeBug 也深知AI 的巨大意義,并實現了獨有的編程題AI評分功能,使用AI建立起了全自動化、高可靠性的評分體系,并在其中體現出了三大功能價值:
第一,該功能可對候選人的編程題答案進行自動化評分,在數秒內即可完成幾十分鐘甚至數小時的代碼評卷工作,并給出相應分數,讓評卷投入的時間與精力成本降至為0
第二,針對候選人代碼,ShowMeBug 還依據實際工作場景中的代碼測試方法,設計了五大考核維度,分別為:
  • 代碼正確性:評估候選人是否能夠按要求,編寫出測試用例正確通過的代碼,反映了候選人的基本編程水平和語言掌握程度。
  • 解題思路:評估候選人是否能夠理解問題,提出合理的方案,并將其轉化為代碼。反映了候選人的需求梳理和問題解決能力,以及創新性思維。
  • 代碼設計:評估候選人是否具備良好的代碼組織和模塊化能力,提高代碼的可讀性、可拓展性和可維護性。
  • 代碼質量:評估候選人能否遵循良好的編程規范和最佳實踐,編寫清晰、簡潔、可理解的代碼。
  • 答題效率:評估候選人在解決問題時所花費的時間和資源,反映了候選人的工作效率和應對復雜問題的能力。
第三,該功能還設計了“寬松/嚴格”兩種模式,供企業基于自身不同招聘需求來作調整。具體體現為:
“嚴格模式”下,一旦候選人測試用例沒有通過,則這道題便會判為0分,可適用于企業面臨海量候選人時,進行初級的大規模篩選;
“寬松模式”下,不僅只考核測試用例是否通過,系統還會根據解題思路、代碼設計與質量等維度進行打分,可適應企業更精細化的針對崗位與實際工作能力的招聘需求,對候選人的技術能力進行多面向,與更深入的考察。
通過這些功能與價值,企業可極大提高評卷效率,提供更為客觀、全面、公正的評分依據,減少評卷時主觀分歧的影響,助力企業高效精準地甄選人才
多說無益,不妨再以Arron 為例:
Arron 的企業繼續招聘Python 后端開發工程師,并考察該候選人的的字符串處理和正則表達式能力。題目內容為:候選人需要實現一個函數,該函數接收一個字符串作為輸入,然后將字符串進行分詞,并生成對應的標記列表。
這次Arron 便可登陸ShowMeBug,在“考試大廳”的“考場設置”并中對試卷進行編輯,找到評分規則設置并打開“智能評分”。由于Arron 并非只看重測試用例的完整性,他可以選擇寬松模式,除了測試用例以外,他還可對候選人代碼的其他維度進行深入考察。
怎么實現技術評卷時間0投入的?(下)
設置好后,Arron 便可邀請候選人進行測評,候選人進入測評界面后編寫代碼,完成后便可提交試卷。
怎么實現技術評卷時間0投入的?(下)
提交試卷后的數秒鐘后內,AI 便能自動完成對代碼的評分。之后Arron 便可進入評卷界面,查看AI 所給出的分數。
怎么實現技術評卷時間0投入的?(下)
點擊“AI”標志,還能看到AI 會根據設置好的五大維度,對代碼進行每個維度的評分,并且依次給出評分理由。可以看到,該候選人的代碼全部通過了測試用例,但在“解題思路”、“代碼設計與“代碼質量”等維度還有進一步優化的空間。
怎么實現技術評卷時間0投入的?(下)
Arron 可以此作為依據,不僅能系統性全面了解該候選人的代碼是否能符合實際工作場景的需求,還能深入了解他的解題思路,以及對他的代碼設計、質量與解題效率,提供一個客觀的參考標準。
當然,Arron 也可根據自己的專業判斷和經驗,在AI 評分旁作出適當的調整。
怎么實現技術評卷時間0投入的?(下)
評卷完成后,Arron 還能一鍵生成人才報告,發予其他面試官查看,并就AI 的評分共同進行探討,進一步減少主觀偏差的影響。
怎么實現技術評卷時間0投入的?(下)
通過ShowMeBug 編程題AI智能評分,Arron 便無須再逐行評審代碼,而且能以AI自動化方式,幫他節省海量的評卷工作量;也能讓他與其他技術面試官擁有了一個全面客觀的標準,規避彼此之間主觀分歧與偏好所產生的差異,更容易對所評分數達成一致的共識;并最終深入考察候選人實際的工作能力。

[免責聲明]

原文標題: 怎么實現技術評卷時間0投入的?(下)

本文由作者原創發布于36氪企服點評;未經許可,禁止轉載。

資深作者ShowMeBug
ShowMeBug
0
深圳至簡天成科技有限公司
實力廠商
實力廠商
優質服務
優質服務
及時響應
及時響應
立即詢價
相關文章
最新文章
查看更多
關注 36氪企服點評 公眾號
打開微信掃一掃
為您推送企服點評最新內容
消息通知
咨詢入駐
商務合作