Codility 會檢測作弊嗎?
作者 Aaron Cao · 更新於

會,但主要發生在你提交之後。Codility 會將你的解答與先前提交及公開程式碼進行相似度比對,在測試過程中記錄切換分頁與貼上事件,還能回放解答的撰寫過程。標記會交給人工審核員處理,而不是自動判定不合格。
提交之後,Codility 會檢測什麼?
你想知道的是,在你作答時是否有什麼在監視你。多數情況下並沒有;較重的分析是在你提交之後才進行。本節按檢測實際發生的先後順序逐一說明,讓時間線更清楚。
在測試過程中,平台會記錄一些行為訊號:離開視窗時的焦點變化、大段貼上內容的時間戳記,以及建構每個函式時的編輯順序。有些評估會要求全螢幕運作,有些還會拍照用於身分核驗。
提交之後,程式碼會與大量先前提交及公開可得的解答進行相似度比對。這是權重最大的一項檢測,因為一道知名題目往往已累積成千上萬份先前的答案可供比對。
相似度檢測究竟是如何運作的?
相似度比對並不是在找完全相同的文字。它比較的是結構:邏輯的形狀、變數使用的模式、操作的順序。重新命名變數或重新排版並不會讓結果有太大變化,因為被衡量的是底層結構。
這也是為什麼這項檢測會產生誤報。一個用標準方式寫出的標準演算法,看起來會和其他所有正確實作別無二致,而二元搜尋本來就沒有多少種寫法。審核員深知這一點,所以高相似度分數只是開啟一次對話,而不是直接定案。
其他評估平台的對比細節收錄在檢測能力主題合集中。
報告被標記之後會發生什麼?
報告連同你的程式碼、作答用時與編輯歷程,會一併送到招募人員或工程師手中,並附帶標記。接下來會發生什麼完全取決於公司。有些公司會直接淘汰候選人;許多公司則會以此為由,加開一輪即時環節,讓你現場講解自己提交的解答。
一位應徵物流公司的資料工程師,因為解答與常見教科書實作相似而被標記。後續的電話溝通只花了十五分鐘:他講解了自己的思路,並在對方要求下即時調整,流程隨後照常進行。能夠為自己的程式碼辯護,正是這個標記最終考驗的重點。
SubcueAI 在即時面試中會記錄什麼、事後又會保存什麼,安全頁面有說明。
SubcueAI 能派上用場的地方,以及派不上用場的地方
SubcueAI 協助的是即時對話。原生的 macOS 與 Windows 應用程式會擷取系統音訊與你的麥克風聲音,並在懸浮的本機疊加層中顯示建議;瀏覽器擴充功能的側邊欄則為 Chromium 瀏覽器上的會議分頁提供即時協助,只擷取該分頁的音訊。不會有任何會議機器人加入通話,也不會向會議頁面注入任何內容。
Codility 評估並不是一場對話,所以以上這些都不適用。如果該評估啟用了監考或螢幕錄製,疊加層就會出現在錄製畫面之內,這是一種侷限,而不是設定問題。它真正適配的環節,是招募人員初篩、行為面試,以及通常在通過評估之後進行的設計討論。
至於評估本身,有用的準備方式是限時練習,可以在模擬面試頁面上進行。