今天5點(diǎn)半接到一個(gè)杭州的電話,是螞蟻金服打來的,當(dāng)時(shí)心里一陣發(fā)慌,由于還在上班,就和面試官約定6點(diǎn)下班之后再來。掛完電話,心里忐忑的不行,感覺自己這也沒準(zhǔn)備好,那也沒準(zhǔn)備好。剩下半個(gè)小時(shí)完全沒有心思再工作了,把常問的HashMap,concurrentHashMap底層看了一下,算是臨時(shí)抱佛腳吧。一下班,就收拾出發(fā)在公司樓下找了個(gè)地方等面試電話。
沒一會(huì)兒,電話如期而至。先是聊了下大概情況,然后聊了下工作經(jīng)歷。叫我挑選一個(gè)自己覺得掌握的最好的項(xiàng)目開始發(fā)問。
最開始問了你覺得項(xiàng)目中最難的地方,自己因?yàn)楫厴I(yè)了一直在小公司,也沒有感覺遇到特別困難的地方,憋了半天憋不出來。面試官也放棄了,直接問,項(xiàng)目中用到Map集合吧,用到過哪些Map。自己就說了個(gè)最熟悉的HashMap。但是面試官好像不太想問這個(gè),又問有沒有用到過排好序的Map,當(dāng)時(shí)自己腦子短路了,沒想到TreeMap是排序的,當(dāng)時(shí)竟然一時(shí)想不出有排好序的Map,就說了沒有排好序的Map,但是可以實(shí)現(xiàn)Compareble接口來實(shí)現(xiàn)排序??隙嬖嚬僖埠軣o語,這送分題都不會(huì)??!然后又問HashMap put方法的時(shí)間復(fù)雜度,我說因?yàn)镠ashMap底層是數(shù)組加鏈表實(shí)現(xiàn)的,如果沒有hash碰撞時(shí)間復(fù)雜度就是O(1),有碰撞最壞情況就是O(n)。然后看到我建立上有寫線程池,就問了下創(chuàng)建線程池的具體參數(shù)的含義,這個(gè)沒啥難的,然后又問線程池的緩存隊(duì)列,然后又問是否自己去實(shí)現(xiàn)過緩存隊(duì)列。最后一問完全不知道咋回答,因?yàn)槠綍r(shí)都是直接使用現(xiàn)成的。然后繼續(xù)發(fā)問,問了下JDK bin目錄下的工具除了java javac還有沒有用過其他的。我心里想,面試官啊,你把我用過的工具都說完了。然后就只有說沒有使用過。自然又是跳過。然后又問項(xiàng)目除了開發(fā),有沒有用到優(yōu)化方面的。我想肯定是想問JVM方面的了。就說了下自己在測(cè)試環(huán)境服務(wù)老是啟動(dòng)沒多久就掛了,自己調(diào)整了下堆內(nèi)存的大小。其實(shí)當(dāng)時(shí)只是試探性的加大了堆內(nèi)存,根本沒有怎么去分析過。然后面試官問,你是根據(jù)什么覺得要去調(diào)整堆內(nèi)存大小的,自己當(dāng)時(shí)就慌了,因?yàn)闆]有實(shí)際做過,所以就說自己在啟動(dòng)項(xiàng)目的時(shí)候加了輸出GC日志的命令,看到有很多Full GC,所以就調(diào)整了。感覺面試官不是很滿意。然后又問我你知道JVM垃圾回收機(jī)制嗎?自己其實(shí)對(duì)JVM垃圾回收這一塊還是挺熟悉的,但是這么一問自己一時(shí)不知道怎么回答,就把垃圾收集器說了一下,但是感覺不是很對(duì)。后來回來百度JVM垃圾回收機(jī)制,感覺都有說到JVM內(nèi)存結(jié)構(gòu),對(duì)象可達(dá)性分析,垃圾回收算法,垃圾回收器都有講到。其實(shí)自己這塊挺熟悉的,但是一籠統(tǒng)的問JVM垃圾回收機(jī)制當(dāng)時(shí)一直在想我該回答哪一塊的內(nèi)容。最后面試官問了如果你要讓現(xiàn)在做的項(xiàng)目更好,你回添加一些什么功能。但是自己想了半天也不知道如何回答。面試官應(yīng)該也很無語,但是不得不說面試官全程都是態(tài)度非常好,電話面試都能感受到面試官是一個(gè)又謙虛又有真才實(shí)學(xué)的人。給了我很多建議,說我們程序員一定要一直保持學(xué)習(xí),要多學(xué)習(xí)底層方面的東西。其實(shí)自己也很想學(xué)習(xí)底層的東西,但是底層的確實(shí)要難很多,很多書看不動(dòng),還是要繼續(xù)努力才行啊。面試官說,如果有下一步會(huì)發(fā)郵件,叫我注意關(guān)注下。
這次面試雖然表現(xiàn)很差,但是還是讓我獲益很多。我知道大的公司都喜歡面試底層,所以自己也對(duì)底層有過一些關(guān)注,在網(wǎng)上看到都會(huì)問HashMap , concurrentHashMap所以對(duì)這兩個(gè)的底層是看了又看,特別是concurrentHashMap的實(shí)現(xiàn)1.8之前怎么實(shí)現(xiàn),1.8之后怎么實(shí)現(xiàn)都做了很深的了解,然而今天并沒有被問到。連簡單的TreeMap都忘了,也是自己平時(shí)沒怎么使用。平時(shí)的業(yè)務(wù)確實(shí)也沒有涉及到。還有自己對(duì)自己做的項(xiàng)目完全沒有一個(gè)總結(jié),面試官問的關(guān)于自己項(xiàng)目的問題自己都回答的簡直像坨翔一樣。更深的感覺就是不管是什么東西,一定要自己動(dòng)手去敲,去實(shí)現(xiàn),這樣面試官問你你才能完完全全的回答出來,而不是去背書,背書的話隨便拐彎問兩下你就現(xiàn)原形了。
接下來,總結(jié)項(xiàng)目,根據(jù)項(xiàng)目用到的技術(shù)復(fù)習(xí)吧。螞蟻金服是真看中基礎(chǔ),面試了半個(gè)多小時(shí),完全沒有問一道框架方面的問題,我還以為會(huì)問Spring,Springboot相關(guān)的,然而一道題都沒有,也不知道是不是因?yàn)樽约呵懊婊A(chǔ)知識(shí)回答得確實(shí)太差了,已經(jīng)不想再問框架的了。面試了這一次也好,也知道該怎么準(zhǔn)備了,接下來就是好好努力,努力看書,努力敲代碼了。以后爭取每一個(gè)知識(shí)點(diǎn)都自己去用代碼敲出來,直到把鍵盤敲爛為止。
-
工程師
+關(guān)注
關(guān)注
59文章
1603瀏覽量
71034 -
JAVA
+關(guān)注
關(guān)注
20文章
3001瀏覽量
116444
發(fā)布評(píng)論請(qǐng)先 登錄
電子工程師的雙標(biāo)瞬間 #電子 #電子愛好者 #電子工程師 #揚(yáng)興科技 #雙標(biāo)
什么是BSP工程師
繡花線上的數(shù)據(jù)紐帶:一位工程師的PROFIBUS轉(zhuǎn)RS485改造手記
想成為硬件工程師?我教你??!你得先學(xué)會(huì)這些...... #硬件工程師 #電子工程師 #電子愛好者 #電子行業(yè)
人工智能工程師高頻面試題匯總:循環(huán)神經(jīng)網(wǎng)絡(luò)篇(題目+答案)
硬件工程師面試必會(huì):10個(gè)核心考點(diǎn)#硬件設(shè)計(jì) #硬件工程師 #電路設(shè)計(jì) #電路設(shè)計(jì)
電子發(fā)燒友工程師看!電子領(lǐng)域評(píng)職稱,技術(shù)之路更扎實(shí)
硬件工程師看了只會(huì)找個(gè)角落默默哭泣#硬件工程師 #MDD #MDD辰達(dá)半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師
硬件工程師面試/筆試經(jīng)典 100 題
長沙怎么這么難招硬件工程師呀
一位老電子工程師的十年職場(chǎng)感悟
一位Java工程師的電話面試經(jīng)歷
評(píng)論