1. 程式人生 > >決定面試成敗的3個獨立思考能力面試題(轉)

決定面試成敗的3個獨立思考能力面試題(轉)

有時候程式設計師面試得不好,可能是因為面試官不好(或者程式設計師太爛,或者面試官太爛,或者氣場不合). 由於大多數企業都是粗糙管理,基本上還處於蠻荒時代,管理混亂和低效. 但蠻荒創業時代有其特有的屬性,必須先活下來再考慮其他次要問題,在生存問題面前,其他事相對來說就變得不重要了.
如果公司已越過殘酷的初創階段並存活下來,而想要發展壯大,則需要依靠領導者的智慧,和中上層幹部的良好管理.
現今有人才市場的概念,人才有多重要,關鍵還得看需求有多重要. 本來在企業和職工之間是平等的金錢利益(勞動-報酬)關係,但在金錢之下,一切都不平等了. 招聘就是: 花多少錢,招哪種人. 如果公司已有稱職的人事經理與技術主管,那基本上不用擔心招人的問題(沒有問題才是最好的管理,老闆不是太吝嗇的話).


廢話說了一堆,很多時候面試和招聘大家都做得不好也不壞。站在企業的角度,招人只看需要什麼人,準備出多少錢. 有了資源的限制,我們只能儘量用有限的資源招聘足夠好的人才.(招聘就和結婚一樣,沒有對與錯,只有合不合適,招人不考慮留得住留不住,那就是耍流氓不負責)


什麼才算足夠好?看需求,企業需要考察應聘人員的三種素質: 忠誠度、責任心、以及聰明程度;
忠誠不用說,除非公司就是爛公司,職位上也只需要一些爛人.作為一個負責任的管理者,你肯定不想為公司招聘進來一堆間諜和損害者.當然,如果環境所限,那也不必太過苛責,還是看供需.這崗位重不重要,需不需要忠誠. 也可以把這個素質叫做品格,人品.
責任心就是事業心,沒有責任心基本上不能把事情做好,一般來說,每個人都有一點責任心,但是具體有多少斤兩,那可真是不好稱量. 總體來說,不好評價也沒關係,繼續往下看。
聰明人容易做好事情,也容易做壞事情,聰明大致可以分為情商和智商兩方面.情商可以根據溝通交流和語言來衡量把握,智商主要看思維和敏捷,有時候學歷也可以作為一個參考值.
但是上面這些都是廢話,需要有一定條件才能這樣考察.
有時候,公司就是因為太爛,沒法根據以上這些條件來選擇人才,那麼只好選下下策: 招有經驗能幹活的人,簡稱苦力.其實招聘苦力沒有太多訣竅,看力氣和經驗.一般就是看能不能加班,有幾年工作經驗,然後就談薪水試用. 但是招聘苦力不能稱之為團隊招聘,或者下屬招聘. 招苦力也能招到好員工,只能看緣分和機會了.


下面是翻譯自 JavaWorld 的一篇文章,獨立思考能力可以歸為"聰明程度"這種素質:


程式設計師面試不成則敗的3個問題
 —— 程式設計經驗只是面試的冰山一角
在建立一個諮詢公司時,你需要招聘很多人。 我們主要是 招聘Hadoop程式設計師。我們不想在有Haddop實際工作經驗的上百人中挑來挑去, 而是準備招聘那些基礎很好的人,然後通過培訓來迅速實現生產力的轉換【主要還是沒錢,挖不起人】


說白了就是我們想要招聘具有Java和SQL經驗的程式設計師。在我看來, 好程式設計師至少需要具備兩種素質:批判性思維技巧和自我學習能力。


我通常從簡單輕鬆的話題聊起, 引誘獵物進入一種虛假的安全感狀態(開玩笑的)。真正的目的是希望面試者儘可能地放鬆,同時讓我能衡量他的溝通能力 —— 而不是隻看他在面試中有多緊張。


我會問很多基礎的技術問題,以確定他真正瞭解簡歷上所寫的那些流行技術(術語)。 我甚至碰到有人把“Java”寫到簡歷技能中,卻只是執行過Java程式,而不知道如何編寫Java程式碼(雖然我在有了HR後再沒碰到過這種糗事)。 有人會使用各種各樣的工具,但缺乏深度的理解與思考; 例如,很多人使用過資料庫(RDBMS),但不知道鎖是如何實現的,也不會分析查詢變慢的原因, 我很快就能搞定這些傢伙。


我通常不會費心去問那些通過Google就能搜到的語法問題或其他話題. 相反,我會問你在工作中實際碰到過的那些問題。


判斷是否具有獨立思考能力,我會詢問下面三個關鍵的問題,即使面試者回答虛假的也沒多大關係:


1. 請描述你認為自己做得最好的專案. 你做了什麼使得系統變得這麼好?


這能告訴我很多關於他了解的,他的價值,以及他在團隊中實際擔當的角色,還有他是否真正地思考過自己在做什麼。


【點評: 其實這道題已經被國內的懶人們玩壞了,按我的理解,當你處於上升期和進步期時,是不會認為自己做過的什麼專案是好專案的. 也許我們也可以換一個角度來評論好專案,比如獲得商業成功,通過驗收之類的.從技術的角度來說,過去基本上是沒有好專案的】




2. 請描述你認為自己做得最差的專案. 在這個專案中你有哪些地方做得不夠好?


我們需要的是能夠自己學習的人,學習就意味著會犯錯誤, 記住教訓,下次才能做得更好


【點評:爛專案其實有一大堆,但值得說的就很少.不要太傻太天真,盡找自己的錯誤和缺點來說... 全說缺點,你覺得自己很聰明嗎?】




3. 如果有一個Web應用程式仍在執行(不管是通過 top/ps/還是其他工具看到),但是客戶端訪問時提示 “connection refused(拒絕連線錯誤)”, 那麼你會怎麼來排查這個問題呢?


通過這個問題的答案,我能看出應聘者思考問題的整個過程,他最喜歡用的工具,以及認知偏見. 還有他是否真的知道如何解決這類問題。 是否得出“正確”答案並不重要,但它能告訴我對方如何思考,是否熟悉他所使用的工具


【點評: 其實這類問題還是經常出現,特別是寫爛程式碼的那批程式設計師. 好程式,好團隊,很可能一輩子都碰不到,所以這問題就看回答能力,面試其實就是面對各種刁難,展示自己,然後看水平和待遇是否搭配.】




原文連結: 3 make-or-break interview questions for developers
翻譯人員: 鐵錨