瞎扯兩句
我想,很多人和我一樣在煎熬中度過著2020年,也經歷了不少困難,隨著國家對疫情的控制,網際網路行業又重新迎來了生機。
就像標題說的,我在2021年1月18號拿到了阿里Java研發崗的offer,也算是正式提桶進大廠的打工人了。於是乎,我想把我的經歷分享給大家,希望你們在金三銀四這個跳槽旺季找到一份更滿意的工作!
面試結束後我大概總結了一下,發現還是準備不夠充分,基本上全靠自己平時的積累才僥倖透過。因此,我建議大家平時一定要養成學習的習慣,哪怕只花30min,日積月累總會有收穫;其次,提前兩個月的時間做好充分的準備,最好不要臨時抱佛腳。
深夜“食堂”
阿里系的lazada一面現場(50min)①sync的底層實現,鎖最佳化,和lock的對⽐等
②jvm引數調優詳細過程,到為什麼這麼設定,好處,⼀些gc場景,如何去分析gc⽇志
④執行緒池引數設定,為什麼這麼設定,有什麼作⽤?7⼤引數
⑤spring的迴圈依賴如何解決?為什麼要三級快取?
⑥優先順序佇列的底層原理?
⑦演算法題:k路連結串列歸併
⑨ConcurrentHashMap的底層實現原理
⑩你線上問題解決經驗是什麼?遇到了什麼問題?應該怎麼去解決?
小結:一面主要是以基礎為主,基本上會扣住你的專案來問,演算法基本上必問了
阿里二面現場(60min)①spring的作⽤、spring迴圈依賴怎麼解決(說出三級快取原始碼細節)、spring aop原理(動態代理)、spring bean⽣命週期(原始碼細節,以及各個位置的設計思路,有什麼可擴充套件的)
②結合你項⽬問你如何設計,提出漏洞,你怎麼解決?如何改進,萬⼀掛了?加⼀臺機器有沒有問題?如果我⾮要不出問題怎麼辦?
④怎麼保證介面的冪等性?
⑤mysql的儲存引擎的資料結構是什麼?相比其餘的資料結構,有什麼優缺點?
⑥經典智力題:賽馬找最快
⑦最近讀了什麼書?平時怎麼學習?
小結:基本上以設計問題為主,回答得還算滿意
阿里三面現場(90—120min)①tcp協議和uDP 協議的區別是什麼?
②3次握手和4次揮手的過程是什麼樣的?
④springCloudbus 關聯的訊息中間有幾種?支援哪幾種?你覺得什麼場景下,會用到springCLoudBus?
⑤springCloud裡面的限流,限流是怎麼內部實現的?怎麼去擋住多餘的請求,怎麼實現限流的(執行緒池的工作原理)?
⑥什麼時候該用mongoDB,什麼時候使用mysql?該如何選擇?
⑦你做過的專案資料量有多大呢?如果現在資料量特別大,或者一張表一種放不下了,應該怎麼處理?分佈分表應該怎麼做?具體的某一張表怎麼拆?(涉及到主鍵生成,各種主鍵生成策略對比,資料分片,以及關聯資料的儲存,主從複製)
⑨你們使用的Java版本是什麼?Java最新的版本是多少?你們為什麼還在使用Java8呢?
⑩你們的垃圾回收器是什麼的? 為什麼是使用CMS而不是G1? 你能介紹一下像CMS垃圾回收器,從物件建立,記憶體分配到垃圾回收整個過程嗎?
⑪介紹一下策略模式,應該怎麼用? 它能解決什麼問題?從編碼領域系統設計方,介紹一下我們怎麼去實現一個策略模式?
①貼一個舉例子:請做一個自我介紹
這道面試題是大家在以後面試過程中會常被問到的,那麼我們被問到之後,該如何回答呢?是 說姓名?年齡?還是其他什麼?
最佳回答提示:一般人回答這個問題往往會進入誤區,回答的過於平常,只說姓名、年齡、愛好、工作經驗等, 但是你們想到沒有,其實這些資訊你的個人簡歷上都有,那麼面試官還問你幹什麼?其實,面試官最希望知道的是求職者能否勝任這份工作,包括:最強的技能、最深入研究的知 識領域、個性中最積極的部分、做過的最成功的事,主要的成就等,這些都可以和學習無關,也可以和學習有關,但一定要突出積極的個性和做事的能力,說得合情合理企業的面試官才會相信。企業很重視一個人的禮貌,求職者要尊重面試官,在回答每個問題之後還可以加一句“謝謝”, 企業喜歡有禮貌的求職者。切記:回答面試官問題的時候一定要回答的自然,有底氣,否則你給面試官留下一個“假”的印象。
最後的內容[中國贊]在開頭跟大家分享的時候我就說,面試我是沒有做好準備的,全靠平時的積累,確實有點臨時抱佛腳了,以至於我自己還是挺懊惱的。(準備好了或許可以拿個40k,沒做準備只有30k+,你們懂那種感覺嗎)
如何準備面試?
1、前期鋪墊(技術沉積)
程式設計師面試其實是對於技術的一次摸底考試,你的技術牛逼,那你就是大爺。大廠對於技術的要求主要體現在:基礎,原理,深入研究原始碼,廣度,實戰五個方面,也只有將原理理論結合實戰才能把技術點吃透。
Java程式設計師必看《Java開發核心筆記(華山版)》Redis學習筆記Java併發程式設計學習筆記四部分,詳細拆分併發程式設計——併發程式設計+模式篇+應用篇+原理篇
Java程式設計師必看書籍《深入理解 ava虛擬機器第3版》(pdf版)大廠面試必問——資料結構與演算法彙集筆記其他像Spring,SpringBoot,SpringCloud,SpringCloudAlibaba,Dubbo,Zookeeper,Kafka,RocketMQ,RabbitMQ,Netty,MySQL,Docker,K8s等等我都整理好,這裡就不一一展示了,有需要的私信【666】打包帶走吧!
2、狂刷面試題
①大廠高頻45道筆試題(智商題)
②BAT大廠面試總結(部分內容截圖)
3、結合實際,修改簡歷
程式設計師的簡歷一定要多下一些功夫,尤其是對一些字眼要再三斟酌,如“精通、熟悉、瞭解”這三者的區別一定要區分清楚,否則就是在給自己挖坑了。當然不會包裝,我可以將我的簡歷給你參考參考,如果還不夠,那下面這些簡歷模板任你挑選:
以上分享,希望大家可以在金三銀四跳槽季找到一份好工作,但千萬也記住,技術一定是平時工作種累計或者自學(或報班跟著老師學)透過實戰累計的,千萬不要臨時抱佛腳。
另外,面試中遇到不會的問題不妨嘗試講講自己的思路,因為有些問題不是考察我們的程式設計能力,而是邏輯思維表達能力;最後平時要進行自我分析與評價,做好職業規劃,不斷摸索,提高自己的程式設計能力和抽象思維能力。