10個面試技巧幫你找到好工作

發表於2013-03-26

英文原文:10 Developer Job Interview Tips To Land The Best Job You Can,編譯:oschina

在開發者工作面試上,並沒有大量的建議。

我發現很多有才華的開發者都會在工作面試上存在困難,這是因為他們都把自己大部分時間花在他們所熱愛的技術和開發上,而沒有鍛鍊他們的面試技巧。

這是不幸的,因為擁有好的面試技巧,通過給你不熟悉領域上可能得不到的一些機會,真的能幫助你提高你的職業生涯。

1.聘請專家為你建立簡歷

我之前就說過該想法,但它如此重要,所以我再說一遍。除非你以寫簡歷謀生,否則你不會是一名專業簡歷寫手。

有許多人以寫簡歷謀生,那些職業簡歷寫手可能不會嘗試在他們自己的電腦上寫自己的軟體。

因此,倘若簡歷寫手不會寫軟體,為什麼軟體開發者嘗試寫簡歷呢?

也許你可以有一份好的工作,但夠專業的話可以得到一份更好的工作。

我的建議是,如果你想使得到工作的機會最大化,那就硬著頭皮支付美元吧,為了使你的建立更加專業化。這是一個基於更好的機會,相對較小的的投資,你很有可能有大量的潛在的收益。

2.瞭解你的面試官

當我對開發者進行面試的時候, 我總是感到很驚訝。我在開始面試之前已經給這些開發者發過郵件,這些(郵件)包含了我的全名和我的部落格地址,但在面試中我與他們交談的時候,似乎他們對我一無所知。

反過來說,在那裡我曾經面試過一些人,他們在面試中提到我曾經寫過的有一篇博文或者在Pluralsight上觀看過我的課程。

猜猜對於某一份工作我更傾向於推薦那類開發者?

我們都是凡人,我們想知道的是我們感興趣的人。 Dale Carnegie曾教過我,最簡單的方式來獲得對你感興趣的人,是對他們顯示出真正的興趣。(的確,我好像第八次推薦這本書了,是的,這是一個亞馬遜的連結。)

不論這是否是公正和客觀,另外幾點。如果你為了一份工作需要面試,提前不去了解下你將要面試的公司和麵試官,將是非常荒謬的(如果你知道面試官是誰的情況下)。

今天,通過Facebook頁面,Twitter或者部落格,比任何時候都容易找人。僅進行一點點的研究你就會學到相當多的(知識),同時也表示你注重細節,更關心你的職業生涯。

3. 爭取得到內部推薦

想知道什麼是最簡單直接的方式得到工作嗎?那就是爭取得到內部推薦。內部推薦可以提高兩倍被面試的可能性以及40%的概率得到這份工作。這會產生很大影響。其實也並不困難,如果你能夠提前播種下很多種子,那麼在你想採摘的時候自然會收穫充足的果實。

回想下,你找到一家理想的公司,想在此工作,該如何做呢?

首先,可以找到這家公司中一個開發人員的部落格,並且發現你和他在某些方面有共同的想法,接著開始留意他的部落格。

然後,評論他的部落格,並且表示對他所從事的工作以及所在的公司感興趣,當然最終目的是為了得到你理想職位的內部推薦。

許多開發者會說,“很抱歉,我不認識XXX組的任何人”。好吧,如果這個時候你想放棄,那就放棄吧,但是我敢打賭,如果你用這種方式繼續下去,一定能夠和任何一家公司的人員見面甚至成為朋友。

所有的祕密就是,在你需要一份工作時必須有網路,現在就開始吧!

4.學習解決演算法問題

我總結了6步,用於解決在開發者面試中經常出現的演算法問題。

在我的Pluralsight裡關於工作面的課程中,我將逐步教你怎樣實現這些。

它是每個開發者應該掌握的很重要的一項技能,學會它實際上沒有那麼困難。多數(注重實際能力)的面試都會涉及到一個或多個問題,讓你解決一些程式設計問題,不管是在白板還是計算機上,多數開發者都是這樣,除非是偉大的程式設計師,當被問及這樣做的時候變得手腳無措,然後搞得一團糟。

如果你花時間去學習怎樣解決這類問題,你將很容易把自己放到最高的10% 的能得到大部分工作的開發者中,同時在被問到上述問題時,你會放鬆許多。

我們之所以變得緊張與表現的焦慮無關,與解決該類問題的自信程度和熟悉程度有關。

例如,假如有人要你做10個玩玩,你可能不會覺得周圍所有的緊張和桎梏…為什麼?因為你自信你可以做到這一點。

在該領域建立自己自信心,你再也不會感到緊張。

5.回答問題要飽含激情

如果這是你想要的,用一個詞來回答問題,或者用教科書般的句子來回答,在技術上可能是正確的,但你錯過了展示一名開發者能帶給團隊的最大的資產的機會—激情。

如果我問你多型是什麼,我不僅想知道你能從教科書上讀到並記住定義再重複給我。我試著去發現你對多型性的理解。我期望你能闡述上述主體,並且藉此作為一次談話交流的機會。

現在,並不是所有的面試官都以同樣的方式,你必須弄清何時該閉嘴,如果可能的話,在你回答和解釋的是時候,你應該嘗試表現出一定的激情。

6.避免“陷阱”式問題

你為什麼尋找新的機會? 你最大的優點和缺點是什麼。 最近一次你和你的同事關於某個存在分歧的技術問題的結果如何?

在你被問及這類問題之前,你應該知道你將如何回答這型別的問題,並且知道面試官問這些問題時想要的答案是什麼。

在我的課程中我針對如何回答這些問題給出了一些恰當的建議,但你至少該提前考慮這些問題,同時通過一些你可能給出的答案的理由。

例如,加入我們看一下第一個問題,關於為什麼你會尋找一個新的機會。。。

在多數情況下,面試官試著發現你是否會說你目前或之前同事的壞話。這是一個明確的訊號,你會對他們做同樣的事,所以不要這樣做。如果你沒有提前考慮這些,你會很容易的就掉入對目前工作的同事做出負面的評價的陷阱,這樣將會嚴重的影響到你獲得新工作的機會。

7. 永不說謊!

面試時最壞的就是說謊。

如果你不知道,不要給予答案。不要假裝自己使用過一些你沒有用過的技術,或是編造你上分工作所做事情的故事。

當然,即便你不能百分之百確定,甚或不知道,你也可以試著基於你所知道的事情給出一個回答。向面試官詢問一下正確答案也無傷大雅,因為你真的感興趣。

大多數面試官的提問方向都是他們所熟知的,這樣,當你開始就問題展開討論時,他們不會難堪。基於這個原因,哪怕你覺得自己是個扯淡高手,你扯的蛋也會迅速被察覺,你將立刻失去誠信,誠信一去難回。

8. 不要過於誠實

有一點,很多開發者做的有些過火了,他們揭露了太多的個人資訊,認為誠實和完全透明是最好的策略。

儘管不應說謊,但同樣也不應該將太多個人生活瑣碎或是個人缺陷丟給你的面試官。

人們會被一點點神祕所吸引,他們不會壓注於你的強迫症或對魔獸世界的痴迷是否會影響你的工作。

有個性是好事,性格缺陷則不然。

永不說謊,誠然,但也不要主動給予對自己不利的資訊;不僅僅因為這些資訊會傷害到你,同樣也會顯的你缺乏判斷能力。

9.瞭解你的電腦科學基礎知識

在我的工作面試課程中也涵蓋了這一點,因為它非常重要,並且在不到一小時的時間能學會的。

當然,眾多的開發者聲稱他們不知道連結串列和堆疊為何物,因為他們沒有參加過電腦科學方面的正式教育或者距他們畢業的時間太久了。

我承認在大多數程式設計工作中,我們都沒有用到深層次的電腦科學概念,但作為一名專業軟體開發者,你至少應該知道最基本的知識。

我非常質疑,如果電工對電子工程的基本知識都不瞭解,你會期望他對你的房子重新佈線,因此不要假定有人期望僱能編碼但連他們專業最基本的知識都不瞭解的人。

你不必成為電腦科學教授,但你至少應該知道最基本的知識,那些我能確信在一小時之內能學會的知識,因為我在我的工作面試課程裡就是這麼做的。

10.創造性的積累經驗

最後,但同樣重要的是,大多數開發者,特別是剛起步的開發者或者進入到另一個不同的領域,缺乏相關的工作經驗,也不知道該如何獲得。

這有點像排在第一位的先有雞還是先有蛋的問題。

如果你沒有工作經驗,你怎麼才能獲得經驗呢?

答案是要創造性的(獲得)。有很多方式去獲得經驗,不涉及到直接作為軟體開發的公司。

這裡僅僅是一些想法:

  • 加入開源專案
  • 啟動一個開源專案
  • 建立一個移動App,並且將其加入到app store
  • 建立一個小型的web app
  • 寫部落格
  • 在程式碼營或其他使用者組裡展示

有很多方式你能獲得在你的簡歷上看起來很漂亮的經驗,並給你的僱主信心,讓他僱用你,你僅僅需要的是要有點創意。

最後的話

希望我講的這些技巧能對你有所幫助。現在,針對開發者的好面試建議並不是很多,因此我開始在 Pluralsight 建立了一個與之相關的課程,如果你對我在本文中所講到的東西感興趣,希望瞭解更多,你可以看看它。

如果你很精明,你可能會想,啊,那個名為 John Sonmez 的傢伙假裝在給一些免費的建議,其實是在部落格中偷偷推銷自己的 Pluralsight 視訊。

好吧,我是想通過這篇部落格促銷我的 Pluralsight 視訊,因為我是這樣想的:我製作了 Pluralsight 視訊,但我同樣希望這些技巧能夠有所幫助。

相關文章