前言
阿里媽媽我是提前批開始面試的,第一次發簡歷是2月7日,然後好像石沉大海了,2月27日又發了一次,這次有迴應了,開始面試。
一面 3.5 80分鐘
- 自我介紹
- 項目介紹
- java object方法
- euqals hashcode
- hashmap原理,線程安全嗎,如果要線程安全要用什麼,concurrenthashmp怎麼實現的,用的什麼鎖
- 線程和進程
- 內存區域,爲什麼有些是線程私有的
- 直接調run方法和使用start調run方法有什麼區別
- 如何實現你在手機上登了微信然後在電腦上登(實際上是個單點登錄問題)
- 如何提高數據庫的併發量(我說了一堆分佈式和緩存,結果他要問索引)
- 數據庫索引講一下
- b+樹索引和哈希索引的區別,使用場景
- 一個url到界面出現的過程
- dns解析的過程
- 項目的難點在什麼地方
- 項目是如何分工的,如何確定邊界
- 項目如何與他人合作的
- 你有博客嗎,給我康康
- 你最近關注的新技術是什麼
- 你看過什麼開源代碼
- 看開源給你帶來了什麼
- 你覺得什麼開源代碼寫得很巧妙
- 你怎麼提升自己的技術棧的
- zookeeper如何實現最終一致性的
- 還有什麼其他項目嗎
- 項目學到了什麼
- 還有其他項目嗎
- 怎麼實現多人合作編寫的
- 發一段你自己覺得寫的巧妙的代碼來
- 寫一個單例
- spring和springboot的區別
- spring的核心
- spring bean的生命週期
這一面算是簡歷面,問了很多基礎知識和項目相關,但也問了很多軟技能的東西,第一次碰見我答得一臉懵逼,題目中看到前後兩個題目領域不一樣就說明遇到我不會的了。
二面 3.13 80分鐘
- 自我介紹
- redis數據類型
- 跳錶
- spring,springboot區別
- spring中bean的好處,ioc
- spring爲什麼要用xml做配置
- 講講mvc
- 對model層的理解
- 講講併發編程
- synchronized和lock的底層實現
- Java線程和操作系統線程是一一對應的嗎
- https的安全是如何實現的
- 數據庫數據量大了之後如何做
- 如何設計一個淘寶庫存系統
- 可以只用redis不用數據庫嗎
- 項目,三十分鐘
這一面問了很多場景和設計題,還有一些奇奇怪怪的題目,很多都是開放性的,面試官說就是想探討下,所以大家遇到不會的問題不要慌,猜一猜也是好的,說說自己的思路,讓面試官看到你的思考,千萬不要直接來一句我不會。
三面 3.15 130分鐘
- 面向對象設計原則和設計模式,單例、責任鏈
- volatile在單例中的作用
- 如何實現內存屏障
- 類加載過程
- http和https的區別
- Http Header裏有什麼內容
- 瀏覽器輸入URL到頁面展示發生了什麼
- 爲什麼要有序列化、序列化的方法
- https如何實現加密,說具體過程,網絡分層和協議
- 數據庫的隔離級別、事務併發產生的問題、行級鎖表級鎖,舉例說明
- Spring中用到的設計模式
- Spring IOC和DI
- Spring AOP和動態代理、反射
- SpringBoot相比Spring有什麼區別和好處
- 數據庫裏innodb引擎默認的隔離級別,是否會產生幻讀問題?怎麼去避免幻讀問題?
- spring如何轉發請求,具體過程
- 請求到達一個集羣,怎麼被處理的
- springboot代碼裏讓請求知道去哪個controller
- springcloud,dubbo(都不會,就不問了)
- Java兩個線程修改數據庫,在不使用數據庫鎖的情況下怎麼確保數據併發訪問修改的安全.
- 算法題:有個1T的文件,內存放不下,有臺電腦,2T的硬盤。文件裏的內容是這樣的:每行都是個字符串,可能有中文的,英文的,等等。現在要找出出現頻次最高的10個字符串。時間複雜度是多少,如何考慮邊界情況。最後問我之前是不是看過這道題hh
- 講一個項目的業務價值,你的職責,學到什麼
- 性格缺點,爲什麼
- 性格優點
- 實習時間
- 哪裏人,多大,類似這種的hr面問題
這一面是我春招以來遇到的最長時間的一面了,面的我頭昏腦花,題目是後來回憶的,也記得不太清楚,總的來說就是問的很基礎,很細,很深入,大部分題目都是你平常在面經裏看到過的,但一個是量大,一個是細緻,面的還蠻困難的。
四面,交叉面 4.8 55min
- 自我介紹
- 項目介紹及項目相關問題
- 上大學做的比較好,比較差的事情
- 自己覺得失敗的事情
- 自己一直堅持的事情
- 性格的優點和缺點
- 覺得做錯了的決定
- 自己總結一下自己的技術,廣度和深度
- 最喜歡的一門課
- 規劃
交叉面大概就問了項目和一些人生問題,遇到的面試官比較好,沒有問太多技術問題,面試體驗還是很好的,但是等待體驗很難受,等了二十天左右,累了。
hr面 4.9 17:10-18:00
- 自我介紹
- 筆試做的有點差,覺得原因在哪
- 聊人生
- 後面可能會補一輪筆試
大部分都是人生題,然後因爲筆試做太差了說之後會補一輪筆試(我以爲我是20分,hr告訴我是15分hhh,雖然沒啥區別),部門內部還要排序,決定發不發offer。
總結
可以看到阿里就是非常注重項目和基礎,會問很多場景題,設計題,項目相關的問題,所以一定一定要有項目經歷(當然這是針對大部分崗位),還要對項目很瞭解。我覺得最難的就是他會問你高併發分佈式這種問題,作爲在校學生其實很少有實操這種項目的機會,只能按照自己的理解來回答。如果項目本身沒啥可說的,你就說說對項目未來的設想,在高併發,分佈式的情況下你會怎麼做這種,體現自己對於項目的思考。