導航:首頁 > 程序命令 > 程序員面試意味著什麼

程序員面試意味著什麼

發布時間:2022-11-19 09:10:34

程序員面試該注意什麼

閑聊
面試過程中,背景往往是初始話題,通過閑聊,他們可以得知你對編碼的認知、你的個人能力或領導力、溝通問題、技術經驗等。因此,你可以通過舉出能表明自己以上能力的例子,凸顯出自己熱愛技術、自信陽光的特性,這是基本能給面試官留下不錯的印象。
溝通
涉及到編碼問題的時候,溝通是關鍵。一個在工作時需要幫助卻能和人正確溝通的求職者比那些能輕松解決問題的求職者甚至更好。充分了解面試官出的問題到底是什麼類型,如果你開始編寫代碼,並且面試官並不想多說廢話,切忌高談闊論。讓人感覺你有團隊精神,敢於表達自己的想法,如果是是在解決不了的問題那就不要裝作自己很懂,凡是要先思考再做決定。
擺脫困境
有時候你會陷入僵局,放鬆,盡量巧妙地尋求解決辦法,不要浪費時間在腦袋裡思考,動手操作會更加形象;為解決問題尋找簡單版本,寫一個簡潔低效的解決方案,然後對其進行優化;與面試官多交流方法技巧,展示出自己的思路;要察言觀色,偶爾觀察面試官的神態或許對解決或有幫助;考慮空間和運行時的界限。
寫下你的思路想法
憑空地想很容易自我矛盾,把你的想法寫下來,然後再去考慮細節;調用幫助函數,繼續前進,不要擔心語法問題,為自己預備足夠的空間,用以在代碼行之間添加代碼或筆記;最後寫一個重頭檢查的標志,不要擔心你寫的for循環是否應該有「<」或「<=」。在代碼的最後畫個勾選提醒自己最後再檢查一遍。先按自己的思路走;使用描述性的變數名,標准化很有意義。
完成之後的整理
瀏覽解決方案,當程序運行時記錄下變數保存的值——如果你只是記在腦子里,不會讓你贏得任何加分,這有助於你發現bug和消除面試官的困惑;尋找差一錯誤,測試邊緣情況,措施包括空集合,單項目集合或負數;不要做惹人厭煩的事。
實踐
最後,運行實踐問題是沒有捷徑的。好記性不如爛筆頭,對自己誠實,用筆寫可能一開始會讓你覺得別扭,但是如果你現在就能克服這個難題,那麼當面試的時候,你就不會覺得笨拙和不順手了。准備充分,放輕松,技術在手,終能收獲一席之地。

⑵ hr面試程序員問什麼問題,程序員在面試的時候的注意事項

01 和優秀開發者溝通
如果你本身沒有編程背景,那就盡量找到一些優秀的開發人員給你指點迷津。
02 問專業的問題

1. 簡要介紹一下你自己以及你最近在做的項目嗎?
作用:這個問題可以讓你更好地了解你的候選人,而談論近期工作能了解他對工作的熱情和奉獻。

2. 其他時間有別的項目要做嗎
作用:鑒於你的項目的時間長短和工作復雜程度,你可能只想找一個能完全投入到這個項目的人。但是很多程序員都會同時兼顧好幾個項目,你要確保彼此雙方的需求是什麼。

3. 你是怎麼看待自己的身份的?開發?產品經理?還是二者都是?
作用:理想的回答一般是『二者都是』, 但是你要認真評估每個候選人可能給你團隊帶來的有利和不利影響。產品經理可以幫助設計新的功能和交互,但是你也需要足夠的開發才能跟上方向從而建構你想要的內容。

4. 你會如何管理一個程序員團隊?
作用:這個問題可以幫你了解候選人的領導能力和風格。

5. 告訴他們公司想要的人是怎樣的。
作用:直截了當地告訴對方你的期望。像工作時間,項目長短,目標等等,這些都是對方很想知道的。就像你評價他是否適合公司一樣,對方也會評價你的公司是否適合他。

03 去合適的地方招聘
你不能指望天上會掉下個好程序員給你,微軟和谷歌的優秀程序員也不會自己蹦到你跟前。你的機會在於,很多這樣的程序員都擁有或追求商業想法。
你可以多去一些網站、活動大賽等地方探索發掘,這比你在社交網站上找到他們的運氣要大得多。

· 編程大賽
編程大賽就是程序員高手們雲集在一起,合作共同完成一個軟體的開發。
猿圈會定期舉辦此類招聘編程大賽,幫助企業挑選優質人才,提高企業品牌僱主形象。

· 開放性源代碼貢獻者
一些網站比如GitHub,提供在線代碼存儲庫, 程序員可以自由對開源項目貢獻自己的代碼。
所以,在招聘之前,你可以先去這種網站上找一找有潛力的候選人。

· 大學
· 軟體開發大會
盡可能多的去參加一些和你的產品相關的軟體開發大會。

· 技術博客
你能根據他們的博客判斷他們的技術技能、解決問題的能力以及寫作和溝通能力。

04 沒通過編程測試,堅決不錄用

你只能記住一條原則,那必須是,沒有讓候選人參加編程測試之前,千萬不能決定錄用與否。

通常情況下,出於項目的緊迫,我們會傾向於選擇看起來靠譜的第一個程序員,但是不拿到他的編程測試結果,不要沖動地下offer。

我也是個不懂代碼的HR,但是我善於利用各種各樣的工具,前段時間發現了一個猿圈測評的工具,我用它測試程序員候選人,通過測試結果判斷是否值得邀約來面試,這個我覺得很贊,你可以試試看

⑶ IT面試經驗:程序員面試什麼最重要

程序員面試一直是社區樂於討論的熱門話題。我自己從06年實習以來,先後經歷了4家軟體公司,全部是外企,其中有世界500強的通信企業,有從事期權期貨交易的歐洲中等規模的金融公司,也有為大型汽車製造商開發Android智能汽車的新興公司。跨入IT行業以來,我在求職過程中經歷過多次面試,最近兩年也有過多次面試別人的經驗。我感覺現在到了對這個問題發表自己看法的時候,這篇文章是我站在面試官角度對於程序員面試問題的一個階段性反思和經驗總結。
目標
相信和不少朋友一樣,有了幾年工作經驗成為Senior後就開始了面試別人的經歷。我在最初這個階段只是按照自己的想像把」找到基礎好的程序員「,」找到演算法能力優秀的程序員「,」找到有Android開發經驗的程序員「等作為面試的目標。但是,實際的經歷告訴我,尤其是按「基礎好」,「演算法好」這些目標招到的人最終效果並不好。比如,有的面試者基礎知識和演算法掌握情況不錯,進程、線程、內存等概念清晰,基本的Hash,二叉樹,快速排序等數據結構和演算法也比較熟悉,但是進公司後在實際工作中表現得很糟糕。後來,我才發現原來是我的面試目標出了問題,我原先的面試方法更像是大學的演算法或操作系統期末考試,按照這種方法讓許多並不合適的人通過了面試,同時也可能錯過了許多合適的人。
後來,我的反思是,從公司的角度講,面試的根本目的是找到「能夠干好工作」的人,而「高學歷」,「演算法好」,「基礎好」,「有經驗」這些都是表象而不是根本,它們並不能直接和「工作好」劃等號。
方法
目標明確了,但接下來的問題是假設面試者是一個黑盒系統,「工作好」不是直接可觀測變數,你所能直接觀測的變數是基礎、演算法、經驗、學歷、性格、談吐、年齡等等。所以,實際上,你只能從「基礎好」,「演算法好」等可以直接觀測的量去推測「工作好」的概率,這就是一個在「X好「條件下」工作好「的條件概率問題:P(工作好 | X好)。
根據這個模型,面試所應該考察哪些方面就很明顯了,那就是選擇那種最具有區分性的方面來考察。比如,考察面試者的體型特徵沒有太大意義,因為P(工作好|高),P(工作好|矮),P(工作好|胖),P(工作好|瘦)的概率都差不多;所以,體型特徵不具有區分性,這不是面試所應該關注的內容。
面試官應當結合職位的要求明確哪些因素具有比較好的區分性。比如,如果要招一名技術門檻比較高的3D游戲引擎開發工程師,面試者A具有3D游戲引擎開發的經驗,但是在基礎知識和演算法面試方面表現一般;面試者B相反,基礎知識和演算法面試表現很好,但沒有游戲開發經驗,而你只能選擇其一。你選誰呢?其實,這就是兩個條件概率問題P(工作好|經驗好,基礎一般,演算法一般)和P(工作好|沒經驗,基礎好,演算法好)。這個問題就留給面試官來判斷了,就我個人而言,對於技術門檻較高需要技術積累的職位,經驗更加說明問題,因此,我更傾向於面試者A。
下面,我再結合自己的經驗談談對面試中常見方面的看法。
演算法
演算法是Google和MS等大公司面試所重點考察的內容。我個人很喜歡演算法,曾經參加ACM/ICPC拿過北京賽區的13名。但是,就個人經驗來看,我所接觸過的絕大多數開發職位而言,演算法都不適合作為考察面試者優劣的主要因素。對於普通的非演算法性開發職位,考察面試者的演算法就相當於考察他打乒乓球好不好一樣,與目標「工作好」的相關性太低。就我個人的經驗來看,差不多P(工作好|演算法好)=50%,也就是演算法面試沒有太大的區分性。
甚至,還有一種很不好的情況特別多地出現在演算法好的面試者身上,我稱之為「只磨刀,不砍柴」。什麼意思呢?有類人只對什麼A*演算法,非同步編程,JVM類載入機制這種純技術問題感興趣,對實現用戶需求毫無興趣。這類人看起來有一定的技術能力,但是對公司來講貢獻十分有限,甚至不如技術一般但認真負責的人。所以,一旦遇到面試者演算法好,我就特別留意考察會不會是這種「只磨刀,不砍柴」的人。
另外,雖然我個人不了解Google和MS,但我對於其特別重視考察演算法能力的面試策略是持懷疑態度的。即使在這樣的世界級大公司,演算法雖然重要,但可以想像在項目實施過程所遇到的各種各樣問題中,演算法問題絕大多數時候不會是主要瓶頸,沒有到那種需要每個人都是演算法高手的情況。實際上,絕大多數項目真正難點並不是一兩個演算法瓶頸,甚至也不是單點的技術瓶頸,而是系統性的組織、協調、設計、開發問題,有大量的看起來不是那麼有技術含量的臟活累活,也有許多問題是由於信息不足,並不是技術能力強就能克服這些困難。一個團隊最好優勢互補,有人演算法強,有人業務分析能力強,有人擅長後端服務,有人擅長前端界面,有人聰明,有人踏實,這是最好的。如果按照「演算法好」的單一標准選材,必定會把許多優秀的人才拒之門外。
基礎
基礎面試是指考察諸如指針使用、進程線程概念等基礎知識的面試,十分類似於大學期末考試題。我曾經以為基礎面試十分重要,但是現在不這么看了。在工作中基礎的確是重要的,但是在面試過程中,它必須具有區分性才有意義,也就是說P(工作好|基礎好)的概率要高,那麼考察指針使用,進程線程區別這樣的基礎題目才有它的意義。我的實際經驗是,基礎面試並不具有很好的區分性,和演算法一樣, 差不多P(工作好|基礎好) = 50%。同時,基礎面試是最容易准備的,中國人有長期的應試教育經驗,要准備幾個把玩指針題目太容易了。
我曾經遇到過這樣的面試者,他的C語言基礎和編譯、鏈接等原理掌握得非常好,給我留下了深刻的印象,我給的面試結論是:知識面不寬,只會C語言,但基礎很扎實,建議錄用。後來的事情證明了那個結論的前半部分是對的,但是」建議錄用「錯了。他在實際工作中表現得一塌糊塗,不理解需求,不理解整體架構;同時,上班時間不是花在項目上,而是花在閱讀諸如《程序員的自我修養》之類的書籍上。最後,這位同事由於長期「不出活」離開了公司。
基礎不是不重要,而是「基礎好」不足以說明面試者能幹好工作,因為基礎是屬於局部性知識,而實際工作需要綜合性能力,二者有天壤之別。C語言、操作系統能考高分,但是不會寫程序的人在大學我們還見得少嗎? 軟體開發就像蓋房子,綜合能力是設計和搭骨架,基礎知識是碼磚。張小龍原先Foxmail是Delphi開發的,他它不懂C#,你如果要招聘一個開發.NET Email客戶端的人,你考察他對CLR掌握得好不好有意義嗎? 讓張小龍來開發一個C#版的Foxmail真的會有困難嗎? 你招一個精通C#但沒有Email客戶端開發經驗的人來真的比張小龍靠譜嗎?
我說基礎知識不重要,和古人說的「不積窪步無以至千里」是不是矛盾呢?不矛盾!「窪步」與「千里」是一種可累加關系,但再多的「基礎知識」都累加不成「綜合能力」。學習軟體開發要像持續集成一樣,一開始就是一個完整的系統,雖然規模不大,問題很多,但它麻雀雖小五臟俱全,從小系統到大系統,從簡單系統到復雜系統逐步演化。
所以,基礎好本身不足以說明太多的問題,必須進一步考察綜合能力。對於基礎面試表現不好的面試者,如果時間允許也要進一步考察,有的面試者其實是有能力的,只是沒有進行充分的准備。最理想的狀態當然是基礎和綜合能力俱佳,若不能兼顧,應當綜合能力優先。
經驗
這里所說的經驗不是通過工作了多少年來衡量的,而主要是指面試者的經歷,比如,是否完整地實現過一個軟體,或作為主要開發者完成過一個項目。經驗的重要性在於它能說明一個人的綜合能力。從項目的性質、規模和難度,面試官就可以大致判斷出面試者的綜合能力。如果一個面試者一直在大公司負責一個小模塊的開發維護,那麼基本可以判斷他不具備獨立或作為主要開發者承擔一個項目的能力,只適合在另一家大公司做類似的事情。對於門檻較高需要長期技術積累的職位,相關經驗更顯得尤為重要,比如,Linux內核開發,JVM開發,游戲引擎開發,資料庫實現,高級UX等。對於這類職位,沒有經驗的面試者即使綜合素質不錯也是需要長時間的學習和積累才能勝任。所以,基本上如果確定了你的職位屬於此類,那麼相關經驗毫無疑問應該成為首選因素,換句話說,P(工作好 | 相關經驗好)的概率是非常高的。
通過項目經驗判斷面試者的優劣比通過基礎和演算法測試更加靠譜,所以,面試過程中面試官應該花比較多的時間聽面試者介紹項目經驗,並進行深入地探討交流,了解面試者的知識面、思維能力、表達能力等。同時,可以結合項目提一些基礎知識和演算法的問題,比如,如果面試者做過C++相關的項目,那就可以問他如何進行內存管理?是否熟悉智能指針?如果面試者的回答不能令人滿意,那麼就基本上可以判斷他的項目做得不是很好。
要注意的是,經驗也是一個多維度的事物。比如,C++股票交易中間件系統,這就涉及(C++,中間件,股票) 3個維度。假如面試者A做過C++股票交易客戶端,面試者B做過C的股票交易中間件。從語言角度看,A最匹配,從項目性質看,B最匹配,你如何選擇?這就是在多個維度中,哪個維度更重要的問題,就這個例子而言,我個人更傾向於B,因為我認為中間件開發經驗是主要矛盾,而從C切換到C++並不是問題。所以,面試官需要判斷哪一種經驗是主要的,而哪一種經驗是次要的。比如,我們招聘Android應用開發,這個職位的Android技術門檻並不高,它的真正難點在於做出好的用戶體驗(UX)。所以,如果一個面試者沒有Android的經驗我們是可以接受的,但是我希望他在UX方面有經驗,至少做過其他平台的移動應用開發。
性格
現在,我來談我認為最重要的因素:性格。這可能是許多初為面試官的朋友所難以想像的,怎麼會是性格最重要呢?說實話,當我意識到這一點時,我自己也很驚訝!說白了,還是 P(工作好|性格好)的概率最高啊。我的實際經驗是,如果一個人的性格好,他能把工作做好的可能性是最高的,性格好遠比基礎好、演算法好要靠譜。
一個人如果技術上有缺陷,經驗上有不足,但性格好,在團隊中是很容易由其他人來補位的,他自己也很容易逐漸補起來;相反,如果一個人的性格不好,所有的技術優勢經驗優勢都發揮不出來,甚至還會起到負作用,而且性格缺點很難改變。我一直談到實際工作所需要的是綜合性的能力,這種綜合能力的發揮中性格是至關重要的。項目中不止會遇到技術問題,要涉及溝通、協調,不同的人不同的部門既有合作又有磨擦,如何處理這些事情都需要一個良好的性格。可以說,在開發團隊里讓你與眾不同的不是你從哪個學校畢業,也不是你過去的經驗,而是你的性格。
當然,性格是一個復雜的東西,它包含了很多的方面,並非所有方面都是程序員面試所需要關注的。我的經驗是可以重點考察這些方面:
1) 態度積極還是消極。有的面試者在談吐中就會自然給你一種積極上進的感覺,或者你可以在他的經歷中發現他積極的因素,這些都不是太難看出來的。相反,有的面試者你能明顯感覺到他的消極情緒。積極性在工作中是十分重要的,積極的人能給團隊帶來朝氣,也更易於合作。基本上,如果確定面試者屬於態度積極的,他通過我這一關的可能性就會大大增加;相反,如果確定屬於態度消極的,即使技術能力不錯我也會十分謹慎。
2) IQ。我的經驗是,總體來看,聰明的人在工作中的表現更為優秀。在面試中要考察一個人是否聰明並不一定要像Google和MS那樣找些專門測試IQ的智力題,其實,你只需要看他討論問題是不是很有邏輯性,思考和說話是不是反應敏捷就可以做出大致的判斷。另外,眼睛是人心靈的窗戶,一個人聰明與否,眼睛是會說話的。不過,聰明也不完全是優點,比如,當公司或項目遇到困難時,往往是聰明人先跑掉了,堅守的往往是IQ一般的人。
3) 語言表達能力。語言表達能力也是程序員十分重要的一項素質,它關繫到項目中的溝通是否順暢。面試官可以看看面試者能否用簡明的語言介紹清楚曾經做過的項目,能否抓住要點,能否考慮到聽者的相關背景。一般來講,語言表達能力強的人綜合能力都不會太差。
4) 是否具有用戶意識。有人說程序員是做研發的,哪來什麼用戶?只有銷售、市場人員才會和用戶打交道。其實,這是完完全全的錯誤認識。你寫一個模塊,甚至一個API,只要有別人用,他就是你的用戶。有的程序員設計一個模塊或是一個軟體總是習慣於從使用者的角度來考慮,盡量地方便使用者,這就是一種良好的用戶意識。具有良好的用戶意識的人更能考慮別人的感受和整體的需要,而不是單純地從自己和局部來思考問題。當面試者談及過去的項目經驗時,面試官可以常常站在用戶的角度對其進行提問,從這個過程中觀察其是否具有良好的用戶意識。
5) 如何應對質疑和壓力。面試官應該對面試者的回答以及以往項目進行合理的質疑,看看他如何應對。曾經有一位面試者談到做游戲登錄伺服器的經歷,我就問:「如果登錄伺服器掛了,怎麼辦呢」?他說原先雖然沒有考慮這個問題,但是可以怎麼怎麼改進。其實,大家都理解項目中有各種不完美,這裡面原因很多,只要面對質疑和壓力能從容應對努力往好的方向思考解決就可以了,不需要掩飾缺陷,更不應該有情緒。我遇到過有的面試者,一旦你對其項目提出質疑,他馬上產生反抗情緒,或不高興,或不承認有問題,這很容易一下子看出來他在工作中容不得質疑和批評,這種人要想合作就很困難。
6) 個性特點。許多面試者喜歡在簡歷上寫「精通C++/Linux「,這些字眼看得人麻木,如果有人寫」喜歡C++/Linux「,我就會有一種眼前一亮的感覺。「精通」是沒有感情色彩的敘述,而「喜歡」包含了面試者的個性,我更願意看到面試者的個性。我相信對某樣東西真正的熱情遠比你當前對它的掌握程度更為重要。其實,N年的經歷告訴我們,同一個班的同學,同一個項目組的同事,雖然每天所學的知識,所接觸的工作都是相同的,但其實每個人的成績和表現差異是十分明顯的。那麼,到底本質的差異是什麼呢?其實,就是每個人的個性。是個性使得有的人業余時間去打球,有的人業余時間去看書,有的人喜歡Linux,有的人喜歡Mac。一個人在團隊中扮演的角色也和他的個性有很大的關系。面試官應該引導面試者展現自己的個性,並判斷其是否有益於團隊。
總結
最後總結起來,我的經驗是: 1) 面試官的目標是找到」工作好「的人,一定要圍繞這個目標來進行面試,如果把面試當成了演算法或操作系統期末考試這就走入了誤區;2) 面試過程是通過學歷、性格、基礎、經驗、演算法等可以測試的因素去綜合判斷面試者「工作好」的概率;3) 在各種因素中,性格 > 經驗 > 基礎 > 演算法。性格是最重要的,如果性格不好,所有技術能力都會大打折扣,而且技術缺陷容易彌補,性格缺陷很難改變;經驗體現了一個人的綜合能力,你可以從面試者過去的經歷中判斷他能從事哪種工作,不能從事哪種工作;基礎和演算法則主要起到輔助參考的作用,基礎好的程序員一般適應性比較強,學新技術更快,但是切忌單純從基礎來判斷一個人的能力。

⑷ 如何看待程序員面試讓上機做編程題,這樣的公司多嗎

從事軟體開發多年,上機寫代碼這種考查模式在國外用的比較多,很多國內的公司也在學習這種方式,這種方式能直接看出寫代碼的能力,但對上機做編程題目這種事情很多成熟的程序員覺得是一種侮辱,有一些程序員看到有筆試直接就選擇走人了,這些東西在面試之前應該有溝通,事情不會變得這么被動,因為對於很多有能力的程序員,能夠請到面試已經非常不容易了,能力越強脾氣越大。

直接上機做編程測試能力的公司不是很多,從事軟體開發十幾年主要經歷了四家公司,面試的時候主要靠面談為主,因為編程行業能力的高低通過交談就能了解差不多,只需要根據簡歷上寫的項目進行細節溝通,如果真的做過幾句話就能看出大概的水平,所以很多公司壓根不搞什麼筆試或者上機寫代碼的事情,編程這個職業主要靠時間的積累,並且在積累中不斷完善自己的知識體系,慢慢提高自己的認知。

一個程序員如何提升自己的能力水平,對於初學者來講首先是學習好一門編程語言,開始學習階段覺得編程語言就是天了,好像是學會了編程語言就能做任何的東西了,隨著編程語法的學習完畢就開始嘗試做一些題目,結果發現距離語法真的非常遙遠,所以有很多的初學者有一種感概明明在課堂什麼都明白了,結果到真正自己實踐的時候什麼都想不起來,這是初學者必然的經歷,編程本身就是一種不斷磨練編程思想的過程,編程語言屬於在輔助類基礎技能,沒有輔助就不會寫代碼,編程設計思想再牛也不可能實現,兩者是相輔相成的作用,編程思想裡麵包含著仙姑經驗的積累。

很多人覺得很奇怪有些公司也不進行面試也不讓上機寫代碼,就是通過不到一個小時的閑聊就能把一個人的水平能力和工資水平給定位下來,通過面試就能檢測出編程思想以及編程基礎,編程基礎類的考察只需要問幾個簡單的語法問題就能做個大概的檢測,編程思想就是完全的編程意識以及編程經驗的積累,所以一些企業在招聘的時候明確寫著就相關開發經驗的人優先,企業招聘的目的就是希望要的人在短時間內能夠上崗直接切入到項目開發中去,整體來看是不是需要上機寫代碼測試完全看每個公司的技術文化了。

有些技術類的公司對於程序員的基本功要求特別嚴格,有個同事在第一家技術公司的時候,部門技術經理特別關注程序員的基本語法,只要是簡單的代碼語法錯誤,就能到部門的黑板通報,開始實施階段很多人上了黑板,後來隨著時間的推移上去的人越來越少了,同事說到自己上了兩次黑板都是因為在使用指針的時候沒有初始化導致,到今天還是記憶尤新,如果在技術生涯的初期能夠經歷過這種企業是一個技術人的幸運了,越是嚴格要求的領導或者公司越是有利於技術人員 的成長,至於在面試的時候要不要上機這個就看每個公司的技術文化了,一般注重代碼基礎的領導會引領這個事情,希望能幫到你。

這是一個正常的流程,我覺得有時候還是有必要的考驗一下面試者的。

以前這種面試實際上是很平常的,但是發展到現在越來越多的人對這樣的面試很反感,大概率的原因是因為很多人更多的是在搬代碼,並且搬的很成功,而真正注意寫代碼的人反而越來越少。
筆試和上機編程好不好?
我覺得挺好的,這樣可以刷下去很多劃水的人,有的人,寫代碼的能力並不強,但是搬代碼的技術一流,隨著技術越來越晚上,一些解決各種bug的網站越來越流行,現在更多的畢業生為了高工資,變成了搬代碼的人,他們能解決問題嗎?能,但是是他們自己的解決的嗎?不是,更多的是他們通過搜索的手段,問度娘,問谷歌,漸漸的形成了一個可以解決問題的方案,雖然問題解決了,但是等遇到一個需要創新開發的時候,他們就完了,基本上沒有了自我的思維。

筆試和上機可以有效的防止這類人進入公司,實際上也是一種不錯的手段。

這樣的公司多不多?
據我所致,目前來講上機編程的公司不是很多,畢竟,每個公司所使用的編程軟體不同,有的公司製作的軟體也比較具有保密性,沒辦法直接考程序員的實際能力,只能通過一些演算法測試,或者是什麼測試,來簡單的排除掉那些搬運的人。

所以上機測試的效果並不是特別好,一般的公司都會選擇用筆試的方式。

我遇到過不少筆試的,上機的從來沒有遇到過。

我一個同事之前換工作的時候倒是遇到過,按他所說,這樣的測試並沒有什麼效果,畢竟測試題出得很淺,太難的問題,基本上短時間內很難解決,也不會有那麼長的面試時間。

其實,在我看來,這個上機面試並沒有那麼大的用途,畢竟測試不到太多的東西,還不如看他自己寫過的代碼來的更快。至於這樣的公司多不多,真沒辦法說,畢竟沒有統計過,根據我的經驗,我覺得不會太多。

筆試的我見過,但是上機的沒有過。

1.筆試可以有
這么說嘛,其實簡單的筆試的話肯定是可以的。因為筆試的話可以讓招聘者知道你大概的能力定位在什麼位置?一些邏輯編程可以測試你的邏輯能力。尤其是在it這個行業,邏輯能力是非常重要的。

如果說你是一個已經有工作經驗的人。其實筆試就沒有那麼重要了。這時候看中的一般差不多就是你曾經的項目經歷。

如果說讓你做一些項目上的,比如說項目架構了這種的,你可以拒絕回答。因為我之前就有聽到過說招聘產品經理,讓他去設計一個產品的。結果這個公司就是通過一直招聘產品經理。然後讓產品經理去設計產品相關的功能,最後再把這些所有求職者的產品相關的思維組合到一起。

雖然說這總公司是很少的,但是也不排除是有隻通過這種方式來滿足產品需要的。

所以解釋的時候可以大概的寫一個思路代碼的流程,但是可以不用全部都寫。

2.上機測試
我覺得這個確切的來說是有一點過分的。像這種上機考試的話,肯定他是需要一個比較完整的項目。但是這種項目誰都不知道是他們公司需要,還是讓他僅僅是為了做測試。所以像這種事情完全可以直接拒絕。

在這里大概說明一下。 找工作是一個雙向的過程 ,如果說是你無法接受這個公司相關的制度,或者說是相關的流程。其實你可以趁早放棄這種公司的,不然的話即使是你筆試面試都過啦,你到公司之後也會因為你自己的價值觀跟企業的文化匹配不到一起。遲早還是要辭職的,所以你要慎重考慮。

其實面試的時候筆試和機試都是it的正常流程,但是在國內被玩爛了,面試和機試過程中,會有公司內遇到的問題做為面試內容的,也許是個人也許是公司,讓你解決這樣那樣的問題,這樣子的都是垃圾

作為一個老程序員,關於程序員面試的話題,非常有意思,特別有的聊。其實在 IT 界面,有兩個不算公開的秘密,也就是兩個不成文的習慣或者規定吧,關於面試的。

讓老程序員做筆試題是一種侮辱
很多程序員,尤其是有經驗的程序員,去面試的時候,尤其是去小公司面試的時候,如果對方給你出了一套筆試題,很多程序員會說: 我轉頭就走,這是對我經驗水平的侮辱 。

你們是不是感覺很吃驚,還有這種道理?確實是,我有一次去一個創業公司面試,對方給我出了一套筆試題,我做完了,面試完回去跟一些同事聊筆試題的事,他們會驚訝的說:你竟然把筆試題做了?你是有經驗的程序員,不應該經過筆試的,直接面試就行,筆試是一種侮辱。那是我才發現,好多程序員都這么認為的。

但是,我感覺這是一種病態思維,你既然去面試,其實筆試也是面試的一種,你去大公司比如 BAT 這樣的公司的時候,也會有筆試,而且層層面試好幾輪,你都能忍,一些小公司給你出筆試題,你竟然受不了?公司用什麼方式來面試你,是公司的選擇和考量,當然了,面試是一種雙向選擇,如果你感覺是侮辱,當然可以選擇不面了,這是雙方面試的權利。

但是,我感覺筆試是一種正常的流程,跟有沒有經驗沒有關系。有經驗了,你筆試你確定能過么?

很多程序員都不會選擇上機測試
還有一種就是面對上機做題的面試,很多程序員都不喜歡,其實我也不喜歡的,大部分程序員好像遇到上機面試的情況,也是選擇扭頭就走。

其實,我感覺上機測試是可以接受的,但是是有條件的,那就是上機做題,可以做演算法題,這種方式我能接受。

有一次我去面試,他讓我上機做題,竟然跟我說用 Android 寫個什麼功能,什麼模塊,簡直了,這種題怎麼做?直接去實現功能模塊,寫其中的一個點,我都不熟悉需求,也不熟悉功能模塊,上來就寫,怎麼做?沒法弄。我直接就走了。

演算法題屬於比較明確的東西,上機做兩道應該是可以接受的。

你問上機做題的這樣面試的公司多嗎?可以明確地告訴你,不多,我工作這么多年,面試了很多公司,只遇到過兩家。

我是負責我們公司技術面試的,機試環節必不可少。題目不會很難主要是考核程序員的感覺,只有有感覺的程序員才能寫好大程序,這很關鍵。

這主要看做什麼了,我最頭疼的是拿一個構架來靠你函數命令。我都是自己寫數學模型和函數。我哪知道這個構架的函數名?

務實啊,說明人要的是能實乾的程序猿,沒什麼奇怪。面試需求很明確,要會乾的。找領導才找會說的。剛畢業面試的時候遇見過這種機試,程序猿這行算是工科,靠技術吃飯,面試動手實戰是正常的。

支持,不然很多水逼,劃水貨太多了

這樣的公司會存在

基於以下4個原因:

1 面試的人很多,不想花過多的時間去篩選。這樣做題,可以快速過濾一些濫竽充數的人

2 通過合理的上機操作,有針對性地找合適的人,匹配的人也能快速完成上機操作

3 標准,對面試者統一對待,以免主觀原因造成誤判

4 面試者的配合度,一般看到機試,有人就會直接退出。(我遇到這種情況,就會直接走)

以上4個原因,都是較為正式的原因,還有一個主要原因就是能力不行,面試官無法正確篩選簡歷,面試官無法從面試中獲取想要的信息並加以判斷。

基於最後一個原因就是我會選擇直接走的原因,面試官能力不行,表示公司對此招聘的用功不足,該公司沒有能力或沒有意願重視此次招聘。即使入職,收到的待遇不會重視,沒有必要把自己的前景壓在一個不會重視你成果的公司上。

⑸ 程序員面試時需要注意哪些

1 說得太少
尤其是那些開放式的問題,如「請介紹下你自己」或「請講一下你曾經解決過的復雜問題」。面試官會通過你對這些技術和非技術問題的回答來評估你的經驗和能力。
所以,僅僅只用兩三句話來回答不但不能顯示出你對這個專業的興趣,還會讓整個面試過程顯得非常無聊。如果你不能很好地說明你的經驗、成就和技能給企業帶來的價值,那麼你的競爭力毫無疑問就高不起來。所以,你需要對一些最常見的開放式問答作充分的准備,學會推銷自己。
2 說得太多
不斷地說,不斷地說,卻並沒有什麼實質性的內容。換句話說,就是廢話連篇,言之無物。如果你不能簡潔的解釋問題,那麼面試官就會懷疑你在工作時的表現是不是也會像你的談話一樣拖泥帶水?可以先問問面試官,確定是否真的需要詳細解釋。
解釋也是一門藝術,關鍵是確定重點,如果需要的話再深入到細節。當聊到業務的時候,就應該從業務的角度看問題,不要涉及任何技術術語。學會用簡潔明了的方式解釋問題。如果你能時刻把握主旨,那麼這一點也不是問題。
3 回答不出一些必知的基本技術問題
面試不是技術競賽,不是看誰答對的問題多,但是有一些「必須知道」的核心Java和Web基礎知識,你不能不知。例如,對於Java開發人員
1)不知道「==」和equals之間的區別。
2)不知道equals和hashCode方法被隱式調用時的約定。
3)不能解釋曾投入精力過的應用程序的高層體系結構。
4)不知道OO的概念和設計原則。
5)不能很好地處理多線程。
6)不知道如何在HTTP客戶端與伺服器端之間保持狀態。
7)不知道SQL。

4 既寫不好簡單的代碼,又回答不出如何解決棘手的問題
作為一個開發人員,你應該根據自己的經驗水平,來針對給定的問題和情況編寫代碼。如果碰到一些比較棘手的問題,那麼即使你還沒有解決方案,也應該將你的思路講給面試官聽。當然這在面試時會讓人特別緊張,尤其是在還有時間限制的情況下,但是你也必須保持冷靜,至少應該說明你將如何試著去解決問題的方法。
5 糟糕的禮儀和態度
遲到,不適宜的著裝,抖手抖腳,沒有眼神接觸,過於緊張,沒有提問,顯示不出對這份職業的興趣,「我什麼都知道」的高傲態度,貶低你的現在和以前的僱主,遇到技術問題時煩躁不安或者垂頭喪氣,為自己找理由而不是虛心接受錯誤,與面試官發生爭執,隨波逐流而沒有自己的看法,過於呆板,撒謊,嗓門太大,無法成為良好的傾聽者,等等。
提示:面試官要找的不是技術明星,而是實實在在具備了合適的技術技能、軟技能、端正的態度以及能為企業獲取利益、全面的專業人才。因此,不妨先研究下想要應聘的機構,深入了解其工作規范以調整回答問題時的方向和重點。將每一場面試都當作免費的培訓課程,積極調整心態,不但能達到一個雙贏的局面,還可以減少緊張的情緒,從而獲得更好的表現。這樣即使你並沒有得到那份工作,也可以由此學到點什麼,獲得進步

⑹ 程序員面試時需要注意什麼

程序員面試時需注意事項
1.程序員面試是一個綜合考慮多方面能力的測試.
2.需要有不錯的專業技術.
3.面要覆蓋的廣泛一點,盡量由你做主導,多表達觀點.
4.讓面試官看到你的實際技術,比如演示你做過的項目.
5.表達流利,遇到不會的問題不要緊張,實事求是即可,切記胡亂編造.

⑺ 程序員應該怎樣去面試 程序員面試注意事項

程序員面試注意事項如下。

1、呈現出自己完整的知識結構。

對於程序員來說,最重要的一件事情就是在短短的面試過程中呈現出自己完整的知識結構。要想做到這一點,一定要在自我介紹的過程中下足功夫,既簡練又豐富,引起面試官的重視。

2、重視項目經驗的介紹。

無論是應聘初級程序員還是主力程序員,項目經驗都是面試官最為關注的內容之一,也是面試者能力的衡量標准之一。在項目介紹的時候要選擇比較有代表性的項目,簡單的說就是規模越大越好,參與程度越深越好。能夠清晰的描述自己在項目中的工作職責和最終的完成情況。

3、重視解決問題的能力。

通過一個具體的難點問題如何解決來呈現自己解決問題的能力,這種做法更有說服力,而且盡量突出重點內容,比如演算法設計、實現過程、驗證過程等內容,解決問題的能力是主力程序員的核心競爭力之一。

4、突出自己的學習能力。

程序員在整個職業生涯中需要不斷的學習,因為整個IT領域的技術更新速度是比較快的,面試官往往對程序員的學習能力比較關注,可以通過不同的項目採用不同的技術方案來體現自己較強的學習能力。

5、體現出自己的交流能力。

交流能力對於程序員來說也是非常重要的,項目開發過程中需要頻繁的交流,所以交流能力也是面試官比較關注的方面之一。體現交流能力的關鍵是把握住交流的主線,所有的思路要緊緊圍繞核心問題,盡量不要做過多的擴展,這樣容易顧此失彼。

6、描述自己的職業規劃。

一個好的職業規劃會給面試官留下一個好印象,也會為自己爭取到更好的職位奠定一個基礎。

⑻ 做程序員要面試嗎面試什麼內容

不僅要面試還要筆試 筆試考的是編程基礎 函數應用常用的演算法等等 面試也會問這些技術方面的問題也會問一些別的 比如為什麼離職為什麼選擇來公司面試以前做過哪些項目 以後的工作目標規劃等等

閱讀全文

與程序員面試意味著什麼相關的資料

熱點內容
傳奇源碼分析是什麼 瀏覽:267
解放壓縮機支架 瀏覽:255
程序員禿頂搞笑相遇 瀏覽:6
IBM手機app商店叫什麼名字 瀏覽:834
jpeg壓縮質量 瀏覽:774
雲伺服器評測對比 瀏覽:145
java日期轉string 瀏覽:221
openfire源碼編譯 瀏覽:897
在線小工具箱引流網站源碼 瀏覽:337
非科班程序員自學 瀏覽:799
壓縮泡沫鞋底底材 瀏覽:219
程序員職場第一課2正確的溝通 瀏覽:679
遇到不合法app應該怎麼辦 瀏覽:90
匯編程序編譯後的文件 瀏覽:79
大智慧均線源碼 瀏覽:373
單片機排阻的作用 瀏覽:215
滴滴金融app被下架如何還款 瀏覽:212
jpg轉換成pdf免費軟體 瀏覽:744
范里安pdf 瀏覽:447
偽造pdf 瀏覽:79