原文:面試之前,簡歷之上:給前端校招同學的簡歷建議 | AlloyTeam
作者:TAT.老教授
前言:作為前端面試官老司機,之前分享過我對前端校招面試的一些見解,這次來說下簡歷。早就想寫這個,剛好最近又刷了一批秋招提前批,看多了簡歷,心有所感,閒聊幾句,希望對大家參加前端校招有所幫助吧!一家之言,僅供參考~
簡歷經常是給面試官的第一印象,但很多還沒踏出校門的同學們不知道怎麼寫好簡歷,我時常有拿著一份簡歷不知道該怎麼面試他的情況。而在秋招這種大規模招聘的季節,面試官刷簡歷時如果一份簡歷沒法在很短的時間內吸引到注意力,那很容易就被漏過了,因為這樣被淘汰豈不可惜。
那怎樣的前端簡歷才算好簡歷?
簡歷的思路
大公司經常有技術評審的制度。以我司為例,只要你在當前技術級別待的年限到了,你就可以準備一份 PPT,向公司安排的幾位高階別技術人員(評委)做 presentation。這個過程中,你就要證明你達到下一個技術級別的要求了,一般會簡述自己的職業經歷、專案經歷,然後用技術案例說話,用一個或多個技術案例,來說明自己的技術給專案給團隊給公司帶來了什麼價值。評委會挑戰你,看你是否真吃透這塊技術,評價你的技術成果產生的價值,最後決定你是否通過。
重點是什麼?第一點,你。你要講清楚你的角色你的作用要講你確切經歷或執導的專案,評委說到底考察的是你一個人。第二點,技術產出。作為一個技術開發,你參與的專案再好再多人用那也是產品經理運營人員牛,不關你事,技術人看的還是技術相關的優化和產出,當然一個技術上很複雜的很難實現的功能被你做好了也能說明技術能力。兩點合起來就是:你技術牛。
技術評審如此,實習生留用述職不也類似,寫簡歷不也類似?
以此作為核心思路,那簡歷裡寫團隊專案,你是否寫清楚自己的角色和作用?實習過幾家大公司不是重點,重點是你實習中做出了什麼成果。寫再多的獲取多少獎學金、寫了多牛的論文,分量沒那麼重的,面試前端大家還是想聽前端相關的。寫自己的興趣愛好有多廣泛、性格到底有多好都是虛的,先拿技術說話,面試過程中的你的性格別人自然能感受出來。
想清楚了這思路,就知道簡歷的側重點了。
我怎麼刷簡歷的
開啟簡歷,首先看一眼大學。不管你願不願意,有些大學在程式設計開發方面的氛圍和質量就是相對好一些,會有一些隱形加分。
接著,實習經歷,在騰訊、阿里、頭條之類的大公司實習肯定是大優勢(如果你有,那重點標大標黑不過分),業內知名的公司也不錯。所以如果有意走這條路,那大學前幾年爭取去大公司實習吧。
職業技能,這塊特別一點,如果是在大簡歷池子裡篩簡歷,會很快掃過,確定不是後臺同學走錯片場就行。如果是面試前看簡歷就會細看一點,這個我後面小節會講到。
然後,重點來了,專案經歷。看什麼,關鍵詞!諸如寫了XX論文、參加社會實踐,很快掃過去,重點還是”線上系統開發“、”某某小程式開發“、”XX webapp 開發“、”某個開源元件作者“之類的專案上。然後一大段關於專案的介紹和描述沒多大用,重點還是專案裡面透露出來的技術能力、技術關鍵字,比如”應用 Service Worker 做了XX“、“基於React Hook”、“實現了完善的單元測試”、“應用了某某思路提升了頁面的開啟時間”,等等等等,都令我感興趣。如果這些都沒有,就乾巴巴地寫了用了 React+Redux ,用了 node+Koa,或者乾脆都在講開發了哪些哪些頁面,基本都很快放棄。
就這幾塊,快速瀏覽過去腦海裡也就能建立這個學生的技術印象了。沒有一些關鍵字快速抓住面試官,引起他的興趣,而是靠一大段文字讓他做閱讀理解,我很難過你也很難過。
怎麼寫好簡歷
以上是跟大家講簡歷會被別人怎麼看(雖來自我的經驗,但我覺得有一定代表性),那接下來講講幾個主要模組該怎麼寫,個人基礎資訊模組就不說了,太基礎。
技術能力(也叫個人技能、專業技能)
常見的一個 part,但很多人沒寫好沒重視。經常見到類似這樣的描述:
你怎麼看?
我覺得一般,因為裡面有意思的資訊不夠。如果以簡歷篩選的標準,裡面的關鍵字還是可以的:
但如果是面試前看到,又會覺得有意思的點太少了。一面來看,熟悉三語言,太基礎的要求了,熟悉 MVVM、React、Redux、計算機網路這些,倒可以問問。第三點就有點虛了,而第五點基本是直接無視的。如果到我現在負責的二面,我會開始找亮點。為什麼?因為一面通過的基礎都不會太差再考察意義不太大,校招同學的專案實踐一般都不會太豐富可能不夠展開。那這時候比什麼?那我會期待他對某個或某幾個小技術項有稍微深入的研究,有一些自己的思考,自己感興趣的技術。這就是亮點。
還是以上面的簡歷為例,我覺得有意思的點就一個:
因為它是相對較新的技術,因為很多校招同學沒提到,因為它不是被研究透的技術還有不少討論的地方。這時候我會問:“Hook 是怎麼寫的”、“為什麼要搞出 hook,優勢在哪”、“Hook 的原理大概是怎樣的”、“如果我有一個現有的 React 外掛也想支援 hook 型別的寫法,該怎麼做”。逐層深入,真正區分面試者的強弱,如果這些你真答好了,那基本妥了。畢竟我們很難要求校招學生前端知識面很廣,但如果某一方面掌握得深瞭解得透,即使他知識面不廣,我們也相信他後面接觸別的前端領域也能學好做好,因為這裡反映出來的學習能力、探索能力尤為重要。這或許解答了不少同學的困惑:我面試覺得答得還可以,為何沒過?因為了解得多卻不深,沒亮點,沒能展現自己學習能力這些虛的特質,自然被比下去(PS:我這是大公司的視角,因為大公司更看重的是培養潛質)。
當然,我不是讓你去對死 React Hook 下功夫,不是告訴你捷徑。要知道,一個資深的面試官也有技術短板,他如果不熟悉 Hook,也就不會多問。但是類似的可以作為亮點的並不少,比如“喜歡鑽研 Webpack,寫過 webpack 外掛提升監控和打包效率”、“熟悉效能相關工具,熟悉 Lighthouse,瞭解它評價網頁表現的一些細節”、“瞭解 SSR,實踐過,用業內工具做過壓測,瞭解一些容易成為效能瓶頸的點”,等等等等,學生也能做,有心研究,深入思考,總能有 catch 到面試官的亮點。這些你即使沒法答得很深入透徹,也是容易比別人出彩的地方。
不過呢,最基礎的那些還是要掌握好,要不然筆試一面都沒過更別談展現亮點。
扯遠了,回來。技術能力這一節,你最好除了列一些通用的技術能力,也寫上一些對某個技術點的深入研究。而我更希望看到這一節是這樣寫的:
先區分大能力:
- 掌握前端基礎能力
- 有移動 Web 開發能力
- 有 Nodejs 開發能力
- 有小程式開發能力
- 有 Electron 客戶端開發能力
- 瞭解新技術
- ……
再歸類小能力,如:
有移動 Web 開發能力:
- 瞭解常用的螢幕適配方案
- 瞭解移動端與 PC 開發的差異
- 瞭解 base64 等移動端常用的優化方案
最後補上亮點:
- ……
- 研究過一些手勢庫,瞭解基本原理,能定製一些特殊手勢實現特殊功能;
這樣整理你的技術能力,豈不比前面乾巴巴的幾個寬泛的點,來得有條理、更深入?
專案經驗
專案經驗這節可以寫:參加實習做的專案、在學校工作室或參加程式設計比賽做的專案、自己折騰的技術專案。一般按照時間順序來梳理。
此時不建議把非程式設計甚至非前端的經驗放上去,比如用 C# 做了一個什麼樣的軟體,為什麼不太好,因為你面試的是前端,你的面試官不一定熟悉這門語言,那他對你這項經歷就不知道怎麼問,不知道怎麼考察它做得好不好,於是直接忽略了。除非你能把做得好不好加上去,比如拿去參加微軟的全國比賽拿了二等獎之類,但即使這樣,它也不是一個重要的案例(除非你沒別的前端專案 = =)。
另外不建議寫兩年以前的專案,一般超過兩年前的專案即使你寫了好幾頁,我也直接一掃而過。前端的發展變化太快了,每月每天都有各種新的文章新的實踐,有時一個框架釋出一個新版本都能給我們帶來新的思路,兩年前專案用的技術要不已經成了常識要不已經過時了,甚至一年前的都不算新。如果你想做前端,那我們希望你是持續學習持續關注前端的狀態,拿一些早早之前做的成績說明不了什麼。
我個人比較喜歡問校招學生你自己折騰過什麼技術專案。因為在這一階段你很難有機會去主導或主要開發一個實習專案,大多數情況是跟著參與專案的,配角。但個人專案則不同,從這裡我可以看出你是否真的喜歡前端,是否會自己去做一些自己覺得有趣的 Web 實踐,是否能融入自己的思考把它做好。一個喜歡折騰的同學,在工作中更容易給我們帶來驚喜,更容易創造些額外的價值。比如曾
好了,寫哪些專案實踐明確了,接下來聊聊怎麼寫。
我看過這樣的專案描述:
能理解我第一節講的簡歷思路的同學,應該也能理解我為什麼看著這段專案經歷不知道怎麼問。因為它一沒講清楚你的技術產生的技術成果,二沒講清楚遇到難點有多難怎麼解決來體現技術能力。講那麼一大段專案描述有用嗎?沒用!我真不關心專案的產品邏輯,除非這是一個技術型的專案(如開發一個XX技術框架)。講責任描述是沒錯,你要講清楚你的角色,但很虛地講確保專案高質量整合控制開發程式,還不如簡述一個事例,給一個具體策略,比如用了單測做了怎樣的架構分層都行,這才是技術簡歷。不要求寫一大段具體描述也不實際,但至少給幾句切實的具體的描述。效能優化給的小點也是太普通。
專案經歷真不是給面試官講清楚專案是什麼,而是突出專案背後通用的技術知識的應用和你解決技術難題的思路。
這一個模組我理想情況是這麼寫的:
- 專案名稱,你的角色,時間;
- 專案簡介,一句話講清楚專案的功能和產生的價值,比如“簡歷管理系統,為學生提供簡歷建議和生成管理功能,已在學校超過3個學院應用上”;
- 技術棧簡介;
- 專案中遇到的技術難點,以及怎麼解決。比如優化相關,“在開發這個 Web 遊戲中,畫面元素繁多,貼圖質量高,導致遊戲流暢度一直不夠,此時通過 XXX 策略,優化了 XXX,再通過 XXX 提升了 XXX,最後遊戲幀率保持在接近60幀的體驗”,比如複雜功能,“怎麼實現多人協同編輯腦圖,怎麼解決衝突是個難點,此時我預研了 XXX 方案,借鑑了 XXX 框架原始碼,最後結合專案特點做了策略:XXX,實現了功能”;
- 相關產出,比如輸出了《Web 開發線上遊戲的效能建議》博文附連結,比如將某塊技術開源,等;
說到底,講技術,而且最好是一些能夠跳出具體專案的點,可以給其他人啟發的點,這樣的專案經歷才容易和麵試官產生共同話題,聊得來。
其他模組
跟崗位能力關聯不大的,基本不重要,比如科研成果、比如興趣愛好,都可以省去,把上面的小節想明白寫清楚,簡歷已經較為充實了。
當然你如果有其他技術相關的,也可以補上。比如單獨一節寫社群貢獻,“在掘金知乎開個人技術專欄,寫了N篇博文,其中一篇還獲得XX訪問量,被首頁推薦過”,“nodejs的貢獻者之一,提過N個MR被採納”,“XX 框架的中文翻譯者之一”,“XX 前端技術會議做過展臺分享”,諸如此類,也是挺讚的。
更多細節
blabla 說了這麼多,最後再給一些零碎的細節建議吧:
1. 關鍵字
不再贅述,根據第一節的思路來分析,直接標黑加重;
2. 要有亮點
基礎紮實我就不說了,如果連事件代理、快取相關都講不好沒必要面下去了。做過的專案用過的框架,最好都要有自己的思考理解,才容易去挖掘亮點。也不用說全篇都是亮點,幾十處,想想自己最擅長哪塊技術,要有一個主案例,主要亮點。
3. 主動遞話題
在 2 的基礎上加強,想清楚主案例主亮點後,簡歷中適可而止地描述一下,不用帶上過多細節,吸引面試官在面試時在這方面和你交流這個早準備好的技術點,是種高階的技(tao)巧(lu)。
4. 簡歷專項專用
不要想著一份簡歷打天下,面試前端、客戶端、後臺都用一份簡歷,很容易讓面試官看出你的不用心。比如這樣:
5. 重視前實習經歷
較早之前遇到過一個同學,一面通過到我這,看了下面試評價還挺不錯,之前也在公司的另一個部門實習過,於是看了下內網招聘網站上的資料,看到之前的實習評價,不太好,主要問題是對分配事務的積極主動性不夠。這就讓我對他的印象降低了不少分,這種面試很難考察到的問題是我們最怕的。後來猶豫了很久,才決定給他二面,帶著挑剔審視的眼光,發現他二面時對各個技術的理解還不錯,也有自己的思考,旁敲側擊發現他對自己之前實習的問題也有意識到,也有思考過怎麼改進。最後讓他過了二面。
你的實習經歷表現,是你的另一種簡歷。積極對待每一份實習經歷,即使不太適合自己也做到位一點,不然下次你就坑到自己了。
6. 簡歷檔案格式
PDF。
大公司基本上都有自己的招聘簡歷平臺,刷簡歷時如果是 PDF 格式,chrome 直接就可以開啟了,非常方便。如果是 word 格式,還要下載下來,再開啟,等 word 啟動再檢視,給面試官就帶來一些麻煩了。更不太推薦搞成 zip 包,把自己的作品打包進去,先不說整個過程更費事,面試官都是有業務開發任務的未必有那麼多時間來仔細看你的作品,此時更好的做法是在簡歷裡附上自己的 github 地址並做說明,能讓面試官感興趣他自然會去看看。
雖說面試官不會因為簡歷檔案格式而拒絕一個人,但校招同學也沒必要給自己製造障礙吧。
總結
講了這麼多就是為了偷懶,如果大家的簡歷核心突出,資訊明瞭,那我們面試官可以節省多少工夫,看簡歷也能看得舒服,多好~
最後說一句,功夫在紙外,一切粉飾和技術的虛浮包裝都可能被戳破,簡歷不過是你紮實技術基礎和良好學習態度後的一道助力罷了。喜歡挑戰和反套路的我現在把守在二面了,面試時遇到我繼續自求多福吧~
PS1: 附上我上一篇文章供參考 《前端校招該考察什麼?一個面試官的思考》
PS2: 文章中用到的簡歷案例均已脫敏,如簡歷作者仍覺不妥可聯絡我換掉
PS3: 下次想寫一篇講二面的,不過目前感覺積累不太夠思考不夠深,再拖一下吧~
AlloyTeam 歡迎優秀的小夥伴加入。
簡歷投遞: alloyteam@qq.com
詳情可點選 騰訊AlloyTeam招募Web前端工程師(社招)