今天的主人公是一個(gè)雙非末流一本来屠,大三虑椎,CS專業(yè),有百度實(shí)習(xí)經(jīng)歷
前言
先解釋一下十面阿里俱笛,總共分為阿里云四面捆姜,螞蟻兩面,菜鳥(niǎo)四面迎膜;七面頭條分為金融三面娇未,抖音一面,效率工程三面星虹;六個(gè)Offer分別是阿里零抬、騰訊、頭條宽涌、華為平夜、蘑菇街、三七互娛卸亮。
從二月份看到阿里云的招聘貼就投了忽妒,那是我最早投遞的公司,當(dāng)時(shí)也沒(méi)什么經(jīng)驗(yàn)兼贸,導(dǎo)致表現(xiàn)得很糟糕段直,最后四面跪,當(dāng)時(shí)傷心到谷底溶诞,幸好跪得比較早鸯檬,跪了之后簡(jiǎn)歷被釋放掉,還可以繼續(xù)內(nèi)推螺垢。整個(gè)春招持續(xù)了4個(gè)月喧务,對(duì)自己意志也是一個(gè)很大的挑戰(zhàn)赖歌。我也有幸能與那么多優(yōu)秀的人一起并肩作戰(zhàn),讓我堅(jiān)持到最后一刻功茴,感謝有你們庐冯。
這個(gè)春招也遇到了很多奇怪的公司,比如說(shuō)美團(tuán)不知為何不給內(nèi)推坎穿,CVTE筆試刷掉有實(shí)習(xí)經(jīng)歷的展父,吉比特掛得莫名其妙,網(wǎng)易玄學(xué)招人玲昧,京東20分鐘面試栖茉,華為聊天招人
結(jié)果
以下的就是面經(jīng)
阿里巴巴
一面(36分鐘)芝麻信用
1.hashmap和hashtable區(qū)別
2.為什么產(chǎn)生死鎖
3.jvm類加載
4.java反射獲取私有屬性,改變值
5.反射用途
6.所用數(shù)據(jù)庫(kù)
7.項(xiàng)目難點(diǎn)酌呆,問(wèn)題
8.如何解決項(xiàng)目中遇到的問(wèn)題
9.項(xiàng)目中遇到最自豪的地方
10.會(huì)什么算法
二面(44分鐘)支付寶創(chuàng)新
1.講項(xiàng)目
2.數(shù)據(jù)庫(kù)樂(lè)觀鎖使用
3.狀態(tài)機(jī)
4.如何解決狀態(tài)機(jī)不對(duì)問(wèn)題
5.如何分庫(kù)分表
6.MySQL極限
7.HashMap源碼
8.設(shè)計(jì)一個(gè)線程安全的HashMap
9.快排的實(shí)現(xiàn)衡载,時(shí)間復(fù)雜度和空間復(fù)雜度
10.會(huì)什么算法
11.如何把項(xiàng)目變成SOA架構(gòu)
12.Spring源碼搔耕,最深刻的模塊隙袁,aop用途
13.JVM內(nèi)存模型
14.垃圾回收機(jī)制
15.項(xiàng)目中查看垃圾回收
三面(33分鐘)菜鳥(niǎo)國(guó)際
1.項(xiàng)目中的權(quán)限管理
2.登錄狀態(tài)如何儲(chǔ)存
3.session和cookie的區(qū)別,session如何管理
4.HashMap底層結(jié)構(gòu)
5.synchronized關(guān)鍵字的用法
6.synchronized修飾類方法和普通方法的鎖區(qū)別,獲取類鎖之后還能獲取對(duì)象鎖嗎
7.類加載器的雙親委派模型的作用,能重復(fù)加載某個(gè)類嗎
8.類加載器的類的緩存,key是什么
9.介紹Redis
10.如何將數(shù)據(jù)分布在不同的Redis
11.有了解過(guò)取余算法?
12.spring的apo實(shí)現(xiàn)
13.字節(jié)碼結(jié)構(gòu)
14.瀏覽器輸入網(wǎng)址過(guò)程,結(jié)合springmvc
四面(36分鐘)菜鳥(niǎo)國(guó)際供應(yīng)鏈
1.HashMap在大量哈希沖突該怎么處理
2.紅黑樹(shù)比BST優(yōu)點(diǎn)
3.MySQL為什么使用B+樹(shù)
4.多個(gè)索引會(huì)有多份數(shù)據(jù)嗎
5.數(shù)據(jù)庫(kù)的隔離級(jí)別和解決的問(wèn)題
6.數(shù)據(jù)庫(kù)默認(rèn)隔離級(jí)別,一定會(huì)產(chǎn)生幻讀嗎,怎么解決
7.輸入網(wǎng)址到展示的整個(gè)過(guò)程,結(jié)合springmvc來(lái)講
8.負(fù)載均衡的算法
9.哈弗曼編碼,如何解決譯碼問(wèn)題
10.實(shí)習(xí)會(huì)對(duì)工作有影響嗎
11.用英文介紹一個(gè)項(xiàng)目
12.如何查看系統(tǒng)負(fù)載
13.描述一個(gè)解決問(wèn)題的過(guò)程
14.如何把文件從服務(wù)器復(fù)制到本地,用什么命令
五面(27分鐘)菜鳥(niǎo)技術(shù)部
1.當(dāng)時(shí)怎么找到百度這個(gè)機(jī)會(huì)的
2.項(xiàng)目中用的哪些技術(shù)
3.項(xiàng)目如何設(shè)計(jì)流程流轉(zhuǎn),如果是你的話該怎么設(shè)計(jì)
4.MySQL使用的索引結(jié)構(gòu)弃榨,查找效率
5.MySQL查詢優(yōu)化
6.MySQL慢查詢開(kāi)啟菩收,語(yǔ)句分析
7.HashMap查找效率
8.JVM內(nèi)存模型
9.設(shè)計(jì)模式,策略模式的使用場(chǎng)景
10.如何確保單例線程安全
11.Spring的bean的默認(rèn)范圍
12.對(duì)Netty的了解
13.未來(lái)發(fā)展規(guī)劃
14.如何讓代碼可讀性更加復(fù)雜
六面(22分鐘)HR面
1.說(shuō)一下發(fā)展方向
2.說(shuō)一下經(jīng)驗(yàn)不足導(dǎo)致的問(wèn)題
3.說(shuō)一下挑戰(zhàn)杯的工作內(nèi)容
4.說(shuō)一下你給挑戰(zhàn)杯項(xiàng)目的主要貢獻(xiàn)
5.實(shí)習(xí)時(shí)間
6.拿到了哪些offer鲸睛,你是怎么考慮的
7.為什么不選擇騰訊
8.騰訊技術(shù)棧和阿里技術(shù)棧的區(qū)別
騰訊
一面(支付)
1.jqc的介紹
2.如何確保多臺(tái)機(jī)器不會(huì)重復(fù)消費(fèi)
3.如何確保消費(fèi)了反饋失效問(wèn)題(用事務(wù)管理娜饵,先儲(chǔ)存再消費(fèi),失敗就回滾)
4.如何防止數(shù)據(jù)庫(kù)單點(diǎn)問(wèn)題
8.paxos算法
9.raft算法
10.spring的aop實(shí)現(xiàn)
11.三種操作,a:++,b:--,c:/2(只能偶數(shù))官辈,求i變1的最少次數(shù)
12.人才培養(yǎng)(輪流嘗試箱舞,提出任務(wù),鼓勵(lì)實(shí)現(xiàn))
13.沒(méi)有深度的廣度沒(méi)有意義拳亿,由廣變宅晴股,由淺入深
14.設(shè)計(jì)時(shí)需要經(jīng)驗(yàn)但堤防經(jīng)驗(yàn)主義
15.百度技術(shù)氛圍比騰訊好
二面
1.手寫多線程買票代碼
2.手寫ServerSocket使用代碼
3.java有多少種線程池,固定線程池是怎樣的
4.Collection的子接口
5.Map的接口肺魁,HashMap應(yīng)用場(chǎng)景
6.Queue的父接口电湘,使用場(chǎng)景
7.數(shù)據(jù)庫(kù)主從復(fù)制配置
8.Spring的IOC優(yōu)點(diǎn),解決了什么問(wèn)題(解耦)
9.Bean的生命周期
10.Bean的范圍鹅经,gobal session的作用
11.手寫SpringMVC流程
12.如何平衡生活和工作
13.職業(yè)發(fā)展規(guī)劃
14.為何不考研
15.redirect和forward區(qū)別
16.大學(xué)中最大的挑戰(zhàn)
17.加密算法
HR面
1.喜歡做什么
2.喜歡看什么電影,帶著什么心態(tài)去看
3.會(huì)再回百度嗎
4.還有什么面試
5.騰訊阿里選什么,為什么選騰訊
6.是否獨(dú)生
7.家里人希望做什么
今日頭條
抖音一面
1.手撕LFU寂呛,要求get和put都為O(1)
2.在一個(gè)環(huán)狀的城市,小偷可以選擇偷或者不偷任意一家瘾晃,但被偷的房子不能相連贷痪,求最大價(jià)值
效率工程一面
1.儲(chǔ)水題
2.如何找項(xiàng)目性能瓶頸
3.有多少種類型的緩存,從客戶端到服務(wù)端
4.如何查看系統(tǒng)性能,性能指標(biāo)
5.redis數(shù)據(jù)類型
6.redis的aof太大如何優(yōu)化
7.mysql的主從復(fù)制
8.mysql的引擎,區(qū)別
9.https的建立鏈接過(guò)程
10.https的傳輸數(shù)據(jù)是否是對(duì)稱加密
11.tcp擁塞控制
12.epoll和select
13.nginx如何處理連接
14.nginx如何做性能優(yōu)化
15.apache和nginx區(qū)別
16.兩支不均勻香,測(cè)出15分鐘
效率工程二面
1.手寫LRU
2.查看系統(tǒng)負(fù)載
3.進(jìn)程通信方法
4.管道如何使用
5.socket建立過(guò)程
6.如何高效處理socket
7.NIO的原理和,連接切換方式
8.使用什么命令查看系統(tǒng)負(fù)載,第一行是什么
9.一個(gè)表user_id,order_date,要查用戶訂單,某一天訂單,某個(gè)用戶某天訂單,如何建索引
10.復(fù)合索引的結(jié)構(gòu)
11.redis的常用數(shù)據(jù)結(jié)構(gòu)
12.zset的底層數(shù)據(jù)結(jié)構(gòu),跳躍表如何實(shí)現(xiàn)
13.redis如何持久化RDB
效率工程HR面
1.怎么找到百度實(shí)習(xí)和第一份實(shí)習(xí)
2.如何處理學(xué)業(yè)和實(shí)習(xí)
3.講一下項(xiàng)目中溝通協(xié)作的過(guò)程
4.如何你是owner你是怎么設(shè)計(jì)這個(gè)項(xiàng)目
5.拿到了什么offer,如何考慮
蘑菇街
一面
1.鳳聆的權(quán)限管理如何設(shè)計(jì)
2.如何將9s提升到0.3s
3.用沒(méi)有了解過(guò)其他搜索框架例如solr
4.有了解過(guò)協(xié)程嗎蹦误?輕在哪
5.jvm查看gc命令
6.如何解決jvm的問(wèn)題
7.mysql in呢诬,not in,like走不走索引
8.開(kāi)發(fā)環(huán)境涌哲,開(kāi)發(fā)IDE
9.使用什么命令查看cpu和內(nèi)存情況
10.如何查看進(jìn)程的線程情況top -H -p
11.秒殺場(chǎng)景設(shè)計(jì)
12.秒殺時(shí)如果機(jī)器資源有限怎么辦
13.可以保證實(shí)習(xí)時(shí)間
14.對(duì)自己未來(lái)的規(guī)劃
二面(小程序部門)
1.父母對(duì)來(lái)杭州有沒(méi)有意見(jiàn)
2.會(huì)考慮轉(zhuǎn)正嗎
3.老師或者同學(xué)會(huì)怎么評(píng)價(jià),如何體現(xiàn)技術(shù)比較強(qiáng)
4.大學(xué)中最自豪的一件事
5.項(xiàng)目中解決的一個(gè)問(wèn)題
6.Nginx超時(shí)怎么辦
7.mysql索引相關(guān)
8.%匹配實(shí)現(xiàn)原理
9.獲取www.baidu.com最后一個(gè)點(diǎn)的內(nèi)容"com"最優(yōu)方法,為何,時(shí)間復(fù)雜度,如何實(shí)現(xiàn)
HR面
1.深層介紹自己
2.對(duì)你影響比較深的一個(gè)人
3.想成為怎樣的人
4.最有成就感的事
5.最近的挫折
6.怎么發(fā)現(xiàn)瓶頸
7.學(xué)校和工作環(huán)境有什么不同
8.周圍同學(xué)比較,有什么優(yōu)勢(shì)
京東
一面
1.快排原理
2.HashMap底層結(jié)構(gòu)
3.ConcurrentHashMap線程安全原理
4.類加載機(jī)制
5.左連接和右連接區(qū)別
6.tcp建立連接的方式
7.close wait和time wait在什么情況下出現(xiàn)
8.http組成
9.http頭部,keepalive的意義
10.https流程
11.如何確保密鑰安全尚镰,是否非對(duì)稱加密
12.線程池的實(shí)現(xiàn)原理
二面
1.在百度學(xué)習(xí)到什么
2.對(duì)java的了解哪些方面
3.還了解過(guò)其他語(yǔ)言嗎阀圾,不同語(yǔ)言只是不同偏好
4.aqs的具體實(shí)現(xiàn)
5.并發(fā)包用到那些
HR面
1.在百度學(xué)習(xí)到什么
2.為什么從百度離職
3.有什么優(yōu)點(diǎn)和缺點(diǎn)
4.遇到問(wèn)題是偏向解決問(wèn)題,還是抱怨問(wèn)題
5.能實(shí)習(xí)多久
網(wǎng)易郵箱
一面
1.java公司
2.dfs和bfs實(shí)現(xiàn)原理和應(yīng)用場(chǎng)景
3.ArrayList的底層實(shí)現(xiàn)
4.Elastisearch的索引如何儲(chǔ)存
5.JVM內(nèi)存模型
6.java堆分代狗唉,對(duì)象分配
7.在項(xiàng)目中遇到什么問(wèn)題初烘,如和解決
8.對(duì)自己這個(gè)項(xiàng)目打幾分,為何轉(zhuǎn)項(xiàng)目
9.HashMao底層實(shí)現(xiàn),介紹紅黑樹(shù)
10.String a="abc" String b="a"+"bc" a==b?
11.遇到緊急的需求該如何完成
12.手寫ArrayList添加11個(gè)元素
13.n個(gè)0~9的數(shù)分俯,找和為7的數(shù)對(duì)
14.MySQL的引擎肾筐,所使用索引的結(jié)構(gòu)
15.B樹(shù)和B+樹(shù)的區(qū)別
16.代碼優(yōu)化地方
17.平時(shí)看什么論壇
18.自研JQC的實(shí)現(xiàn)原理,和kafka的區(qū)別
19.搶紅包實(shí)現(xiàn)
20.如何傳輸密碼(非對(duì)稱加密缸剪,https)
21.https的證書(shū)在哪頒發(fā)
終面(HR+主管)
1.如何找到兩個(gè)實(shí)習(xí)
2.學(xué)校允許實(shí)習(xí)嗎
3.項(xiàng)目中的挑戰(zhàn)
4.通過(guò)學(xué)習(xí)解決的最大一個(gè)困難
5.如何處理項(xiàng)目吗铐,學(xué)習(xí),實(shí)習(xí)的時(shí)間
6.為什么離職百度
7.為什么得不到上司的信任杏节,當(dāng)時(shí)有更好的選擇嗎
網(wǎng)易游戲
1.如何保證項(xiàng)目擴(kuò)展性,依賴問(wèn)題
2.消息隊(duì)列同時(shí)消費(fèi)問(wèn)題
3.進(jìn)程的通訊方式唬渗?哪種最高效
4.本機(jī)socket需要經(jīng)過(guò)協(xié)議棧解包嗎
5.linux文件管理,文件類型
6.一致性哈希實(shí)現(xiàn)
7.統(tǒng)計(jì)海量詞頻最高10個(gè)單詞奋渔,所用的數(shù)據(jù)結(jié)構(gòu)
8.強(qiáng)類型/弱類型和靜態(tài)類型/動(dòng)態(tài)類型
9.JVM類加載器
10.查看機(jī)器性能
11.查看cpu負(fù)載镊逝,一般為多少,過(guò)高怎么解決
12.機(jī)器性能是如何讀取的
三七互娛
一面
1.Bean的生命周期
2.Atom類實(shí)現(xiàn)原理
3.多線程實(shí)現(xiàn)
4.Thread和Runnable區(qū)別
5.volatile特性
6.happens-bofore原則
7.消息隊(duì)列嫉鲸,kafka
8.如何確保形成安全
9.HashMap初始大小撑蒜,紅黑樹(shù)何時(shí)退化為鏈表
10.Actor,Akka和RingBuffer
11.冒泡排序
12.JVM內(nèi)存模型
13.垃圾回收機(jī)制
HR面
1.有沒(méi)有面其他公司
2.薪資待遇期待
3.上一份工作為何離職
商湯
一面
1.看過(guò)JDK源碼嗎
2.HashMap增刪查和數(shù)據(jù)結(jié)構(gòu)
3.MySQL慢SQL查詢和優(yōu)化玄渗,如何排查問(wèn)題
4.MySQL引擎和區(qū)別座菠,引用場(chǎng)景
5.redis集群,如何拓展
6.mongodb和redis區(qū)別
7.單例模式的實(shí)現(xiàn)藤树,是否只擁有一個(gè)實(shí)例
8.SpringCloud生態(tài)
9.介紹一下Elastisearch浴滴,原理和用途,分布式實(shí)時(shí)日志才需使用ELK
10.有用過(guò)線程池嗎
11.介紹JVM垃圾回收機(jī)制
吉比特
一面(游戲運(yùn)營(yíng)開(kāi)發(fā)也榄,賬號(hào)安全)
1.有參加acm嗎
2.怎么去百度的
3.mysql用什么鎖巡莹,行級(jí)鎖有什么缺點(diǎn)
4.mysql優(yōu)化
5.比較兩個(gè)數(shù)相同位數(shù)
6.如何體現(xiàn)對(duì)技術(shù)的熱愛(ài)
7.ArrayList和數(shù)組區(qū)別,調(diào)用add方法會(huì)調(diào)用哪些其他方法
個(gè)人感受
春招是一個(gè)很刺激且很折磨人的過(guò)程甜紫,你可能會(huì)遇到各種奇奇怪怪的公司降宅,但只有不斷提升自己的實(shí)力,才有更大可能拿到Offer囚霸,拿不到Offer的小伙伴也不要?dú)怵H腰根,畢竟秋招才是重頭戲,還有那么長(zhǎng)的時(shí)間可以準(zhǔn)備拓型,我相信你春招過(guò)后也知道自己哪方面比較薄弱额嘿。我自己也是很幸運(yùn)瘸恼,在春招的過(guò)程中不僅收獲到了Offer,而且在我最緊張册养,最低落的時(shí)候遇到了我的現(xiàn)女友东帅,一個(gè)可愛(ài)的妹子,感覺(jué)是她帶給我幸運(yùn)球拦。最后祝大家收獲更多的Offer靠闭,也能遇到對(duì)的人。