20+家互聯網面試總結,在互聯網寒冬時助你突破重圍,不如趁這個假期狂補一下

這是我當時約面試的時間表,其實面試多了你會發現一個規律,如果一個公司你一面過的很順利,後面不管三面四面還是五面,都會比較順利。因爲大家的提問方式,角度都很類似,很多時候都是在跟不同的面試官說同樣的話。多數的公司總體上面試都是以自我介紹+項目介紹+項目細節/難點提問+基礎知識點考覈+算法題這個流程下來的。有些公司可能還會問幾個實際的場景類的問題,這個環節阿里是必問的,這種問題通常是沒有正確答案的,就看個人的理解,個人的積累了。剩下的就沒啥了,都是換湯不換藥,聊項目就看你自己對你自己的項目是否理解的透徹,比如經常問你你爲什麼選擇這個技術,爲什麼這麼處理之類的,常考的基礎的知識點就那麼多,最後算法就是靠刷題。​這篇我主要把常考的問題po一下,頻率出現過高的我都用(必考)標註了,答案我也整理了,但是整理的不夠好,怕誤導大家,我放到github上大家的自行查看(不保證正確性),這也是我做LeetCode的倉庫,也包括一些LeetCode高頻題的分類整理。

ZooKeeper1. CAP定理2. ZAB協議3. Leader選舉算法和流程Redis1. Redis的應用場景2. Redis支持的數據類型(必考)3. zset跳錶的數據結構(必考)4. Redis的數據過期策略(必考)5. Redis的LRU過期策略的具體實現6. 如何解決Redis緩存雪崩,緩存穿透問題7. Redis的持久化機制(必考)8. Redis的管道pipelineMysql1. 事務的基本要素2. 事務隔離級別(必考)3. 如何解決事務的併發問題(髒讀,幻讀)(必考)4. MVCC多版本併發控制(必考)5. binlog,redolog,undolog都是什麼,起什麼作用6. InnoDB的行鎖/表鎖7. myisam和innodb的區別,什麼時候選擇myisam8. 爲什麼選擇B+樹作爲索引結構(必考)9. 索引B+樹的葉子節點都可以存哪些東西(必考)10. 查詢在什麼時候不走(預期中的)索引(必考)11. sql如何優化12. explain是如何解析sql的13. order by原理JVM1. 運行時數據區域(內存模型)(必考)2. 垃圾回收機制(必考)3. 垃圾回收算法(必考)4. Minor GC和Full GC觸發條件5. GC中Stop the world(STW)6. 各垃圾回收器的特點及區別7. 雙親委派模型8. JDBC和雙親委派模型關係9. JVM鎖優化和鎖膨脹過程Java基礎1. HashMap和ConcurrentHashMap區別(必考)2. ConcurrentHashMap的數據結構(必考)3. 高併發HashMap的環是如何產生的4. volatile作用(必考)5. Atomic類如何保證原子性(CAS操作)(必考)6. synchronized和Lock的區別(必考)7. ThreadLocal的原理和實現8. 爲什麼要使用線程池(必考)9. 核心線程池ThreadPoolExecutor的參數(必考)10. ThreadPoolExecutor的工作流程(必考)11. 如何控制線程池線程的優先級12. 線程之間如何通信13. Boolean佔幾個字節14. jdk1.8/jdk1.7都分別新增了哪些特性15. Exception和Error16. Object類內的方法Spring1. Spring的IOC/AOP的實現(必考)2. 動態代理的實現方式(必考)3. Spring如何解決循環依賴(三級緩存)(必考)4. Spring的後置處理器5. Spring的@Transactional如何實現的(必考)6. Spring的事務傳播級別7. BeanFactory和ApplicationContext的聯繫和區別其他1. 高併發系統的限流如何實現2. 高併發秒殺系統的設計3. 負載均衡如何設計補充另外還會考一些計算機網絡,操作系統啊之類的。像消息隊列,RPC框架這種考的比較少。計算機網絡就是分層啊,tcp/udp啊,三次握手之類的。操作系統就是進程與線程啊,進程的數據結構以及如何通信之類的。數據結構的排序算法也比較常考,考的話一定會讓你手寫個快排。剩下的算法題就靠LeetCode的積累了。其實非算法崗考的算法題都蠻簡單的,很多題完全就是考察你智力是否正常,稍微難點的涉及到一些算法思想的按照LeetCode題目類型的分類,每種題做一兩道基本就能完全應付面試了。

 

 

 

面試感受及評價除了外企,體驗最好的就是阿里。絕對的脫穎而出,無論是面試官的專業程度還是面試官對參與面試人員的態度都完全突出於其他公司。非常尊重人,以及會引導我去作出正確的回答,唯一就是阿里的HR是非常強勢的,永遠有一票否決權。另外說明一下,年前的阿里是可以同時面多個部門的,用他們的話說:沒事,我們偷偷的面。年後就不行了。而有些公司面試官會故意誤導你,想方設法讓你說出錯誤的答案,並且有些態度極其傲慢,讓人感覺很不尊重人。這裏點名批評面試體驗最差的兩家公司:美團和Boss直聘。外企的話,體驗都很好。微軟是英文面的,亞馬遜不是。這倆都是以算法爲主,微軟除了算法還聊了操作系統和計算機網絡,亞馬遜聊了較長時間的項目細節。

另外除了技術,你所接觸的業務也是面試中對方比較在乎的點,換句話說你的業務也限制了你的發展。比如一個高德地圖的開發去面百度地圖肯定是比較好過的。像我這種做toB業務的去面toC業務的崗,除非技術很拔高,不然很難過。

最後最後說下自己的情況,17年在京東實習,19年7月離職。正式工作時間很短,就一年(算實習兩年),而且19年有半年的時間準備考研所以有半年的空檔期,這也是爲什麼我被很多HR掛了的原因。雖然Offer沒拿幾個,但是一半多都面到HR面了,所以對於兩三年經驗的感覺整理的問題還是比較有代表性的。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章