有機會還是多出去面試吧!不面?你永遠不知道自己菜在哪!

yilian發表於2020-02-14

前言

去年參加大大小小的面試估計也有幾十場,有幾萬人的大網際網路,也有幾百人、幾十人的小公司,收穫還是挺多的,不僅激勵自己學習,更新自己,也知道了自己很多不足之處。

面試差不多是一個:學習--檢驗--再學習、總結--再檢驗(再學習、總結--再檢驗)--最終拿到滿意offer(選擇offer)的過程。

如果有時間、有機會還是可以多出去面面,即使有時候需要請假,還是值得的。這一天就算自己給自己發工資、自己給自己投資。

有機會還是多出去面試吧!不面?你永遠不知道自己菜在哪!

下面就自己的面試感悟,說說面試的好處:

1、知道現在自己所在行業,大家都關注什麼

一般面試官問的問題50%以上代表這個行業大家關注的點。

比如android前幾年特別愛問自定義view、XX原始碼、外掛化、熱更新、apk瘦包等,但後來發現apk瘦包都成標配了,大家不愛問了。

現要可能愛問的是元件化、效能最佳化、音影片等相關的。

2、知道自己的盲點,去盲點化

當問到不會的,說明是自己的盲點,盲點不可怕,可怕的是你明明知道盲點了,還不去努力解開盲點。一般遇到不會的,需要我們回來再努力充電,努力讓自己知道。

比如之前別人問到關於自定義gradle外掛、埋點、httpdns等等相關的知識點,這些之前我確實沒有接觸過,確實是我的盲點。我一般會先看幾篇相關部落格入入門,再自己寫幾個demo,總結總結, 這樣這些知識點就不再是我的盲點,基本對於應付普通面試是沒有問題的。

3、瞭解自己的認可度,激勵自己不斷的學習、不斷去更新自己

一直在一家公司待太久,容易懈怠,人處在舒適區久了,鬥志也慢慢沒了。在年輕的時候,若不抓緊時間學習,老來學起來可能更難了。不管是記憶力、理解力、精力、專注力等,不經常段煉這些能力應該會隨著年紀變大,越變越弱的。

如果一直是在做有挑戰性工作或者自己所做的工作是無可替代的,那還好一點,前者至少可以保證自己一直在學習、更新,後者則自己掌握了一門獨門秘絕,足以支撐餘生。

但一般人的現狀可能更多是吃老本,可能你在現在公司是老人,有絕對優勢,但很可能去另外一家公司就什麼都不是了。還有可能你所做的工作隨便一個小兵學個一年半載就可把你替代掉了,如果你要的工資比小兵高,到時公司可以隨便找個藉口把你最佳化掉的。所以時時都要有危機意識。

社會是進步的,新技術總是層出不窮,我們不大可能像以前電工一樣,掌握一門技術能幹到死,不怕別人搶飯碗。現在時不時出一些新技術、新語言,我們不大可能出個新點就去學習,但至少要知道,要去了解行業動態,時不時更新自己。

出去面試,就能知道自己現在掌握的知識,別人認可度有多少,同行業其他公司現在都在研究什麼,關注什麼,自己不會的或是不知道的要及時學習,更新自己。

有機會還是多出去面試吧!不面?你永遠不知道自己菜在哪!

4、擁有和其他人(更牛的人)一起交流或是討論問題的機會

程式設計師一般工時都比較長,很少有機會和同行業其他人一起交流,雖然透過部落格、社群、公眾號之類的,也能和一些同行業人交流,但還有很大一部分人你是完全沒有機會碰到的。有些東西你可能看了,但都是點式或是片斷式,可能無法串成一條線。而去面試,面試官一般問問題都是由淺入深,你會發現有些問題,自己當時可能沒想明白,經面試官一提點,會有種豁然開朗、“原來如此”的感覺。

比如當時別人問我:類的靜態方法能不能被重寫?我當時其實不是很確定,別人一問,你瞭解多型麼?我一下子明白了,靜態方法屬於類屬性,無需建立物件,是放在棧中,而多型是執行時才表現出來的特性,根據建立物件所屬型別不同而表現出來,重寫所需要的“物件所屬型別”這一要素不存在,所以靜態方法無法被重寫。這樣我對這個知識點不僅知道是什麼,還知道為什麼了。

去面試還有機會一睹真人,和同行業其他比自己牛的人交流,也能學到不少東西,他們考慮問題的深度、說話的條理性、邏輯性等,有很多可借鑑的地方。有時自己不懂的知識點,有些面試官還會給講解下,比自己整一天,可能作用都大。

利用好面試那一小時,可能還能讓自己的認識理念、觀念得到改變。

5、反思自己面試中的不足

面試過程中閒聊時,可能一些非技術問題,自己也會被暴露出很多問題來,之前自己沒當回事,後來跟朋友聊天,才發現自己傻。

比如HR問我,面完了你一會回哪,我說回公司吧,人問你請假了還是直接過來的,我說吃完中飯直接過來的(沒請假)。HR說你們工作是比較清松麼,我說還好。這表現出什麼來,我現在的公司能想出來就出來,輕鬆,我不請假就直接出來,只是上下班去打個卡,那HR會不會認為我以後去他們公司,也是常常翹班呢?所以以後直接說自己請假了就好了,不要那麼率真。。

比如某面試官問我,你們使用者量有多少?DAU有多少?因為我們app是to B的,所以使用者量並不多,但又怕別人覺得我做的app很爛,結果我瞎編了個千萬使用者,結果面試官說下載看看,我一看我們那市場安裝量都不到1萬,露餡了不說,面試官可能還會因此覺得我這個人不誠實,甚至反思我的人品。其實可以說我們產品還沒開發多久,還在打磨中;或者說這些資料,是公司機密,不讓往外說;或者說這些資料掌握在同事手裡,自己不大清楚...

雖然這些都是小問題,而且一般這些不會影響最終結果,但如果面試官正好看重這個,那很可能就和此offer無緣了。


有機會還是多出去面試吧!不面?你永遠不知道自己菜在哪!

6、查漏補缺

有些東西自以為知道了,瞭解了,但根本經不起推敲。就像我們們寫文章時,還可能各種語句不通、錯別字問題。面試時,你會發現明明某些知識點自己好像知道,但經別人一問,好像又答不大上來,或者不能很有條理、很有邏輯的說出來。

比如別人問我知道一些常用的設計模式吧,你把你們專案中用到的設計模式用類圖(UML)畫出來吧。一下子蒙B了,當時大腦跟短路了一樣,反正畫得很爛,後來我回來閉眼根據我們現在的工程,畫了一個邏輯很完善的類圖,可惜我面試已經過去了。

或者別人問迭代器模工和for迴圈有什麼區別,什麼時候會用到策略模式。。。

透過上面的問題,說明我對一些知識點掌握得還不夠好,經不起推敲,回來自己鞏固,知識的深度和廣度都得到了提高。

7、學會面試官思維

對於一個知識點,要從:是什麼、為什麼、如果...會怎麼樣、它和XXX有什麼區別和聯絡、假如要你實現你會怎麼實現...等各種方面去想。

比如對於ViewStub它是佈局最佳化中用到的一個view元件。

問:它為什麼能起到佈局最佳化效果。

答:它一開始不顯示,只有調inflate或是setVisibility(View.VISIBLE)才顯示。

問:它為什麼能一開始不顯示?

答:因為ViewStub也是繼承自view的,它的onDraw方法是空實現,一開始並沒有進行繪製。onMeasure方法,它的寬高直接設定為0,也沒有進行測量。

問:如果在ViewStub裡也寫控制元件的寬高,在ViewStub對應的xml檔案裡也寫控制元件的寬高,會以哪個為準?

答:....

問:ViewStub裡的XML檔案可以用merge麼?為什麼?

答:...

問:呼叫ViewStub的inflate方法可不可以?為什麼?

答:...

....

總結:

面試是一個不斷學習、不斷自我提升的過程,有機會還是多出去面面比較好,至少能想到查漏補缺效果,而且有些知識點,可能你自以為知道,但讓你說,並不一定能說得很好。

有些東西有壓力才有動力,而學到的知識點,都是錢(因為技術人員大部分情況是根據你的能力來定級、來發薪水的),技多不壓身。

附上我的面試各大專題整理:面試指南
嘻嘻,可以關注我,vx:xx13414521贈送。

有機會還是多出去面試吧!不面?你永遠不知道自己菜在哪!

大家如果有啥好建議,面試的好處,也可以評論回覆哈,我補充,謝謝〜〜〜

推薦閱讀: 金三銀四,收下這份最全安卓開發面試指南!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952849/viewspace-2675648/,如需轉載,請註明出處,否則將追究法律責任。

相關文章