面試了一個 39 歲程序員,我有點慌……

本文非廣告,也非標題黨,棧長最近的親身面試經歷。java

招人背景

首先說下公司招人的背景吧,公司要招的是一個研發經理的崗位,負責管理技術團隊的各個項目組,領導只給了我兩個要求:程序員

1)技術能夠面試

2)管理有一套spring

說白了,這是一個技術+管理的崗位,不是純粹的管理崗,能寫代碼,技術上過得去是前提,因此底層還得是個程序員。微信

幹咱們這行的都懂,大廠都在清理 35 歲以上的基礎崗,若是到了這個年紀還混不到中高層管理崗位,基礎崗確實不太好找了。架構

如今的年輕人很厲害,很年輕就走上了管理層,因此我很慶幸公司在年齡上沒有卡人,給了不少 35+ 的程序員簡歷供我篩選,由於我也是程序員,因此我也不會在年齡上有所顧慮。intellij-idea

因此,確實就和標題寫的那樣,這兩天我就面試了一個 39 歲程序員,全程讓我都感受有點慌……框架

爲何慌?主要是由於年齡比我大很多,技術是否是很牛逼,會不會弔打我,狠狠地虐我?我真心怕 hold 不住。分佈式

但實際面試下來,場面一度尷尬,結局讓我感受有點唏噓。ide

面試過程

面試者 15 年工做經驗,簡歷卻只有 2 頁,能夠說很是簡練,從程序員到項目經理、研發經理、技術總監都幹了個遍,Java/PHP/Python/C# 也都有涉及。

從交談過程當中,他說是能夠作技術+管理的,而後我說問一些技術上的問題,他說好。

棧長: 你有互聯網分佈式相關項目開發經歷麼?

面試者: 有啊,那個 XXX 項目就是

棧長: 好,我看到了,我看這個項目是用 Dubbo 框架作的,爲何要用 Dubbo 呢?在大家整個項目裏面 Dubbo 承擔了什麼角色?

面試者: 作服務治理,底層是 ZK…

而後他就一直在說和 ZK 的關係,我也沒怎麼聽明白,我再怎麼引導也沒說清楚 Dubbo 在項目中承擔什麼角色。

棧長: 能介紹下服務與服務之間相互調用的時候,若是調用超時了是怎麼處理的?

面試者: 超時啊,(想了幾秒後)那應該是報錯吧

棧長: 肯定是報錯嗎?(他想了想,不說話,而後我接着說)沒有重試機制嗎?重試機制是怎樣的?

作過度布式的項目的都知道重試機制,至少讀操做要支持重試,寫操做支持重試的話被調用方還要支持冪等性,否則會形成重複寫入。

面試者: (又想了想,笑着和我說)這個項目有點久了,這個不太記得了……

而後我看了下這個項目,2014 年作的,6 年前了,他說過久不記得了,那也情有可原了。

棧長: OK,你最近作的這個項目,能介紹下它的總體架構麼?

面試者: 咱們用了 MQ,用了 Redis,用了……(他說了一堆,都沒說到重點)

棧長: 我想問的是,從上到下,這些技術是怎麼承接起來的,總體的系統架構是怎樣的?(現場沒紙筆,否則我都想讓他畫圖了)

面試者: 呃……我知道你的意思,主要是我真的不知道怎麼表達……(而後他不說話了,場面尷尬了)

棧長: 沒事,問你一個設計性的問題,假若有一個接口,五個實現類,如今的需求可能要往接口加一個方法,這樣就要改動五個實現類,但需求只須要改動其中兩個實現類,要怎麼設計纔好?

面試者: 那就只能把方法寫在兩個實現類中……(想了半天也沒有說出好的方案)

其實這裏至少有兩個方案:

1)能夠再定義一個抽象類去實現這個接口,在抽象類中新增這個方法,而後其餘兩個實現類實現這個抽象類就行了。

2)使用 Java 8 中的新特性,在接口中新增默認方法或者靜態方法,能夠點擊這裏查看我三年前寫的這篇文章。三年前寫的比較粗,最近我又詳細梳理了一篇,關注公衆號Java技術棧第一時間推送。

因此,其實這裏我一方面是考一下他的設計能力,另外一方面我是想了解下他對 JDK 新特性各方面知識的應用和掌握。

還有更多設計方案,我這裏只列了兩種,若是你有更多更好的想法,能夠在下面參與討論或者加我微信(ID:xiaobaito)進行交流。

棧長: 好的,沒事,那你以爲你擅長的技術或者框架有哪一些呢?

面試者: 擅長的啊……(半天沒說出來一個)也沒什麼,就 Java 基礎方面還能夠吧!

棧長: Java 基礎能夠是吧,好吧,我問一些 Java 基礎方面的問題吧。請問:Java 接口和抽象類的區別是什麼?(其實就是上一題的答案)

面試者: 呃……(想了半天)好像是抽象類仍是接口裏面能夠寫實現方法的吧(不肯定的回答)

棧長: 究竟是哪一個能夠寫實現方法呢?

面試者: (左右搖頭,眼神飄浮不定,不說話了,場面再度陷入尷尬……)

棧長:(沒辦法,我要打破這個尷尬場面)你肯定是作過 Java 麼,這都是很是基礎的呀,感受你基礎也不是很好啊!

面試者: 哎,來這家公司面試沒作準備(一臉無奈)

棧長: 這樣啊,那建議你仍是回去好好準備一下吧,由於咱們這個崗位是須要有必定技術能力的,因此,很是很差意思……

面試者: 好的,我明白。

爲了避免浪費他的時間,我很是間接的告訴了他直接的結果了,說完而後他順溜的拿着他的包從洽談室出去了,頭也沒回。

結語

最後我把面試結論和領導說了,領導就說了一句:技術是提早。

第一次面試一個 39 歲的程序員,幹了 15 年,若是還要面試作技術+管理崗位,這個面試狀況確實不理想。也不知道他的真實經歷是啥?或許真該清楚認識下本身的定位。

從剛開始面試的時候有點慌,直到如今寫文章,我感受更慌了,日月如梭,我也快有這麼一天了,若是作不到中高層,我也要去和年輕搶飯碗,沒辦法,這是現實。

年紀來了,我感受我本身寫代碼確實也寫不太動了,人也變得愈來愈焦慮不安,能幹嗎去了?生意又不會作!

惟一能作的就是朝着自已指望的崗位或者目標不斷努力,不斷的提高本身的硬實力和基本功,越努力越幸運,只要這樣才能面對日益焦慮不安的本身,迎接將來更多的機會。

如今的不少年輕人很厲害啊,年輕有爲的很多,但有句話是怎麼說的,大器晚成,爲時不晚,這樣的例子也數不勝數,我想信,只要堅持學習,提高本身,總會有成功的那天。

最後,若是你喜歡我寫的面試系列的文章,也歡迎關注公衆號Java技術棧回覆 "面試" 閱讀我寫的往期面試系列文章。

本文只是表明我的觀點,不必定符合全部人,但不喜勿噴。寫這篇又幹了兩三小時,如覺有用,動動小手在看、轉發一下,感謝各位老鐵支持。

你們一塊兒加油,共勉!

近期熱文推薦:

1.Java 15 正式發佈, 14 個新特性,刷新你的認知!!

2.終於靠開源項目弄到 IntelliJ IDEA 激活碼了,真香!

3.我用 Java 8 寫了一段邏輯,同事直呼看不懂,你試試看。。

4.吊打 Tomcat ,Undertow 性能很炸!!

5.《Java開發手冊(嵩山版)》最新發布,速速下載!

以爲不錯,別忘了隨手點贊+轉發哦!

相關文章
相關標籤/搜索