亚洲免费人人妻人人,cao78在线视频,福建一级毛片,91精品视频免费观看,高清另类图片操逼,日本特黄特色大片免费看,超碰欧美人人澡曰曰澡夜夜泛

如何在面試中發(fā)現優(yōu)秀程序員

時間:2024-07-16 21:03:35 資料大全 我要投稿
  • 相關推薦

如何在面試中發(fā)現優(yōu)秀程序員

  我曾在一次面試中要求一個很有經驗的嵌入式軟件開發(fā)人員寫出一個反轉一段字符串并輸出到屏幕上的程序,

如何在面試中發(fā)現優(yōu)秀程序員

。他在這個題目上掙扎了很久。這個家伙是個很神奇的人。你給他一些沒用的零件,他能建造一個機器人,并能用程序控制它在屋里走來走去。他曾經參與過研制衛(wèi)星,并且這個衛(wèi)星現在正在軌運行。他只用左腦都比我能干。但是對于這個題目他卻從來、從來沒機會干過:在屏幕上顯示什么東西。

如何在面試中發(fā)現優(yōu)秀程序員

  有些人就有這種技能,能在面試中問出正確的問題,發(fā)現優(yōu)秀的程序員。而有些人卻害怕提問,畏首畏尾,問一些從網上拷貝下來的問題,自己沒主見,只會跟隨其他面試官的意見。但面試對于大多數開發(fā)人員來說是一項很基本的技能。一次失敗的招聘會給一個組織造成很嚴重的長期的后果,因為很水的雇員會把其他很水的人也帶進公司。另一方面,把優(yōu)秀的應聘者拒之門外對公司也是一種傷害。

  一場技術性的面試至少包括三個部分。在第一部分里,我們要做的是看應聘者的簡歷上寫的是否符合實際情況。在第二部分里,我們要評估一下候選者究竟有多少實際經驗。最后,我們要用一些問答選項或編程問題來測試這些經驗。

  第一部分:測試簡歷的真實性

  有一次我跟一位同事面試一個候選人。當面試完之后,我覺得這個候選人還可以,但不是十分出色?晌业耐驴雌饋砗懿粷M意。“他撒謊,他說他會XXX技術,可很顯然他根本沒有做過這種技術。絕對不能要這種人。”雖然這XXX技術對我們公司并不是很重要,“因為他撒了這個慌,”我的同事繼續(xù)說,“我就不會相信他在簡歷上寫的任何東西了。”

  應聘人員應該在簡歷中用一種很積極的色彩來描繪自己。然而,這種積極的描繪應該有個度,過了這個度,就表達的不正確了。在上面的例子中,我并不和我的同事一樣覺得這個事很嚴重,因為我事先就假設了,簡歷上的任何東西都是假的,除非被證明。如果簡歷上說,“擅長于XXX技術”,那么我就認為這個應聘者可能僅是知道XXX技術這個名字。如果簡歷上說,“在一個開發(fā)多線程股票交易系統(tǒng)的團隊里工作,”那我就會認為應聘者可能只是為這個系統(tǒng)挑選了一下背景的顏色。我的要求一向不嚴格,除非碰到了一位有十年工作經驗、已經不再寫代碼的家伙。如果有人說他開發(fā)了OpenOffice軟件的文本格式化工具,或擁有哲學博士學位,那我們就很容易假設他們有什么技能了。假設一無所有。一切都要證實。

  對于簡歷上每條相關的描述,我會首先估摸一下應聘者的實際情況。然后,我通過下面的交談來證實。

  開發(fā)過一個實時操作系統(tǒng)作為練習項目。

  你工作的團隊有多大?15個成員?哦,那么,你實際上負責哪部分的?消息隊列?很好!請描述一下一個高優(yōu)先級的任務向一個低優(yōu)先級的任務發(fā)送消息時會發(fā)生什么情況?

  完全自主開發(fā)了一套為無線安全系統(tǒng)使用的音頻傳輸協(xié)議,

資料共享平臺

如何在面試中發(fā)現優(yōu)秀程序員》(http://m.msguai.com)。

  你的團隊有多少人?只有你?哦,你是如何測試的?你為什么不使用RTP呢?

  給XXX引擎修復Bug。

  請你描述一下你曾發(fā)現過的一個特別有挑戰(zhàn)性的bug,以及你是如何修復它的。

  第二部分:發(fā)現實際的經驗

  擁有更多的經驗是一個優(yōu)秀人才的很好的指標。有經驗的開發(fā)人員都是從犯錯誤中成熟的。他們知道何時該,何時不該使用設計模式。他們有第六感,能感覺到需求的哪一部分需要修改,哪一部分要保持原樣。他們知道何時該偷懶,何時該考究。是真實的經驗讓優(yōu)秀的開發(fā)者和平庸的開發(fā)者之間的差距大的無法跨越。

  并非所有的經驗都是等效的。很有可能,對于某個人,他通過多年的工作,在很多的任務中寫或重新無數的代碼,犯了許多的錯誤,就能獲得扎實的技能。而另一種情況,一個人會在十年的時間里只在一個項目里修改了一行代碼,沒有學到任何新的東西。

  發(fā)現隱藏的時間

  很多偉大的程序員都是在他們大學的第二年就開始編程了。當他們離開學校時,他們就已經有了幾年的工作經驗了。還有,有些很神奇的程序員在他們很小的時候就開始學習編程的藝術了。我也認識好幾個人在他們十幾歲或更小時就寫出來一些不算小的程序了。這些信息你是在簡歷上找不到的,需要你在面試中把它們引誘出來。

  你是怎么進入到軟件開發(fā)這一行的?

  你曾經學過的第一種編程語言是什么?

  經驗的密度

  很多神奇的程序員只是在他們工作的時間里編碼。這很好,工作生活很平衡,你沒有理由不雇傭這樣的人。然而,在工作和學習之余做一些個人的編程項目是一個優(yōu)秀的人才的很好的指標。有業(yè)余編程經驗的應聘者很明顯有更豐富的經驗,更適合公司。沒有個人項目?這里有其他幾點也能做這方面的指標:

  在很小的團隊或小組里工作。

  參與過很多各種各樣的項目。

  對一個大型項目的各個抽象層面上都有很詳細的了解。

  在一個項目組里作為主要開發(fā)者。

  第三部分:驗證經驗

  在對應聘者有了一個基本的真正經驗水平的感覺后,就開始對他們進行重要的實際編程經驗的驗證了。幾分鐘的時間對于一個真正的測試肯定是很不充分的,但也只有這樣了。我們可以通過對編程開發(fā)的各個領域進行提問來認識應聘者對這些知識掌握的深度和廣度。當然了,你對應聘者技能水平的看法會由于你自身的經驗水平而有所偏向。對于你不太熟悉的領域你不可能對答案做出正確的判斷。所以我們一般同時會有好幾個面試官。

  工作職務的不同會有不同的面試主題。然而,下面幾個領域是很常見的:

  數據結構和算法

  多線程

  字節(jié)操作

  內存分配

  對象,繼承,設計模式

  遞歸

  匯編知識和程序運行原理

  我選擇的每個領域都有一個精心挑選的很基礎的問題(“什么是一個信號?”)。問題很基礎,只要應聘者在這個領域做過一些工作就能回答上這些問題。每個領域都有一些其它的較深入的問題。候選人對這些問題的回答能證明他們到底是不是專業(yè)。例如,如果你問一個有經驗的嵌入式軟件開發(fā)人員如何把0x4c轉化成二進制,他寫出一個4×16+12,這就不是很對了。

【如何在面試中發(fā)現優(yōu)秀程序員】相關文章:

如何在面試中自我介紹10-18

面試中如何在詢問你的薪水?10-10

面試中如何在回答自己的缺點?07-10

關于如何在面試中回答自己的缺點?08-11

低學歷者如何在面試中取勝的技巧10-29

如何在省考面試中避免套路化10-21

如何在面試中回答“你最大的缺點是什么04-26

如何在面試中做一個有趣的人09-21

求職者如何在面試中化解HR的“打壓”06-03

如何在面試中回答:你最大的缺點是什么?08-28