程序員面試,面試官更注重代碼量、項目經驗還是操作系統、數據結構這種基礎課程?兩者比例是五五開還是多少?


如果對方是年輕人,應屆生或者兩三年工作經驗,我會傾向於比較深入的問基礎知識,操作系統,數據結構,網路知識,關係資料庫的理論,都有可能問。如果是經驗者,一般來說,我會問幾個簡單的基礎知識,大概確認一下對方不是一般意義上的水貨(如果是。。。。那,草草問完幾個問題就宣布面試結束了唄),然後就對方過去的項目經驗中用到的技術或者設計方案進行深入的提問,有時候對方表示做過的項目的一些技術細節不便公開,那我就現場給一個設計題目,讓對方給一個設計方案。一般來說,對方如果是真的對技術有想法,自己肯鑽研的話,我問得越深,對方應該表現越好,不過現實是,一般我稍微問深一點,對方就開始吃力了,不過說實話,吃力都談不上扣分,只要他自己真的對自己用過的東西有過思考,總歸是有東西可談的,一般來說,只會copy paste的程序員,在這個階段就基本無話可說,或者說一些空話套話了。所以說,只要不說空話套話的,我一般都讓過了。。。我司的要求不高,不要求都是牛人,也不要求談到什麼技術都能信手拈來,侃侃而談,基本上,就是看看面試者是否喜歡技術,是否對技術有自己的理解和思考吧,我們覺得能夠達到這個要求,就可以了,水平高的,工資高,多幹活,水平差點的,工資低,少干點,也就是了。


套路,面試的時候都問的特別廣,特別細,結果入職了才發現你還是做一個螺絲釘。

面試時,面試官問的很認真詳細,很規範,有那麼一瞬間那我以為公司項目很規範,代碼很嚴謹,同事很厲害。。。我入職了才發現,什麼規範,嚴謹。不存在的


花半年時間培養人 ,希望你能留2年以上的公司看個人能力和基礎。

希望你能馬上上手做項目,對你期望不高的看項目。

但往往是把基礎好的人帶起來有項目經驗後跑掉了。

而有項目經驗的人花了兩年的時間補基礎。


最注重的是套路

比如大廠要刷題,國內外幾乎無例外

比如野雞廠會用百度搜來的傻逼問題問人,以此證明你基礎不好

每個廠都有自己的一套偏好,或稱之為套路,絕大多數人並沒有甄別能力的能力,或者換句話說,他們自己就沒什麼能力,所以更注重什麼,主要是公司規定、自己的偏好、心情等等等等

當然對外宣傳都是熱愛啊紮實啊鑽研啊之類的,基本上招聘廣告和要求你就當電視購物看就好了……


主要是看你的面試官擅長啥,還有你的簡歷上寫的擅長啥


謝邀。

情況不一樣,要求也不一樣。

單位招聘大致是兩種情況。一種是要找解決問題的人,一種是找畢業生之類經驗不足的人。

對於第一類這種人,就是找來幹活的。一般來說會圍繞工作中需要什麼來問。相關的技術也是非常有針對性,不會泛泛要求。這種找人,如果非常急需,工資會高一些。但也分單位,我見過非常吝嗇的老闆。

對於第二類這種人,就是當公司的潛在主力來培養的。一般來說不會太在乎你的經驗和當前技能,但會在乎你在學校學的基礎知識如何。從中可以看出對你培養之後,成功的概率有多大。如果你本身學得就很差,那也就沒啥培養價值。這種招聘一般來說都是找計算機專業的科班,不會找外專業半路出家的。但目前這種情況,越來越比較少了。因為現在的跳槽風氣導致培養出來容易跳走,所以很多公司覺得不划算,因此不太傾向這麼幹了。

話說回來,對於第一種人,也不是代碼量如何。那是非常死板的人採用的辦法,而且通常也沒法驗證真假。一般來說會問你一些編程中的實際問題。這些問題往往在書上是看不到的。如果你沒有相關的能力和經驗是沒法答出的。當年我招資料庫工程師,就問的是實際操作問題,書上根本不會講。但如果做過的人應該知道。沒做過的人無論如何也答不對。這騙不了人的。類似的架構師、測試工程師、美工、甚至項目經理等其他職位也是一樣。


瀉藥

嚴格說來是沒有一個統一的標準的,不同公司的面試官會根據自身需要問相應的問題,國內外,不管是外企民企還是國企,都混過,外企裡面美企和澳企都呆過,什麼樣子的都有,不同時間點也不一樣

只說我自己,我面試過的經驗從應屆實習到工作十多年的都有,對於應屆生,遇到過很不錯的候選,很多時候我們並不在意候選人懂多少,而是更在意他的三觀是不是跟我們比較match,舉個例子,你就算把java所有api全部背下來,如果不能正確掌握oop的姿勢,那我們還是覺得三觀不符,什麼叫做掌握oop的正確姿勢呢?我會故意拋出一個關於資料庫的問題,然後問一下候選人,對資料庫怎麼看,因為資料庫尤其是rdbms是很不oo的一個東西,表結構根本就不是object,如果你是從java開始,從oop開始被洗腦的話,你應該會反感資料庫的才對,會本能地排斥,然後對nosql以及object storage之類的會比較喜歡,這就是引導了,如果候選人不知道怎麼回答,那我會引導他了解關於mongo之類的思考,當然未必是mongo啦,隨便選一個nosql都相對oo很多

類似的引導會有很多,比如你說你自己是fp的愛好者,那我就會引導說,對比一下java跟你認為合適的一個fp語言的差異,我們什麼時候要用fp,什麼時候不用fp,該如何取捨,這些都是開放性問題,並沒有絕對的對錯答案,但是我們有一定的傾向性,會從paradigm上找候選人的共鳴,如果對paradigm不熟悉,也沒關係,那就聊聊人生,聊聊理想,你想從事什麼樣的工作,然後看看跟我們的三觀是否match,怎麼看獨立完成工作,怎麼看軟體工程等等,其實vert.x封裝之後,根本就不在乎你會什麼語言,vert.x那些語言基本上可以覆蓋99%的程序員,js/ruby/groovy/java/kotlin/scala這些你總會其中一門吧?一門都不會那這個也說不過去,就算一門都不會,要引導到相近的paradigm語言也不難,但是我要知道你是否認可我們的價值觀,對於軟體開發的理解是否相同,如果相同事情就好辦,很多東西我們可以討論,但是三觀不合就不一定能繼續走下去了

還有一定要注意自圓其說,最常見的一個問題就是,你說你用了這個東西,給一個充分的理由,為什麼要用這個東西,如果這個理由足夠充分,那其實技術問題就回答出了一半

三觀合的話,我們會欣賞那種有一定特長的員工,程序員現在分工也有前端後端移動端這些,我們會願意找那些很明確自己發展方向的員工,當然這個無所謂,就是知道之後會更加容易配合和管理


謝邀

我的順序是,邏輯思維,項目經驗,代碼量,演算法。

其實相互之間都有聯繫的,並不是獨立的,所以才叫綜合考察。


一般問問題肯定得問基礎,因為項目經驗沒啥好說的,互相聽不懂。。。。除非你們搞的項目正好完全是同一類,那麼可能你把項目一通吹根本不需要問任何基礎問題都能面進去……

要想知道面試官怎麼問,最好的辦法就是多面。


每個公司標準都不一樣,這個真的不好一概而論的。我建議但凡正規學校畢業,工作了兩三年的,都不要海投簡歷,準備去任何一家公司面試之前,都先去搜索了解下這家公司。

面試之前是要做一些準備的,最起碼的面試寶典你該背背吧,萬一被問到一個很基礎但你又長時間沒用過不熟悉的技術,答不上來豈不是很尷尬。還有就是簡歷的項目經驗要好好潤色潤色,無論是項目描述還是你承擔的職責,不僅要突出使用技術的關鍵詞,也要對業務有個大體的介紹。一般面試會問你一個最近的或者最熟悉的項目。

然後剩下來的就是根據job description來詳細準備了。

一家公司沒要你不一定是因為你差,也有可能是因為你水平太好,招你超出了預算。

還有最好集中一周時間準備面試,然後集中時間面試,大部分公司都沒啥耐心,給了offer要是考慮時間太長,會直接不考慮你了。


面試的時候問:「你會造這個嗎?」

工作後:「來,這個任務交給你!」


任何通用型職位,這事絕對是沒準的

甚至是相同公司的相同職位,不同的面試官看重的也不一樣

很多時候就只是看面試官的喜好而已

以上。


最注重性別和長相。


簡單談談我如何面試別人。這裡只說技術面試,不談HR面試。

開場白,應聘人員介紹自己的教育經歷和工作經驗。趁這時間,我瀏覽應聘人員的簡歷。或是工作忙,或是簡歷太多,面談之前一般沒時間細看簡歷。

接著,根據應聘人員的工作年限來問不同的問題。

如果應聘人員工作年限小於1年,那就聊計算機基礎知識吧。從掌握了哪門語言聊起,偶爾會出一兩道簡單題,讓應聘人員當場寫出來。數據結構偶爾聊聊,至於編譯原理和操作系統方面的就沒必要聊了。倒是常常問問在學校玩什麼遊戲,因為我從學校起就沒斷過遊戲。這些都算是閑扯,我們最看重的還是畢業學校和學習成績。目標崗位是儲備新人,培養半年,能處理簡單技術工作。

如果應聘人員工作年限1到3年,那就聊工作項目吧。在工作中用到了什麼技術,現有技術能做什麼,未來是否有提升的空間。目標崗位是普通工程師,招來即能參與項目。

如果應聘人員工作年限3到5年,還是聊聊工作項目。哪些項目是參與一部分,哪些項目是主導或深入參與。聊聊重要項目的軟體架構和設計思路,聊聊哪些是應聘者引以為豪的技術。目標崗位是高級工程師,能獨立負責項目或從事難度較大的技術開發。

如果應聘人員工作年限超過5年,聊聊工作項目,有管理經驗的加聊管理經驗。工作五年以上,項目經歷少的,技術不紮實的,性價比還不如優秀畢業生,堅決不用;僅剩管理經驗不能從事技術開發的,會佔據其他高級工程師的晉陞空間,謹慎使用;技術資深兼有管理經驗的,是左膀右臂,如果部門需要急速擴張,是非招不可,如果部門冷淡萎縮,提供不了舞台,那就不要耽誤別人了。

最後,根據面試效果,是讓HR面試,還是讓回去等通知複試(委婉拒絕)。


謝邀

看公司,看團隊

平台穩定的公司更傾向於基本功,初創項目的傾向於項目經驗

如果有個腦抽的hr那你就祈禱你帥過吳彥祖了


不要問你什麼你答什麼。

對你自己要有所期待。

如果面試結束了,問你還有沒有問題要問,

要學會給自己加戲。

當然,自己有料才是最重要的。


看面試官,看公司大小。

小公司:掛羊頭賣狗肉,面的是一個崗位,入職後恨不得讓你一個人做三個崗位。

大公司:掛羊頭賣狗肉,問怎麼造航母,入職後讓你擰螺絲。

技術面聊得不錯,但後續沒消息,原因:

小公司,給不起錢。

大公司,你水平差到面試官hold不住你,或者你水平好到面試官hold不住你。


謝邀,主要看面相,開個玩笑。

根據對方的工作經驗而定,剛畢業的看基礎,畢業兩三年的看學習方法,畢業五年以上的看對業務場景的理解,畢業十年的不要,因為比我厲害。。。。其實最後,你會發現,最重要的是看人品!


針對不同層次的人問不同層次的問題,針對剛畢業的人來說,招一個應屆生我向來都是這樣面試

1自我介紹。這部分很隨意的去談,為了之後能夠找到一個切入點去了解這個人

2個人規劃。這個才是主要的,這個主要看這個人的態度以及是否有興趣。你搞不懂這個人之後的想法是很危險的,有的是為了愛情有的為了事業有的為了自己,如果一個技術各方面都很ok的人,剛苦心培養一段時間結果人走了,想想什麼感覺

3項目經驗技術相關問答。這部分其實並不重要,能上手做事情就可以了,基本的知識點都能問個八九不離十就行了,畢竟技術知識這些都是可以通過後期的學習來獲得,當然了,如果連個hello world這種都不知道前面態度在好也不行

綜上,技術經驗都只是加分點,個人的態度是主要的


瀉藥,看公司。大廠考技術基礎,數據結構,演算法,原理等。小廠考框架。


推薦閱讀:

醫學生空閑時間學編程,是VB國二基礎,有沒有什麼好的建議?
Python 中有哪些性能優化方法?
想要系統學習演算法,斯坦福大學開設的MOOC課程《Algorithms: Design and Analysis》合適嗎?
哪種編程語言的代碼可讀性比較高?
學習編程,讀大學的和自學的有何區別?

TAG:面試 | 程序員 | 編程 | Java | 計算機科學 |