前段時間因爲某些緣由辭職了,最近一直在面試。面試這段時間,經歷過不一樣業務類型的公司(電商、酒店出行、金融、新能源、銀行),也遇到了不少不一樣類型的面試官。html
以前的博客,也聊過軟件測試崗位面試的一些事和性能測試崗位常見面試題,這篇博客,聊聊我對面試的一些見解,以及我的的經驗總結和思考吧。。。python
參考內容:《躍遷:從技術到管理的硅谷路徑》——朱贇著面試
1、面試官問什麼算法
一、硬實力考察編程
IT行業,特別是技術崗位,硬實力考察通常都是必須的。固然,對不一樣的技術崗位,硬實力側重點不一樣,通常包含如下幾個方面:架構
①、編程能力框架
若是是開發人員,那麼編程能力是一定會考察的,並且是重點。據我所瞭解,如今的互聯網企業,特別是一些大廠,對現場上機編程甚至白板編程,基本都是必須的。工具
認識一位餓了麼的測開同窗,面試時直接寫字板手寫算法。。。性能
關於這點, 業內還有個梗:Homehrew的做者馬克斯.霍威爾(Max Howell)去Google面試時沒法在白板上翻轉二叉樹,從而Google面試沒經過。。。測試
②、系統設計
系統設計通常是爲候選人提供一個系統設計場景,讓候選人根據本身的能力和經驗在短期內去設計整個系統的架構;或根據某個系統場景給出本身的分析結果和技術實施方案。
這點主要是考察候選人的總體思惟能力和以往工做中的職業素養。
③、基礎知識
關於這點,我我的就是一個例子:以前某次面試問到了python構造器和迭代器的區別和做用,雖然在以前的工做中都用到了構造器和迭代器,但面試時仍是沒有解釋清楚,尷尬。。。
其實基礎知識對工程師來講仍是蠻重要的,由於有不少工程師代碼寫的又快又好,但在系統設計方面會表現的不好,對一些基本的設計理念和方法知之甚少。
或者有些工程師溝通表達能力較差,工做中沒法準確的表述出本身的問題和答案,溝通能力的欠缺會給團隊帶來很大的阻力。
固然還有一部分工程師聊起來設計和基礎理論頭頭是道,但一寫代碼就表現的很掙扎,出錯了也不知道如何調試。
④、工具使用
關於這點,開發工程師對工具的使用熟練程度,面試中問到的概率我不太瞭解。
但對於測試工程師,特別是性能和自動化崗位,使用什麼自動化或者性能測試工具,技術框架如何設計,在面試中就被頻頻問到。
雖然我我的以爲系統設計和分析能力相比於工具使用熟練程度更重要,但各方面的緣由造就的目前這種狀況,面試時就只能去適應。
並且熟練地使用工具能夠在平常工做中帶來較大的效率提高,這也是不可忽視的做用。
⑤、工做經驗
面試中,經過對候選人作過的項目類型,使用的技術框架的全面瞭解,能夠深刻挖掘和了解候選人的技術棧全面程度和我的掌握程度。
二、軟技能考察
①、溝通能力
溝通能力不管是在工做仍是生活中,對我的或者團隊來講都顯得如此重要。不管是問題描述,工做討論抑或平常交流,溝通能力的不足都會對我的和團隊帶來極大的麻煩。
特別是現在愈來愈多的企業和團隊,軟件開發模式從瀑布變遷到敏捷,而敏捷又是一種更爲注重溝通的模式,溝通能力的做用愈來愈重要。
並且在面試過程當中我的的溝通表達能力更顯得重要,若是不能更明確的表述本身的能力和價值,揚長避短,面試官也沒法在短期內瞭解候選人的我的能力。
其實,面試就是一個溝通的過程,具體的硬實力是溝通的內容,結果如何,很大程度上取決於候選人的溝通能力。
②、文檔設計
其實稱爲文檔編寫更貼切點,軟件開發過程當中,一份設計詳細,可讀性良好,實時更新的透明文檔,對工做的幫助是很大的。
不管是工做進度,設計方案的確認仍是工做交接,一份良好的設計文檔,都有不可估量的價值。
我所認識的大部分工程師童鞋,對編寫文檔是不怎麼擅長的,或者說不肯意去設計一份可讀性良好的文檔,以爲性價比不高或者不必,其實這樣長期來講是不太好的。
2、愈來愈多輪次的面試
記得剛入IT行業時候,面試大多隻須要一輪便可,有兩輪面試的公司比較少。但隨着行業的不斷髮展,成熟度愈來愈高,以及我的技術經驗和眼界的提高,發現愈來愈多
的企業,在面試時候的面試輪次,也愈來愈多。下面說說爲何會有多輪面試,以及它的一些影響。。。
一、不一樣面試題考察的知識點和解決問題的能力的側重點不一樣,多輪面試能夠對候選人進行更全面的評估。
二、面試官因爲技術經驗等因素,對候選人的面試評價不一樣,不一樣面試官的反饋意見能夠有不一樣角度的參考。
三、交叉面試,避免面試官的一些主觀意見對候選人產生很差的影響。
PS:我我的以前面試過程當中就遇到了相似問題:面試性能崗位,我我的開源工具用的較多,而第三輪的技術總監是HP出身,工具比較偏向於LR、QTP,因爲這個緣由,面試結果不了了之。
四、面試題目其實都存在階梯性,通常都是由淺入深,若是第一階段回答的較好,那麼會有接下來的第二階段第三階段,難度愈來愈深的題目。
若是第一階段較基礎的問題,候選人的回答都不是太理想,那麼後續的問題通常都不會繼續深刻的瞭解溝通。
五、避免面試官的思惟侷限性:通常而言每一個面試官的熟知領域都不一樣,問題的側重點也不一樣,若是候選人正好熟知的領域和麪試官相匹配,那麼面試經過的機率較高,反之,則會產生誤差。
六、多輪面試,能夠考察候選人在不一樣的面試輪次裏對於某方面的問題是否出現了一樣的錯誤或者不全面的回答,考察候選人對同一領域不一樣問題是否具備正確的一些理解。
七、有時候面試官臨時有事或者面試經驗不足,可能會形成對候選人很差的面試反饋,多輪面試也能夠在必定程度上避免此類問題。
3、聊聊我對內推的見解
不少人對內推存在必定的誤解,以爲內推能夠提升面試經過的成功率,其實並不如此。
內推可讓我的的簡歷直接傳遞到面試官面前,避免HR由於學歷、經驗或者其餘因素被篩選掉(關於這點,有不少有爭議的地方,這裏不作討論)。
或者讓負責人事招聘的HR處理速率高點,而真正決定面試是否經過的因素仍是在於候選人自身,內推並不會讓企業下降招聘要求。
若是真要找人內推,最好找和你共事過,能夠爲你我的的能力經驗背書的人。
最後,經過面試得到一份心儀的工做,下面的幾點能夠提升面試成功的概率 :
一、良好的工做經驗、項目經歷
這就是爲何大廠出身的工程師相對更容易找到高薪工做的緣由,無他,大廠帶來的鍍金和背書能力。。。
二、紮實的基本功
對於工程師這種技術崗位, 紮實的基本功是我的能力的根本表現。
三、特色突出的簡歷
好比我的博客、對開源項目的貢獻、一些公開課分享經歷、技術大會等經歷,會在必定程度上影響面試官對我的的印象。
以上內容僅供參考,若有更好的建議或者不一樣的理解,歡迎提出討論,謝謝。。。