在HR眼中,一個合格的前端程序員是怎樣的?

面試就像相親,除了考察面試者的硬性能力是否過硬,也得看緣分。緣分這一部分說實話就主要看面試官的主觀感受了.

以下內容是站在面試官的角度,來評判一個合格的前端工程師是怎樣的。

簡歷

有博客或者 github 鏈接的一般都會去看看,內容好加分,內容差減分,甚至直接簡歷不通過。

日常工作中的思考

一般一開始我都會讓他介紹下做過的項目,然後在描述過程中找一些我覺得可以深挖的點來問,或者也會直接問他覺得做過的比較有技術挑戰或者有意思的事情,如果是現場面試的話可以讓他在紙上邊畫圖邊闡述。這部分如果是一些經驗比較豐富或者 title 是架構師、技術經理之類的面試者,可以把重點放在架構設計方面,讓他講講做過的技術方案,畫一畫架構圖,說說他的方案和一些市面上已有方案的對比,當時面臨一些選擇時的思考角度和評判標準等等。

代碼能力

代碼能力其實是核心能力,包括對思維邏輯和 JS 語言熟練度的考察。筆試題上的兩道代碼題如果答得不是特別好的話(當然至少要能答出一題,兩題都答不出一般筆試就不通過了),可以跟他聊聊優化的思路,給一些提示,看看對方的反應。如果筆試題答得很好,在問一些其他問題的時候也可以順勢讓他再手寫實現一些東西。譬如:

問 JS 中函數內部的 this 指向問題,能答出誰調用就指向誰,就問問改變 this 指向的方法,能答出 call/apply/bind,就可以讓他手寫個 call 試試,哪怕他之前沒實現過,但結合自己之前說的“this 是誰調用就指向誰”和“call 可以改變 this 的指向”,也應該要能想到只要把函數賦值給 this 的第一個參數 obj,然後通過 obj 來調用該函數就可以令函數裏的 this 指向 obj。
面試者熟悉 Vue 的話可以問問他 Vue 的數據綁定原理,一般人都能答出 defineProperty 和觀察者模式(訂閱發佈模式),那就讓他描述下觀察者模式,能描述出來的話就可以讓他實現一個 Observable 構造器。

當然有很多東西可以讓他寫,因爲我們不是要招什麼算法大牛,不用找艱深的算法題給人家做,最好就在問問題的過程中順勢找一些需求讓他實現下。也可以是一些具體的場景題,譬如問到節流防抖什麼的,可以找個實時搜索的例子,讓對方實現下 debounce,就算對方沒聽過節流防抖這樣的概念,具體的場景描述清楚了,也應該有正確的思路能實現出來。

框架相關和 JS 基礎

一般面試者的簡歷裏會寫一點他擅長的東西,寫到什麼就問什麼,儘量由淺入深地問。譬如他說熟悉 Redux,那可以問問他們項目裏是怎麼用 Redux 的,用過哪些 Redux 中間件,對中間件的實現機制有沒有了解,你覺得哪些場景是真的適合用 Redux 的,對 Redux 的實現原理有沒有了解……以我的面試經歷來看,很多人寫着熟悉 Redux,其實只停留在“用過”。

然後 JS 相關的話,如果他簡歷上有寫,閉包啊原型鏈啊一些 ES6 的特性,像什麼 Promise/Proxy 這些都可以問問。如果簡歷比較單薄的話,也可以直接問他比較擅長的是哪方面,然後儘量問一些相關的東西。

技術廣度

主是一些“前端”領域外的知識,這部分不強求,簡歷上如果有的話我會問一問,主要是看看主動學習能力以及對技術的興趣。

軟技能

面試過程中其實是可以看出一個人的溝通能力和大致的工作態度的,在問項目的時候可以問一些跟人合作相關的事情,如何推動自己的項目落地之類的。還有就是面試的時候適當緊張是可以理解的,但有一些同學,明明簡歷很不錯,從博客和 github 上看也很好學,但是特別緊張,話都說不利索,我一般也不會過……畢竟心理素質和抗壓能力也是工作中必不可少的部分。

最後

面試不是考試,面試的過程無非是在交流中讓面試官認可面試者的能力。

自己是從事了五年的前端工程師,本篇文章來自於某HR,在我看來在他的這個職位頂多價值10K吧。

如果你依然在編程的世界裏迷茫,不知道自己的未來規劃,可以加入web前端學習交流羣:731771211 裏面可以與大神一起交流並走出迷茫。新手可進羣免費領取學習資料,看看前輩們是如何在編程的世界裏傲然前行!羣裏不停更新最新的教程和學習方法(進羣送web前端系統學習路線,詳細的前端項目實戰教學視頻),有想學習web前端的,或是轉行,或是大學生,還有工作中想提升自己能力的,正在學習的小夥伴歡迎加入

點擊:加入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章