現在程序員大軍越來越龐大,行業競爭激烈,面試應聘的難度也提升了不少,一個前端招聘崗位就可能收到幾百上千份簡歷,企業要在這么多人中快速、準確的找出自己需要的人,面試的環節就顯得尤為重要。在經歷了十幾家面試之后,我整理了一些心得體會,也把我自己的一些成功經驗跟大家交流分享,希望大家都能找到自己心儀的崗位,實現自己的職業目標和人生價值。
面試細節
面試著裝
面試的時候一定要干凈整潔,衣著得體,不能穿的特別隨意,或者妝容、打扮特別夸張,即使在你看來這是新潮時尚,也需要分清場合,面試官會覺得這樣的人很浮躁、不穩定,即使你技術再好,單就這一點可能也會扣掉一大半的印象分。細節決定成敗,面試過程中的每一個環節都不能掉以輕心。
時間觀念
面試的過程中一定要有時間觀念,提前查好出行路線,考慮好途中會不會出現堵車的特殊情況,可以改換成地鐵這種比較穩妥的交通工具,最好是按照約定時間提前十五至二十分鐘到達面試地點,如果你早到了也不要立馬聯系工作人員,因為可能上一個面試還沒結束,或者打亂別人的工作計劃。
面試遲到會給面試官留下非常不好的第一印象,那么之后你就很難翻盤了,除非你真的是遇到了特殊情況,這時你要提前告知面試官,更改時間或者取消面試,遲到或者失約對于面試者和面試官都不是一個好的體驗。因為企業會根據時段,安排好人員面試,如果你這邊耽擱了或者時間延后就會直接影響之后的面試進度,也有可能影響面試官的工作安排。這在工作中也是很重要的職業素養,同時也反映了一個人的做事原則和對工作的責任心,再嚴重一點可能還會上升到誠信問題,如果你連這些基本的職場規則還沒學會,那么很難爭取到一個好的工作機會。
保持通信暢通
一定要確保你留在簡歷上的聯系方式是可以隨時聯系到你本人的,因為企業一般會通過招聘平臺或者你的聯系電話與你溝通面試事宜,如果hr聯系你的時候你的電話無法接通,除非你的條件真的非常優秀,否則很大概率他是不會再聯系你第二次了,不要因為漏接電話或者電話欠費這種原因讓你失去寶貴的面試機會,而這樣的一次機會或許就是改變你命運的一次機會。
面試前的熱身
對于剛畢業出來找工作的同學來說,可能經驗不足,對面試沒有什么概念。建議在你投遞心儀公司的時候可以先投幾家公司做做熱身,這個時候不需要有任何的心理包袱,就當是去練練手,所以面試的過程可能會發揮得更順暢、更自然,說不定這個階段就會獲得offer,并且比你之前想去的那家公司待遇還好,這豈不是意外之喜。
面試總結復盤
在面試中我們要打起十二分精神,面試結束后也不能松懈,應該趁著記憶還新鮮,馬上把面試題復盤出來,或者在面試的過程中做好錄音備份,晚上回家的時候詳細的整理出來。多做總結,會對自己有更清晰的認識,即使面試失敗也是很寶貴的經驗,你需要從中總結出失敗的原因,是技術方面的缺失,還是表達的失誤。同時也要明確企業在面試的過程中看中的是什么,現在應用的比較多的技術是什么。每一次失敗的面試都是為下一次成功的面試做鋪墊,通過總結你會更有針對的性的提升自己。
簡歷
簡歷內容
一定要用心制作簡歷,雖然我只說一遍,但是簡歷真的非常重要!簡歷是你向面試官展示自己的第一張名片,簡歷的好壞也會直接影響你在面試官心中的第一印象,這個一點也不夸張。有工作經驗的同學,一定要將自己的優勢充分展現出來。如果是沒有工作經驗的應屆畢業生,可以將自己在學校或者實習期間做的項目著重描寫一下。不要照搬網上的簡歷模板,簡歷應該簡潔流暢,每一個元素都是為應聘崗位而生,不要花太多的篇幅描寫你在學校學生會的經歷、你參加了什么社團、擔任過什么班級干部,可以簡略的概括,面試官不會因為你在學校當了什么會的干部就對你感興趣,他只在乎你有參與過哪些開發項目、技術能力如何、能為公司創造什么價值。
簡歷制作
不要從網絡上下載裝飾過度、花里胡哨的簡歷模板,盡量選擇商務簡潔的風格,技術人員的簡歷要以閱讀性為主,重點信息要突出,裝飾顏色控制在兩種以內,盡量不要選擇太有個性的字體,字體數量控制在兩種以內。控制好簡歷的篇幅及排版,盡量占滿整個頁面,如果一頁展示不開可以設計成兩頁,但是不要有一頁只有一兩行內容的情況出現,也最好不要超過兩頁。
簡歷投遞
互聯網簡歷投遞平臺個人推薦Boss、拉勾,一般投遞時間為早上9點-10點、下午1:30-3點,這個時段是hr處理簡歷的時間,最好不要選擇周五投遞,一般快到周末的時候工作人員都會開始本周工作的收尾。
文件格式
一般要準備兩份格式的簡歷:word格式和pdf格式,準備word格式主要是方便公司復制粘貼你的個人信息,pdf格式方便mac電腦打開,同時留給你你設計的空間也更大一些。
文件名稱格式為:姓名-求職意向-聯系方式,這樣方便hr下載好你的簡歷及時的聯系你。
簡歷編寫
簡歷編寫中一定要注意的幾個問題是:
- 避免信息缺失:基本的個人信息、聯系方式、求職意向一定要寫完整、寫明確。
- 避免信息錯誤:不能出現明顯的信息錯誤,比如工作時間、畢業時間、項目起止時間,如果連這些基本的信息都寫錯,很可能讓人對你簡歷的可信度產生懷疑。
- 錯別字問題:這是一個非常低級的錯誤,一定要對自己簡歷中的內容來回檢查幾遍,確保語句通順,沒有錯別字,有的時候就是一個小小的錯別字讓你失去面試的機會,因為會讓讓別人對你產生做事不認真、不細致的感覺。
- 求職意向一定要寫在突出的位置!版頭最好放置姓名、聯系方式、求職意向這三個最重要的板塊,讓人一眼就可以注意到,hr每天要處理上百份簡歷,平均到每一份簡歷上的時間也就是幾秒鐘,如果他讓他閱讀一份花里胡哨、找不出關鍵信息的簡歷,那么他可能會直接PASS這份簡歷。
個人基本信息
必填信息:姓名、聯系方式、求職意向、年齡/出生年月、畢業院校、專業
照片:一定要選擇正規證件照,現在拍最美證件照的攝影工作室也很多,比如天真藍、白海豚、海馬體,花上點錢拍一張得體的證件照獲得一個寶貴的面試機會,這波不虧,就當是為自己的投資了。就算不放也千萬不要選擇過度美顏的自拍、生活照、旅游照、非主流大頭貼這種奇葩照片,記住你是要去面試找工作的,不是去選美的。
現住址(可選):如果你住的離要應聘的公司比較近的話可以寫上,因為公司喜歡招聘住在公司附近的人,方便上下班。
院校背景
本人是雙非二本,自從高考失利后一直沒有放棄提升自己,一份漂亮的學歷確實能在求職面試的過程中幫你敲開大廠的門。即使沒有耀眼的學歷,通過努力也可以獲得證明自己的機會。
不要再討論學歷重不重要了,在互聯網的圈子中,核心是你本身的技術,除非你牛逼到逆天,那啥都不說了,但是大部分都是普通人,學歷是一輩子的事情,那些高考能夠碾壓你的人,進入社會,只要他們愿意,照樣能碾壓你,你努力,你拼命,別人也不會睡大覺等你,所以,學習是一輩子的事,只要有機會,就要不斷提升,你會看到不一樣的世界。
工作經歷
工作經歷按照時間的先后順序排列,最近的工作寫在前頭,最好不要出現斷檔,如果有很明顯的斷檔需要自圓其說,能解釋的過去。如果出現長期的斷檔可能會讓hr覺得你能力不行,找工作的周期很長,或者讓hr覺得你不穩定,比較愛折騰,進入公司工作一陣子就會離職。
在招聘平臺搜索一下你應聘的崗位,了解一下公司對該崗位的招聘需求,hr都是通過關鍵詞去搜索簡歷,看看出現最多的關鍵詞都有哪些,帶入你的工作經歷中,適當展開,切記不要只是單純堆砌和摘抄。
關于跳槽:很多團隊很看重人員穩定性,不建議大家頻繁換工作,對職業生涯影響很大,如果工作經歷很多,可以適當刪減,周期短的工作就不必呈現在簡歷上了。
技能描述
在這個部分可以適當夸張,但是不要過分,吹的天花亂墜,比如你只是使用過一些nodejs的模塊,了解一些php語法就在簡歷上寫精通nodejs、php等后端語言,到時候面試官一問就知道你的簡歷水分有多大了。當你的技術不能達標時,只要你的人品達標,也能為自己加分不少。在面試過程中,用你的真誠和誠信打動面試官,讓他覺得你是可塑之才,經過一段時間的鍛煉和培養可以很快成長,說不定會給你一個工作機會。但是如果你有太多浮夸的成分,明明是自己不會的技術,還想盡辦法在面試官面前展現你有多優秀,會產生適得其反的效果。
關于技能清單和技能關鍵字可以參考這份技術簡歷模板:
https://github.com/geekcompany/ResumeSample/blob/master/web.md
如果你的簡歷要投遞給有機器(簡歷分選系統)和不如機器(不懂技術的HR)篩選簡歷環節的地方,請一定從里邊高頻關鍵詞中選擇5~10個適合你自己的。
項目經歷
其實工作經驗并不能嚴格意義上等同于技術水平,有四五年工作年限的人不如剛工作一兩年的人這種現象比比皆是,有可能你初入社會,沒有工作經驗是正常的,但是沒有項目經驗就是你的問題了,學習技術必須要在項目中實踐才可以鞏固,網上有海量的資源,大批的開源項目,自己找幾個練習項目,把技術點搞清楚,流程理清楚,這不是一件難事。如果連模擬的項目都沒有,那怎么證明你的技術能力呢?難道只是在網上看視頻么?這樣能學得好才怪,更別提找工作了。很多應屆的畢業生只是在學校里學了一些理論基礎,并沒有在項目中實際操作,想著到了公司里再去實踐,那樣你學到的只能是技巧,還遠遠達不到技術的水平,技術就是為了解決問題而存在的,多動手才能獲得技術,坐等只能浪費時間。
作為前端開發人員,必須要掌握的就是Html5、CSS3、JavaScript這些基礎的知識點,你的項目經歷中起碼要有一個用原生JS編寫的PC端網站,證明你對于JS能充分的理解并且使用,有些人覺得原生JS在工作中用的不是特別多,概念又難理解,就算只會使用框架也能夠勝任web前端的工作,索性就放棄不學了。在面試過程中JavaScript的部分占了很大的比重,即使工作中使用的頻率不高,但是它是前端知識的基礎,所有的框架都是基于它來封裝的,如果基礎不扎實,就沒有辦法快速學習新知識,在工作中靈活變通。其實面試時,考察這些技能,面試官并不僅僅是考驗你的技術,更多的是為了檢驗你是否真的熱愛前端領域,是否對javaScript這門語言有學習的興趣,是不是對前端技術有求知欲和好奇心,是不是有基本的學習能力和理解能力,這些都是一個開發人員該有的基本素養。
現在市面上有很多的js框架可供選擇,而且前端技術發展的很快,說不定馬上就有新的框架誕生,我們不可能把所有的都學一遍再來找工作,企業也不是說想招一個全都會的員工,考慮到用人成本和學習成本,只能在招聘的時候通過對基礎知識的考查,來看你的基礎是否扎實,如果你的JavaScript知識很牢固,那么任何框架對你來說都不是難事,只要花個幾天的功夫就可以輕松上手使用,因為他們背后的原理都是相通的,只要掌握了使用方法就可以得心應手。就像學習過C語言的人,再學習Java等語言都是手到擒來的事。在職場上,能力經驗到了一定階段,都不是為了面技術,更多的是為了了解求職者對開發工作的態度,學習理解的深度和溝通的感覺。面試 JavaScript 原生技能,就是這個目的。
目前大部分的前端崗位招聘需求都包括能熟練使用框架,目前比較熱門的是vue和react框架,所以針對這兩個框架的項目至少一樣一個,剩下的可以從當下比較流行的前端技術中選擇一個:混合開發、小程序、微信公眾號原生JSSDK開發,一般項目的數量控制在4-5個為宜。
自我評價
這個板塊主要是針對應屆生,有兩年以上工作經驗的人可以忽略。一定要摒棄之前的套路,寫成小作文,或者直接復制粘貼網上的模板,說一些很空的內容,過多的描述你的性格人品、生平履歷、興趣愛好。
在自我評價中,應該將更多的信息呈現留給跟應聘崗位相關的項目經歷上,寫之前先明確崗位的招聘需求,然后與之一一對應展開,用項目中使用到的技術點證明你的能力符合這個崗位的需求,這樣才能引起面試官對你的興趣,你這個板塊也展現了它的價值。
一個比較好的應屆生自我評價案例:
大學中系統地學習計算機相關理論基礎,大四到公司實習,具有一年的前端開發經驗,能快速對接產品需求、前后端工作。對web前端有很大的興趣并有獨立自主學習的能力,具備獨立分析和解決問題的能力。業余時間會自主鉆研前端技術豐富自己的前端技能棧。代碼強迫癥患者,注重團隊合作,具有良好的溝通能力。
面試問答
自我介紹
一般面試開始之前面試官都會讓你做一下自我介紹,這個過程中主要是考察你的表達能力和臨場的應變能力,面試官也是借這個機會迅速的瀏覽一下你的簡歷內容,對你有一個大概的了解,拉近與你的距離,打開面試的氣氛。
自我介紹是你對整場面試的布局,會直接影響你后面的面試走向,所以自我介紹最重要的功能就是將你的亮點展示給hr,說一些你曾經做過的、符合應聘崗位需求的成功案例,引起他對你的興趣,讓他有進一步了解你的沖動。所以在準備自我介紹前你需要挖掘自己的優勢、分析公司的崗位招聘需求,提煉出關鍵詞,了解企業文化,找出自己與之相契合的特質、篩選重組成一份有策略的自我介紹,并將它熟練記憶,控制在1分鐘-2分鐘,最多不要超過3分鐘,不要說與應聘無關的內容。
千萬不要只是把簡歷上的內容復述一遍,這樣毫無意義,面試官更想通過自我介紹了解你簡歷之外的亮點,能讓他對你感興趣。如果在面試的過程中感到緊張,忘記準備好的內容,平時就要多加練習,跟身邊的朋友或自己對著鏡子,直到可以流利的將自我介紹說出來為止。這個環節的核心要回答你的優勢,比如說你掌握的技術和熟練使用的框架,重點就是要讓面試官記住你,一定要放松、自然、自信,不要讓人感覺你只是在機械的背誦,適當的停頓,時不時的跟面試官有眼神的交流,人在緊張的時候就會有很多下意識的小動作,一定要克制自己不要看天花板,不要眼神飄到別的地方,更不要翻白眼。
自我介紹包含內容:
- 個人基本介紹:簡單羅列你的個人信息即可,如姓名、畢業院校、所學專業、求職意向。
- 工作經歷:這個部分主要是針對有相關工作經驗的人,可以簡單介紹我曾在XXX公司擔任XXX一職,主要負責的是XXX內容,最后取得了XXX成果。通過分析企業的招聘需求,用自己具體的工作經驗向面試官證明你具備應聘該崗位的能力,主要就是講我做了什么,并且獲得了什么成果,這個環節不用講的太具體,如果面試官感興趣會在之后的環節跟你討論相關細節。切記不要只是堆砌一些形容詞如:樂于助人、活潑開朗、勤奮努力,沒有具體事例證明就顯得毫無根據。
- 個人經歷:如果是剛畢業的應屆生,沒有工作經驗,可以說一些自己在學校中比較亮眼的經歷,比如參加過哪些計算機相關的比賽,跟隨導師參與過哪些開發項目,大四的時候在公司實習,編寫過哪些案例,證明你有做好這份工作的潛力和態度。或者說一些自己與眾不同的特長,讓面試官覺得你是一個充滿活力、積極向上的年輕人,公司喜歡這樣的新鮮血液加入,來帶動團隊的工作氛圍。從你的這些過往經歷中也可以發掘可以匹配工作崗位的特質,有的時候會獲得意想不到的效果。
說一下你的優缺點
這個問題也是一個雙刃劍,一定要說自己真正擅長、并且能給公司帶來切實利益的方面,不要說的太跑題,比如我很有運動天賦、我會演奏樂器,也不要說的太空,比如我很誠實很勤勞,你可以結合行業屬性以及項目經驗,比如項目管理、項目推動、專業優勢去回答。展現你的綜合素質,比如我js基礎很扎實,平時喜歡關注前端領域的新技術,遇到新的框架或者沒接觸過的知識可以很快上手,有很強的學習能力和自我驅動力。
說缺點的時候切記你所敘述的經歷不要對眼前的應聘造成不良影響,盡量說一些不會影響到工作的缺點,但是不要把行業的基本素養當成缺點來說,比如我有強迫癥,我寫代碼必須格式要對齊,做技術的人都知道這是前端開發的基本規范,雖然我們知道聰明的面試者會把缺點當成優點來說,但是千萬不要聰明反被聰明誤,戲太過了就適得其反。人無完人,每個人都會有缺點,說一些別人可以接受的缺點不會給你的面試造成太大影響,盡可以放心、真誠的展示真實的自己。
這個問題沒有標準答案,只能結合自己的實際情況進行回答,并且在每次面試后根據面試官當場的反饋及面試結果不斷完善,從而找到一個“完美”的答案。
面試中的送命題
你為什么離開上家公司?這是一個看似稀松平常的問題,其實特別致命,如果回答得不好很可能之前的所有努力統統白費。馬云爸爸對于這個問題曾給過一個一針見血的回答:為什么要離職?要么錢給的不夠,要么心受委屈了。道理雖然是這么個道理,但是對于我等屁民以下這些作死的回答一定要避免,即使它就是真實原因:薪資太低、福利待遇太差、經常加班、管理制度太嚴格;領導及同事太難相處;公司規模太小,沒有成長空間;
面試官也是公司員工,你覺得有什么離職原因是他們不知道的?大部分的員工上班一半的時間都在考慮要不要離職。所以面試官主要是想通過這個問題了解下你之前的工作情況,是主動離職,還是被動離職,你的技術和能力能否勝任這份工作,你對工作有沒有足夠的熱情和責任心,是不是遇到壓力就會想離職,能不能在一個城市一個崗位穩定發展,還是三天兩頭就想跳槽。
回答這個問題的時候一定不要表達出自己對上家公司的負面情緒,避免說前東家不好,領導不好,任何負面評價,盡量表現出是自己的原因,而非公司,對上家公司要抱有感恩之心。可以從客觀原因出發,比如上班地點離家太遠,很多時間都浪費在了通勤的路上,我個人還是希望把更多的時間和精力放在工作上,所以想尋找一份新的工作機會。
大公司or小公司
有些面試官會問你怎么看待大公司和小公司,你更青睞哪一種工作機會,其實這也是很多同學比較近糾結的一個點,我們選擇工作時有三個關鍵因素:薪資、平臺和成長,在我看來工作的前三年優先級排序是這樣的:成長>平臺>薪資,很多大公司為了平薪,人員流動不會特別大,薪資待遇不會實時根據市場更新,它需要保證新員工跟之前進入公司的老員工薪資持平,所以薪資方面不會特別有競爭力,但是在你進入到公司之后會給你一段適應期,有技術總監去帶你學習,不會讓你馬上上手寫項目,這樣你會有更多時間思考和整理,尤其對于工作時間不長的同學來說,這樣梳理知識體系的機會非常難得,可以讓你學習的東西更深更系統,把學習經驗轉成實踐能力。
并且在大公司遇到優秀同事的概率更大,和優秀的人一起工作會激勵你不斷向上,你可以在學習和模仿中慢慢進步,和優秀的人共事才會有危機感,學習別人工作、思考的方式,讓自己更快的成長,有些改變會讓自己受益終身。所以我的建議是,如果有加入大公司工作的機會,一定要好好把握,不要只著眼于當下,將自身的發展放在首位。
一開始的選擇是非常重要的,工作的黃金時間稍縱即逝,但是選擇的前提是你要有可供選擇的機會,如果你都沒有機會更何談選擇,當很多機會擺在我們面前時,一定要認真思考什么是我們真正想要的,不要追隨別人的腳步,覺得大部人的選擇就是對的,我們不能保證每一次選擇都是正確的,但是我們能保證不后悔,遇事要冷靜,多思考,最后跟著自己的心做決定。這里說的選擇不僅僅是選擇去哪個公司,從事什么方向,還有與什么樣的同事工作,選擇什么樣的leader,甚至是生活中的事情。
描述項目經歷
項目經歷是我們作為技術人員,簡歷中最為重要的一個模塊,也是企業最為關心和重視的一個部分,通過項目經歷可以知道你的工作經驗和技術能力是否符合公司的招聘需求。面試過程中有一個繞不開的環節就是讓你介紹一下你的項目經歷,常見的問法就是請你說一下你最近做過的一個項目,都用到了哪些技術,團隊規模多大,人員是怎么分工的,你在項目中擔任的角色是什么,最后項目取得了什么樣的成果。
面試官沒有超能力,他在看你簡歷的時候是沒辦法核實你項目的真實性的,這是你做的項目,而且你接手的時間肯定會持續至少三四個月,所以根本無需緊張,你是對于這個項目最了解的人,而面試官只能根據你說的內容作出判斷,如果在你的回答中找不出明顯的漏洞那就只能算你真的做過。
想要回答好這個模塊有幾個關鍵點需要注意一下,首先就是在回答問題的過程中一定要流利,對于你寫在簡歷上的內容一定要倒背如流,如果你在表述的過程中磕磕絆絆,嗯嗯啊啊,那么就會給面試官留下一個非常不好的印象,起碼覺得這個人的表述能力有問題,面試是一個考察綜合能力的過程,如果你的溝通能力有問題,那么很可能會影響你之后的團隊合作。如果對于一些關鍵點比如項目名稱,起止時間,項目中用到的技術點都說錯了,那么項目經歷的可信度就非常低了,面試官會抓住這些漏洞深究,如果你不能給出合理解釋,很可能讓面試官覺得你誠信有問題,簡歷造假,這是最壞的情況,一般這種就直接出局。
另外面試前需要熟悉面試公司的招聘需求,如果該公司明確說了需要react方向的前端人員,你卻大談vue,那么縱使你說的天花亂墜也引不起面試官的興趣,然后最后面試官問你有沒有使用過react,你卻說不好意思,沒用過,那面試直接結束,這等于浪費雙方的時間。所以提前做功課,在敘述的過程中將公司的招聘需求穿插進去,不露痕跡的說一些面試官想聽的點,給面試官后續的提問做鋪墊,但是這個時候你是在介紹項目,不是在說明亮點,所以不需要詳細展開說,一旦你詳細說,面試官可能會覺得你啰嗦又拖沓。
比如針對這樣一則招聘需求,你在進行項目描述的時候可以說:
我上一個項目是一款移動端的webApp,主要為用戶提供影訊查詢及在線購票等一站式電影服務,采用vue-cli腳手架搭建開發環境,使用flex彈性盒布局及rem技術自適應適配不同分辨率的移動端設備,數據請求采用axios發送ajax,配合后端人員完成頁面數據的讀取和加載,最后采用webpack打包上線。
接下來面試官會針對你的回答展開問一些技術問題,如果你在描述項目的過程中埋下提前準備好的知識點,面試官很可能會被你帶著走,引到你熟悉的技術領域,在有限的時間內回答準備好的問題點,被問到其他問題的幾率就少了。如果你沒有把握住這個環節就相當于把寶貴的提問權全權交給了面試官,那么你接下來的問答的風險就比較大了。所以在面試前一定要做好充足的準備,你有足夠的時間去排兵布陣,而面試官只能在短短的時間內針對你的表現作出反應,所以他要提取出他比較關心的、實際工作中會用到的技術點來驗證你的能力,看看你是否真的了解并且實際應用過這些技術,還是僅僅停留在了解概念,在網上查閱了一些資料這個階段。
在接下來的回答中一定要自信、積極、流利,針對面試官的問題不能只是簡單的一句話回應:了解、做過、不知道,這個時候千萬不能惜字如金,如果你吝于回答問題,那么面試官也會吝于給你offer或者高薪。針對每一個問題要適當的展開,寧可只說自己熟悉的內容,也不要為了拖時間說一些自己不了解的知識點,因為如果你要是拋出了一個你并不熟悉的概念,面試官很可能會繼續提問細節,比如之前面試官問我:請你說一下vue中路由模式,我回答有hash路由和history路由,hash路由會在url地址欄中顯示一個"#",如果不想要顯示這個"#"可以使用history模式,但是需要后端人員配合我們去做配置,然后面試官就順口問了:為什么需要后端人員去做配置,后端人員怎么去做配置?而我當時功課沒做足,對于這塊概念沒有準備,所以這部分的風險你要自己承擔。
如果你有提前了解過diff算法,就可以在回答:react中一般在哪個生命周期中請求數據?的時候巧妙的引出diff算法和fiber算法,然后在面試官詢問關于算法問題時,針對兩個算法的原理和異同稍作展開,借機說一下自己平時會關注一些最新、最前沿的技術,會不斷深入了解一些框架和技術的底層實現,而不僅僅是停留在使用層面,整個過程就很自然流暢了。時間控制在半分鐘內,回答內容根據面試官的反應酌情控制,如果面試官給你了積極的反饋就可以繼續展開,如果被面試官打斷,就說明這不是面試官想了解的關鍵點,不是項目必備的技術。
面試官沒有義務挖掘你的亮點,一定要自己主動去提出一些自己使用的比較熟練,并且目前比較熱門的技術,跟公司的招聘需求對口,在一些開放性的問題中適當的引出,作為自己的加分項。面試官很忙,一定要在最短的時間內充分的展示自己,不要只等著面試官去提問。
你在項目中遇到哪些問題,如何解決?
這一塊比較抽象,根據你自己的項目來,著重講你熟悉、有把握的模塊,一般面試官都會從中抽取問題來向你提問,看看你對前端技術的掌握程度以及遇到難題時解決問題的能力。回答這類問題,基本原則是:通過失敗說成功,不要只強調結果,更要多描述你解決問題的過程,說一下你的收獲和成長,同樣的"說一次成功的職業經歷"也是類似的回答思路。
在面試過程中要保證關鍵的技術點對答如流,即使過程中被問到了幾個不熟悉的知識點也不用慌張,只要如實回答不知道就好了,一定不要含糊其辭,更不能亂說一通,因為前端技術更新很快,不斷的推陳出新,我們不能保證將所有的知識都囊括,如果遇到回答錯誤或者回答不上來的問題要虛心向面試官請教,好的面試官會拋出問題跟你探討,他們很愿意去幫助新人,無私分享,得到幫助后要記得說:"謝謝,回去之后我會著重把這塊知識加強一下,如果公司的項目中需要用到這樣的技術點,我會在短時間內學習、運用好"。給面試官留下一個勤學好問的好印象,不要僅僅把它當成一次面試,這更是一次學習和提升自己的機會。整個過程應該是雙向的、正面的,有的時候你使用到的一些新技術面試官可能沒有了解過,面試官在問求職者的時候,他自己也不見得多精通,可是他就是要面試這類內容。其實,他面試你這類題,并不是希望你多了解,掌握的多好。主要是看你對前沿技術的關注度和對新技術的求知欲。
如果你能將面試當成是一次技術探討,那就可以更加從容的去應對。很多時候面試官就是技術總監,要不就是你以后一起工作的同事,面試過程中給你傳遞出來的感覺非常重要,很可能就決定了以后工作的氛圍和模式,對于你之后選擇公司、工作環境和工作伙伴提供了一個很有價值的參考。
對于Web前端來說,是一個更新特別快的行業,幾乎每年都有不少新的技術,作為一個Web前端開發人員,如果對新技術不敏感,對新技術沒有學習的欲望,那么可能很快會被行業淘汰。那么,企業招這樣的求職者有什么用?所以技術面試中一定要凸顯出自己有很強的求知欲,對新技術是非常感興趣且愿意去不斷學習,公司一般都不會拒絕愛學習的人。這一點對于應屆畢業生或者沒有相關工作經驗的人來說尤為重要,這個時候面試官看中的不是你的技術掌握的如何,而是你有沒有發展的潛力,他會更想了解你的軟實力,比如你的溝通能力、處事能力、學習能力、解決問題的能力,這些都是在面試過程中通過和你的聊天一點一點去發掘的,所以如果你的技術不占優勢,你就要抓住機會向面試官展示你這方面的軟實力。
但是如果你的回答中出現了明顯的技術漏洞,比如你說熟練使用vue框架卻連vuex的流程或者vue的生命周期函數這種基礎性概念都回答錯誤,這時候就比較危險了,面試官會直接懷疑你這個項目的真實性,會通過更多問題確認你的技術能力,到底是技術能力差還是框架根本就沒使用過,不會讓你在面試中企圖蒙混過關。
雖然我提倡面試之前做好充足的準備,但是在面試的過程中準備的痕跡不能太重,讓面試官覺得你只是在背概念,回答問題的時候也不要只是機械的說出答案,作出適當的停留或者思考。對問題展開的時候切記過猶不及,不要把太多不相關的內容牽扯進來,面試官不會因為你說的多就給你加分,反而會提高問題的難度,去考察你的真實能力。
未來三到五年的計劃
很多企業在面試的時候喜歡問候選者未來三到五年的職業規劃,這個問題主要考察兩點,首先看你是否和公司對于人才定位匹配,是否和團隊人才需要匹配,比如團隊目前就希望一個前端開發工程師很好的支持項目,如果你說你規劃未來成為管理人員,那很明顯不適合這個崗位,所以這個一般結合專業說比較好,比如開發一款好的產品提升工作成就感,在前端領域成為專家,往全棧工程師方向發展,另一個考察就是看你對于整個未來趨勢的一個了解,是否理解當下的趨勢,能否將一些好的工作方法,流行趨勢運用到工作中。
所以說當談到職業規劃的時候,你需要綜合考慮自己的興趣、技能、職業目標、行業屬性以及為了實現目標所需要作出的計劃和努力,同時也要了解應聘公司的背景、現狀與未來發展方向,在談及個人的職業規劃時適當的與公司發展相結合。這個問題背后面試官主要是想考察你的臨場發揮能力、語言表達能力和邏輯思維能力,看看你對所處的行業是否有足夠的了解,是否對自己有一個清晰的認知,做事情是否有計劃有條理,以及你為了實現目標是否有足夠的信心和自我驅動力,從而對你的性格和價值觀有一個大概的了解。
對于沒有工作經驗的應屆生來說很難拿出一套成熟、完整的成長體系,因為他們還沒有正式踏入過社會,沒有感受過職場生活,所以你說話的方式和技巧就大過了內容,你只需要流暢自然的表達自己現階段的想法就可以,不用把目標定的太高、太遠,不要說我想幾年內當上主管、當上項目經理,那樣反而不切實際,這樣的答案毫無意義,應該更多的考慮專業技能方面的提升計劃和步驟,而不僅僅是看中一個頭銜。對于有一定工作經驗的人來說,就需要向面試官表現出你的目標感和上進心,你自己對職業規劃問題有清晰、明確的想法,并且有與大方向相對應的短期目標,因為在職場中,沒有上進心的人很難有大的作為,也很難在個人發展上實現大的突破,這樣的人也不會給公司帶來出彩的工作業績。所以在回答這個問題時核心主旨就是要充分利用資源,提升自我,在保證工作質量的同時,在工作之外也能尋求更多的職業突破,為自己職業目標奮斗。
能否接受加班&出差
其實雖然很多公司會問到這個問題,但是公司未必就會天天加班或者經常出差,主要是考察候選者對工作是否有責任心,能否適應比較大的壓力環境。你可以回答說,在工作中,我會以效率為第一位,首先反思加班的原因是否出在我個人身上,盡量減少因個人原因的加班情況,我會努力彌補自己工作中的不足,提升工作效率,但是遇到急需解決的項目問題,即時加班也要在規定的時間內完成任務,我會以目標和結果為導向,配合公司進度,不會為了加班而加班,即使加班也會合理規劃安排,更好的協調工作與生活,讓自己保持充足的休息,更積極、高效的投入到工作中。
很多人剛開始工作時非常抵觸加班,覺得工作是為了更好的生活,但是不能為了工作沒有了生活,這句話非常正確,但是大部分的我們都是普通人,沒資歷沒背景,不能啃老,在大城市里付不起首付,買不起汽車,現在的我們哪有資本可以享受,唯有不斷努力不斷進步才能過上我們想要的生活,獲得更好的物質回報。互聯網發展集中在一二線城市,這里人才多的是,容不得你有一絲一毫的懈怠,不努力不學習分分鐘都有可能被社會淘汰,不論在哪里,資源的分配都是二八原則,既然選擇了這個行業就要做好接受996的準備,它從來就不是一個輕松來錢快的好差事。
我們公司為什么要錄取你?
這個問題往往會跟在"你為什么想來我們公司?"之后,一些應屆生特別喜歡回答:"因為貴公司在業內有名氣,工作氛圍好,我想來貴公司鍛煉自己、學習技術。"如果你工作經驗少,只表達你想學習這個意愿是不夠的,因為學習是在學校里完成的事,你出來工作就是要為公司創造價值,老板只關心你能為他們賺到多少錢,在這個過程中你的自我提升能達到什么水平完全是看個人發展和努力程度,這就是為什么有的人幾乎同時就業,業務能力也差不多,但是一兩年的時間就拉開差距,有的人已經被遠遠地甩在了后面。
所以你不能只是站在自己的角度,把公司當成課堂,你必須要向面試官展示你有很強的學習能力和項目經驗能幫他們提升價值、解決問題,比如說我之前使用vue框架開發過移動端項目,而貴公司主要的技術棧也是vue框架,我覺得我能把之前的項目經驗用到現在的工作中,很好的幫助團隊提升,站在企業角度,從實際問題出發,不要說大話空話,讓面試官覺得你是一個有頭腦有見解的人,而不是隨意海投,只是在招聘平臺上看到一個工作機會就過來試試,你需要證明你的選擇是經過深思熟慮的,愿意在這家公司長期穩定的工作,這樣面試成功的幾率就會大大增加。
面試的終極問題
一般面試進行到尾聲,面試官都會拋給你一個問題:"你對我們公司有什么想了解的么?",面試進行到這里時千萬不能掉以輕心,這個問題回答的好與壞能決定你在面試官心中整體的印象分,不能說沒有,更不能亂問問題!如果你直接回答沒有,那么面試官可能會認為你對應聘的公司或者崗位沒有太大的興趣,直接影響面試官對你的個人評判。在還沒有確定入職之前不要問關于薪資福利待遇的問題,比如:五險一金是怎么發放的?公司都有哪些補貼?薪資多少?一年幾薪?年終獎怎么發放?員工有哪些晉升機制?也忌諱問太細枝末節、無關痛癢的問題,比如:公司可以上外網么?網速怎么樣?電腦是什么配置的?中午午休多長時間?
這是一個展示自己性格特征同時也是了解自己以后工作環境的好機會,其實面試是一個交流和互動的過程而不僅僅是簡單的一問一答,在之前的問題中主要是面試官聽你講你的情況、你之前的工作經歷、你的知識架構,在這個環節中,是面試官向你展示公司的機會,他希望通過你的問題把公司的理念和亮點傳遞給你,也懷抱一個開放的姿態歡迎你加入他們的團隊,比較安全的問題有:
請問公司目前的技術團隊架構、人員分配大概是怎么樣的?
項目團隊的規模如何?
項目中有幾名前端開發工程師?
公司目前主要使用的前端技術有哪些?
框架是使用Vue還是React?
如果我進入貴公司大概會負責哪個類型的產品?該產品的功能是什么?
基本上通過這幾個問題你就可以對公司中的技術團隊有一個初步的了解,為你對職業的選擇提供很大的參考價值,同時也給面試官留下了一個好印象,說明你對待工作不只是看中福利待遇更關心技術層面和個人提升,面試本來就是一個雙向的選擇過程,如果你能抓住這次機會充分的展示自己,給面試畫上一個漂亮的句號,那么offer自然也可以手到擒來了。
薪資談判
在經歷了層層過關斬將之后你將會進入到薪資談判過程,這個環節就進入到了反選階段,一般hr會問一下你上家公司的薪資待遇,然后再問下你對于這份工作的期望薪資,一般漲幅在20%-30%之間比較合理,但是如果你是換城市工作,也要考慮地理因素和對應城市的發展水平。
面試官還可能問你目前有沒有收到offer,如果你回答有,他會繼續追問你那你為什么還繼續面試,這時候要認可人家的企業、認可人家的技術、肯定對方的同時也肯定自己,也是給薪資談判爭取更大的勝算。
有些人可以接受無條件的加班,能接受低于平均水平的薪酬,基本上公司給他們什么待遇都全盤接受,毫無談判的余地和魄力。但是還有一部分人,出來工作是為了自我實現,同時為了獲得一個高薪,給自己和家人更好的生活,那么薪資談判就顯得尤為重要了。你不僅要知道如何通過面試官的考驗還要懂得如何評估自己的價值,你要把自己的期望薪資定在什么水平,期望薪資的范圍是多少,你能接受的最低薪資是多少,擁有一個明確的目標才可以從容的應對接下來的談判。如果面試官明確說給不到你期望的薪資,問你是否會繼續考慮這家公司,這個時候要記住一個原則:先回復說考慮一下,不要當場立即答應,即使你真的很想去這家公司,自己先給自己打折,那就等于失去了談判的機會。你可以說:"我在面對職業選擇的時候考慮的因素很多,不單單是薪酬福利,還有職位職責、職業發展以及工作環境,所以麻煩您告訴我,在您看來這個職位的合理薪資是多少?我想綜合對比之后再明確給您一個答復。"一定要讓他給出一個具體的數字或者薪資范圍,如果他真的非常想讓你加入公司的話,在這期間很有可能會再次聯系你,主動跟你談加薪的事。
總結
到這里,關于前端面試的總結也就差不多結束了,其實你技巧再好,準備的再充分,在實際面試過程中主要面對的還是技術問題,那么這篇文章的價值在哪里呢,如果你在面試的過程中連這些基礎性的問題都處理不好,可能再有能力也得不到施展。機會都是留給有準備的人的,千萬不要想著一次就能成功,前期不斷試錯,反思自己的不足,努力查漏補缺。面試前多了解企業的相關資料,有針對性的去準備。面試失敗也不要垂頭喪氣對自己失去信心,從失敗的過程中總結經驗,多聽取別人的建議,知道自己哪里需要改進,經過積累和總結,你下次面試成功的幾率就會大大增加。一定要給面試官傳遞出來自信、陽光、正能量的感覺,擺正自己求職者的心態,頂住面試的壓力,耐心、細心的整理記憶面試題。萬事開頭難,好的開頭就是成功的一半,面試前認真準備,總會獲得企業的青睞,上天會眷顧努力的人。
這些都是我在實際面試過程中遇到的問題,也總結了很多人成功的經驗,希望這篇文章可以幫到正在找工作的程序員小伙伴,也希望大家快速成長,早日成為獨當一面的技術大牛,預祝各位工作順利!