軟體工程師面試7大技巧

TP_funny發表於2014-09-17
此文是我作為一個面試官關於如何在技術面試中出奇制勝的經驗總結。現今大多數的面試都遵循一定的模式。如果你能夠理解面試官的問題,按照他的方式回答,那麼任何面試都將不是問題。如果你覺得學這些技巧無關緊要,那我也無話可說,不過如果你各方面已經“各就各位”,那麼此文必將助你發揮出所有的潛能。

如果你自認為技術嫻熟,那麼唯一會面試失敗的原因就是準備不足。你可能無所不知,但是你仍然需要閱讀書籍、論文文章等做好準備,這些資料可能並不能教給你什麼新鮮的資訊,但是能讓你有效地組織已經知道的知識和內容。而有效組織的內容,有助於面試官的理解。另外,我補充一下,閱讀應該成為一種習慣,而不光光是一種面試的準備,這能讓你將來的工作做得更好、職業生涯更上一層樓。

大多數的面試目的是面試官為了找到那種能一起工作的人,當然,空缺的崗位有可能是在其他團隊,但是面試官還是會按照自己的評價標準來擇取。本文主要涉及一些通用技巧,主要針對擁有2到6年工作經驗的軟體工程師。


Top 1 誠實,不要虛張聲勢
自信地回答問題,如果你不知道,那就坦誠地說“我不知道,但是我認為……”。知之為知之,不知為不知,不要理直氣壯地講述一個錯誤的答案,這會讓面試官懷疑你前面那些正確的答案搞不好也是胡謅的,功虧一簣。雖然這句措辭也不是萬金油,但是卻能顯示你積極思考的能力和永不放棄的態度。對面試官提出的所有問題都要做一番努力,不要一句“我不知道”就輕易打發。

Top 2 做好寫程式碼的準備
如果要你寫程式碼,那就要小心了,千萬別忘記遵循基本規則。我常聽那些應聘人員一臉茫然地說“呀,我忘記語法了……”,我一看,原來是忘記for迴圈的語法了。我們不希望你在面試的時候記得所有的東西,但是一些基本的,像迴圈、if條件、主方法、異常,這些要是忘記了,太不應該了。看到這裡,如果你一時間也沒法想起這些,不妨複習一下。寫程式碼的時候要注重空格和縮排,那些字寫的不好的可要注意了!

Top 3 做好解釋專案的準備
軟體工程師在寫程式碼之前就應該對業務需求瞭如指掌。所以,你得能解釋專案中一一對應的流程分別是什麼。寫個三四行程式碼就深層次解釋一下,然後聽聽非團隊人員的意見和建議。當局者迷,旁觀者清。看看和客戶交流的內部營銷記錄,找找線索。可以先找個朋友練習一下,確保自己能說到點子上。
一旦你解釋完相關的業務需求,那麼接下來面試官通常會問你關於這個專案的技術架構。所有你還必須準備架構圖,以顯示專案中的各個元件是如何相互作用的。架構圖不需要任何特定的UML格式,但是你得確保畫在上面的東西你都能解釋得通。舉個例子,如果你正在做一個可以顯示資料是如何從使用者介面到資料庫的Web應用程式。那麼你就得展示涉及的不同layers 、使用的技術,等等。而最重要的是,你應該清楚你正在做什麼,不要講到後來,亂七八糟,答非所問。

Top 4 將爭論轉換為交談
即使你知道對方錯了,也不要爭論,試著以“ok,不過我不是很確定這是否正確,我回去再查閱一下”這樣的言語繼續話題。這能讓雙方都有一個愉快的心情。在面試的時候要認真聽對方的話中之意,回答的時候要以自己的經驗為依據,不要天馬行空。

Top 5 事先對各種WHY做好準備
大公司的面試關於問“Why?”的肯定很多,搞不好甚至是以“Why?”開頭,以“Why?”結束,一路“Why?”下去。例如經典的Java問題“String和StringBuffer的區別是什麼?”,後面往往還會有“為什麼String……?”又或者“如何才能……?”事先做好如何回答這些“How?”和“Why?”問題的準備。

Top 6 講述自己最大的成就
在自己以往的工作中,總會有個你認為是最棒的成就。你得學會將這個成就描繪得“天花亂墜”,讓面試官覺得這是一個超級不平凡的成績。所以準備一個勵志生動又可信的故事以展示你的能力是如何一步步讓你完成那個艱鉅的任務的。之所以要事先準備好是因為擔心事到臨頭你搞不好會忘東忘西有所遺漏不說,最怕就是語言不連貫,讓面試官無法理解。

Top 7 你有什麼問題要問的嗎?
好吧,這個問題幾乎每個面試都會出現。問問題並不是說你要知道這些答案,但是問某些“聰明”的問題能讓面試官對你的印象加分。《The Five Best Questions a Job Candidate Can Ask》或許能為你開拓一些思路,助你面試成功。

英文原文:Top 7 Tips for Succeeding in a Technical Interview for Software Engineers
來自:PHP100
相關閱讀
評論(2)

相關文章