進入BAT等主流網際網路公司做Java開發需要達到什麼技術水平?
最近面試了阿里、京東、美團、滴滴等大型網際網路公司,最終收到了美團offer,這次面試過後,我把面試過的公司的面試題做了一個整理。這篇文章是我憑回憶記錄的,面試題沒有順序,不分先後,接下來公佈我去阿里、京東、美團等一線網際網路公司的面試題:
一、阿里巴巴面試
1、開發中Java用得比較多的資料結構有哪些?
2、談談你對HashMap的理解,底層原理的基本實現,HashMap怎麼解決碰撞問題的?
這些資料結構中是執行緒安全的嗎?假如你回答HashMap是執行緒安全的,接著問有沒有執行緒安全的map,接下來問conurren包。
3、對JVM熟不熟悉?簡單說說類載入過程,裡面執行的哪些操作?問了GC和記憶體管理,平時在tomect裡面有沒有進行過相關的配置。
4、說一下http協議、get和post的基本區別,接著問tcp/ip協議,三次握手,視窗滑動機制。
5、開發中用了哪些資料庫?回答mysql;儲存引擎有哪些?然後問了我悲觀鎖和樂觀鎖問題使用場景、分散式叢集實現的原理。
6、springmvc和mybatis的工作原理,有沒有看過底層原始碼?
二、京東金融面試
1、Dubbo超時重試;Dubbo超時時間設定
2、如何保障請求執行順序
3、分散式事物與分散式鎖(扣款不要出現負數)
4、分散式session設定
5、執行某操作,前50次成功,第51次失敗a全部回滾b前50次提交第51次拋異常,ab場景分別如何設定Spring(傳播性)
6、Zookeeper有哪些用
7、JVM記憶體模型
8、資料庫垂直和水平拆分
9、MyBatis如何分頁;如何設定快取;MySQL分頁。
10、熟悉IO麼?與NIO的區別,阻塞與非阻塞的區別。
11、分散式session一致性
12、分散式介面的冪等性設計「不能重複扣款」
三、美團面試
1、最近做的比較熟悉的專案是哪個?畫一下專案技術架構圖。
2、JVM老年代和新生代的比例?
3、YGC和FGC發生的具體場景
4、jstack,jmap,jutil分別的意義?如何線上排查JVM的相關問題?
5、執行緒池的構造類的方法的5個引數的具體意義?
6、單機上一個執行緒池正在處理服務如果忽然斷電該怎麼辦?(正在處理和阻塞佇列裡的請求怎麼處理?)
7、使用無界阻塞佇列會出現什麼問題?
8、介面如何處理重複請求?
9、具體處理方案是什麼?
10、如何保證共享變數修改時的原子性?
11、設計一個對外服務的介面實現類,在1,2,3這三個主機(對應不同IP)上實現負載均衡和順序輪詢機制(考慮併發)
四、滴滴面試
1、自我介紹;技術特點
2、興趣是什麼;優勢是什麼
3、jvm、jre以及jdk三者之間的關係?
4、Dubbo的底層原理,Zookeeper是什麼
5、cincurrentMap的機制;TreeMap;Volatil關鍵字
6、快速排序;廣度優先搜尋(佇列實現)
7、快取的雪崩以及穿透的理解?
8、HashMap的key可以重複嗎?
9、synchronized和lock的區別?
10.開發一個大型網站你會考慮哪些問題?
以上就是全部的面試題目,針對以上知識點,結合當前網際網路公司的技術需求及主流技術,我整理了一套系統的架構技術體系。不少公司很重視高併發高可用的技術,特別是一線網際網路公司,分散式、JVM、spring原始碼分析、微服務等知識點已經是面試的必考題。這些東西可能你們平時在工作中接觸過,但是缺少全面系統的學習,希望對正在面試的朋友或是遭遇技術瓶頸的程式設計師們提供一點思路。
架構築基篇
效能優化如何理解
常用工具調優
linux基礎與進階
開源框架篇
Sprng5框架
AOP原始碼解析
Mybatis
IOC原始碼解析
Spring MVC
高效能架構篇
分散式架構思維
分散式協調和分流
高可靠資料儲存
快取和NoSQL
非同步與訊息中介軟體
分散式解決方案實戰
微服務架構篇
SpringBoot
SpringCloud
Docker虛擬技術
Dubbo應用及原始碼解讀
團隊協作開發篇
Git
Maven
Sonar
Jenkins
B2C商城專案實戰篇
系統設計
使用者管理子系統
搜尋子系統
訂單子系統
商品管理子系統
支付系統
後臺系統
分散式排程系統
歡迎工作一到五年的Java工程師朋友們加入Java填坑之路:860113481
群內提供免費的Java架構學習資料(裡面有高可用、高併發、高效能及分散式、Jvm效能調優、Spring原始碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)合理利用自己每一分每一秒的時間來學習提升自己,不要再用”沒有時間“來掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來的自己一個交代!
相關文章
- 做Java開發2w月薪,需要技術水平達到什麼程度?Java
- 在一線城市做Java開發如何月薪達到兩萬,需要技術水平達到什麼程度?Java
- 為什麼有些網際網路公司體量大,技術差?
- 千億美金俱樂部的網際網路公司在想什麼?做什麼?
- 做Java開發需要哪些技術?Java
- 月薪兩萬的Java工程師需要達到什麼水平?Java工程師
- 阿里、京東、美團等主流網際網路公司的最新招聘標準阿里
- 學習網路安全技術可以做什麼?網路安全基礎
- 阿里、京東、美團等主流網際網路公司的最新面試題出爐阿里面試題
- 網際網路公司裡技術團隊的部落格
- 網際網路公司需要什麼樣的計算機專業應屆生?計算機
- 我們需要選擇網際網路自動技術嗎
- 網際網路創業公司的技術團隊構建創業
- Facebook和SpaceX等科技公司競相發展太空網際網路
- 網際網路公司為什麼普遍996而不是666?996
- 網際網路從此沒有 BATBAT
- 10年網際網路開發者告訴你自學 Java 怎麼入門?Java
- 廣東省網際網路發展水平報告
- 訪問網際網路時發生了什麼?
- [網際網路]網際網路公司的種類
- 與頂級網際網路公司技術大佬面對面聊聊RocketMQMQ
- 大型網際網路公司網站架構背後的基礎技術2019網站架構
- 知名網際網路公司校招 Java 開發崗面試知識點解析Java面試
- 網際網路的寒冬下各大一線網際網路公司還在用SpringBoot這是為什麼?Spring Boot
- 網際網路公司網路堡壘機首選哪家品牌?有什麼優勢?
- 巨人網路釋出海外新品牌ZTimes,用網際網路3.0技術做遊戲遊戲
- 美團上位,網際網路再無BATBAT
- GITC2016全球網際網路技術大會召開銳捷網路揭示網際網路+“源動力”Git
- 做網站前需要準備什麼網站
- 重生網路技術有限公司
- 想參加工作需要學習Java到什麼水平?Java
- “網際網路+政務”是什麼?
- mysql 為什麼很多網際網路公司選擇了讀可提交MySql
- 什麼是網路安全?網路安全防範技術包括哪些?
- 進入到一家軟體公司之後要開發什麼
- 各大網際網路公司架構演進之路彙總架構
- 網路地址轉換(NAT)技術是否拖慢了網際網路發展?
- Token技術有什麼優勢?網路安全基礎入門