昨天,终于拿到了腾讯 offer
戳藍字“CSDN云計算”關注我們哦!
技術頭條:干貨、簡潔、多維全面。更多云計算精華知識盡在眼前,get要點、solve難題,統統不在話下!
作者 | 程序員小吳
本文來自程序員小吳的一個讀者的投稿,我跟他是在?2?月份認識的,當時他面試阿里在五面涼涼,陪他吐槽了一晚上,然后第二天就開始準備面試騰訊了。他喜提騰訊?offer,覺得他的經驗可能對大家有幫助,就軟磨硬泡的讓他分享出一篇面經出來給大家看看,希望對大家有幫助。
面試經歷
自我介紹
我來自中國四大郵電大學中排名第四的郵電大學,雙非普本,大三安卓狗。自己大一的時候剛上大學的時候有也蠻迷茫的,高考考的人心力憔悴,一天無所事事,從來沒想到能去BAT實習。但是就目前來看,自己大三上學期去百度實習,現在拿到騰訊春招口頭offer。
我只能說,運氣占一半,實力占一半。
我可能就是運氣比較好的那種。
自己大一的時候剛來大學,其實是第一次接觸計算機。然后我也不知道該怎么學,但是當時有個老鄉學長給我指導我如何學習計算機,學會使用搜索引擎,他說計算機學院學生如何連搜索引擎都不會用,基本上就是不適合這一行,然后給我要求是這樣的
如何描述自己想要的信息
如何篩選海量的信息得到自己想要的
如何把信息分類整理掌握
然后我基本上遇到問題都是先自己想下,如果不會就去搜索,最后整理自己不會的地方,如果實在不會就問下別人。
大一一開始自己就看郝斌老師的C語言視頻,然后去刷算法題,參加藍橋杯比賽,獲得了省賽的獎(但是說實話,這個比賽真的太水了)。
然后大一下學期考入學校的移動應用開發實驗室安卓組,大一暑假留校實驗室開始了自己?java?和安卓的學習,寫了安卓計數器看完《安卓第一行代碼》郭神的書;
大二上學期和實驗室朋友一起多人git合作寫了一款《收藏小精靈》的app,參加了當時解放號杯比賽,拿的優秀獎,獎金2千塊錢。
大家幾個人一分雖然不多,但是也是人生的第一桶金。
基本上在學校白天上課,晚上在實驗室學習寫項目到11點才回寢室。
大二暑假時候,之前去參加谷歌訓練營時候看到騰訊的游戲大賽就想參加,然后就開始自學?C#?和?unity?,組建了團隊,招募了美工,建模師,策劃。游戲項目寫了我大二一個暑假,白天學習?unity,晚上寫項目,那段時間是我自己壓力最大的時候,被分手,項目寫不出來了,西安夏天晚上睡在沒有空調的寢室,自己活的真的像條狗。自己真的無數次想放棄,但是覺得答應別人要寫出來不喜歡放棄,就堅持把這個游戲項目寫完了,項目叫《幻想機關球》。
參加比賽時候發現自己和專業的游戲團隊寫出來的東西還是差別蠻大的,也沒獲獎,但是也算完成了對別人的承諾,實現了自己小時候的愿望。
大三上學期,自己和別人又開始寫一款《卡片記憶》的app,還沒寫完,百度面試過了,然后就去百度實習去了。
在百度實習那段時間真的蠻開心的,吃的不錯,導師和leader對我也蠻好的,自己就完成了兩個手百的需求,然后因為一些原因從百度離職了,在去公司實習的時候,我才知道自己和真正的程序猿還是差很遠,每天都痛并快樂著。
感謝百度那段實習的日子,是我人生第一次實習,對我對這個程序猿行業有了直觀的認識,看清自己的能力和別人的差距。
寒假回家基本上都是在復習,過年前復習操作系統編譯原理,年后復習安卓和?java,數據結構,計算機網絡這些,基本上自己春招從寒假放假就開始準備,準備了兩個多月,自己除了運氣好之外也是對得起自己的付出。
騰訊這個面試是我學長直接內推的,給的他們安卓組組長,因為我堅持寫博客,又有百度實習經歷學長說我簡歷評級在騰訊蠻高的,基本上很快就接到面試。下面是面經。
一面 3/5
第一次打電話我在上課,然后拖到下午?6?點,然后下午?6?點半打過來電話我再上廁所尷尬,,,然后過了?10?分鐘就開始面試,面試的難度還好吧,基本上都是基礎問題。
1 自我介紹
就簡單的自我介紹了下自己,然后說下自己的學習歷程,把自己寫的項目帶出來,然后講了下自己在百度實習的經歷。
2 在百度實習的經歷,然后問我手百的框架,寫的需求
講了下百度手百的框架,自己當時負責的需求,如何寫的,遇到問題咋處理的
3 HTTPS,對稱加密,非對稱加密
先講了下?HTTP?和?HTTPS?的區別,然后講下?HTTPs?為什么安全,如何加密的,對稱加密是什么,公鑰私鑰怎么用,然后講到證書,為什么有證書,證書安全嗎,如何保證證書不被竄改,但是我當時好像沒講到數字加密這塊,然后面試官對我這塊回答不是很滿意。
4 用過的網絡框架 okHttp源碼解析
因為我項目網絡框架就用過?okHttp?,?然后大三上學期看過這塊源碼分析,就給面試官講了下主體流程,然后說了下框架的最重要的攔截器的作用是,講了下責任鏈模式。
5 RecyvleView的源碼
我一開始沒聽清楚面試官的問題,我給人家講下下?ListView?和?RecyvleView?的區別,然后面試官讓我講了下RecyvleView?的源碼,然后這塊我真沒看這塊源碼,自己就講了下在?recyclerview?中持有一個?adapter?的觀察者,然后在?setAdapter?之后會注冊這個被觀察者,然后會去?requestLayout?,去請求重繪布局。
6 算法題 兩數之和
這個題,,,基本上就是簽到題,我是用?HashMap?優化的,有點取巧了。
7 智力題 瓶子從100樓往下扔,一共兩個瓶子,問從那個樓扔瓶子剛好碎
這個題是騰訊最愛問的智力題,這塊我一開始想到二分的方法,但是仔細一想這個方法不可以,然后我就想到分段的方法,第一個瓶子 10 層 10 層間隔扔,確定大范圍,然后第二個瓶子確定小范圍,然后面試官說這個方法還是不對,但是比上一個方法好一點,讓我再想想,然后我就很著急就想不出來 //?最后在吳師兄的推文里面看到了解答。
8 Handle
這個就是安卓面試必問的問題,基本上把源碼看下都能說出來,然后是個生產者消費者模型。
9 進程之間如何通信
這個真的是送分題,,,安卓問題必問的進程間通信,然后我講下內容提供器,服務什么的,
總的來說,一面蠻基礎的,然后就是講HTTPS那塊和智力題沒講好,其他的都可以。
二面 3/8
本來給我打電話,然后我又去吃飯又沒接到電話,然后就發短信和面試官商量時間,然后重新定在星期五下午?3點,,,然后就開始慌了,不知道面試官會問我什么。然后戰戰兢兢開始了二面,但是面試官人很好,全程面試都是我從自我介紹開始把握節奏,全都是我在講,面試官就可能個別問題問了下細節。
1 自我介紹
跟一面介紹一樣。
2 百度實習的時候做過的業務
也和一面回答的一樣。
3 安卓和js的交互方式,那種更好,安全性比較
主要是百度那邊手百安卓和js交互比較多,所以就講了下安卓和js的交互方式,比較了下幾種方法。
4 讓我講了下自己寫的 unity 游戲過程
這個就是完全自己發揮,講下下自己游戲的玩法,動畫,粒子特效怎么弄的,游戲里面AI框架自己怎么用的,怪物怎么自動打人的。
5 HTTPS
我說一面問過了,他問我答到證書了嗎,我說我講過了,然后就沒問了。
6 HashMap 的 hash 操作和擴容機制
因為這塊 HashMAp 的源碼自己仔細的閱讀過,然后還寫過博客,講起來就很得心應手,把 HashMap 里面的為什么是 2 的次方,二次擾動,hash 值計算都講了一遍
7 紅黑樹概念,二叉樹遍歷
因為上一個問題講到紅黑樹了,然后講了下紅黑樹的概念,然后問其他的我真的不會了,就問了下二叉樹的前,中,后遍歷方式。
8 算法題 如何判斷一個數是 2 的次方 如何優化 時間復雜度
這個題,也算一道簡單題,自己大一時候好像寫過,直接用這個數的減一的值和這個值進行計算就好了。
9 快排的思想 如何優化 時間復雜度
這個也是基本問題,然后講了下快排的思想,然后優化的方式講了下中間值取值的優化,然后為什么這樣做。
10 JVM 內存模型
這個也算?java?的基本問題,自己講這個的時候提到操作系統內存分配什么的。
11 GC 機制原理,概念,如何自己用
這個也算?java?基礎問題,先講了下內存碎片問題,操作系統里面什么時候GC,然后介紹JVM的GC機制,然后講了下?G1?收集器,新生代老生代那些。
12 內存泄漏問題
這也算安卓基本上必問的問題,然后我就講了下為什么會內存泄漏,然后我們怎么處理這塊。
13 自定義View
這個也算安卓必問的問題233,先是測量?然后布局?最后繪制//基本上這種問題是必問的。
14 ListView的優化
這個我就講了下?ViewHolder?緩存機制,然后順便講了下?listView?的源碼,和重復利用機制。
15 Glide 框架的分析
因為這塊我看過源碼,然后講下了這個框架的倆個亮點?1虛擬碎片監視生命周期?2?緩存機制,然后就講到lru算法,然后就扯到操作系統這塊內存算法。
16 Binder機制
Binder機制這塊我只講了概念,講了下操作系統里面管道和Binder的區別。
17 跨進程通信
這塊我也可能只是知道一個概念,具體用的時候還不是很清楚,講了下隱式Intent,共享內存什么的。
18 網絡TCP,網絡分層
這塊因為剛復習到了,所以講起來很流暢,先講了下自己對網絡協議的理解,網絡的分層,為什么要分層這塊。然后講下個個層傳輸的時候怎么怎么工作。
三面 3/11
上周星期五二面完我去看電影(夏目友人帳的劇場版)面完沒接到HR的電話,233沒想到啊我看到面試狀態是HR面了,然后然后今天中午2點的時候,突然我接到電話以為是HR面,,,但是好像不是HR,又是一輪結束面試,發現我狀態變成,復試狀態了尷尬,這一面應該是總監面試的
1 自我介紹
還是一樣的介紹。
2 講下寫的最好的一個項目
講下一下自己unity項目怎么寫的,自己遇到問題這么解決的,如何組建團隊的。
3 大數據排序
給?1?億的?int?類型的數,如何找到最大的?100?個,這種問題肯定不可能直接排序,先分開存儲,然后我的思路是用桶排的思想進行處理,可能我的方法不是最優解。
4 對自己項目的優化方式
自己講了對設計模式的理解,然后講了下自己項目中的單例模式和工廠模式的使用,對內存的優化
5 百度實習的時候
問了我下百度實習的生活,覺得北京生活怎么樣233。
HR面 3/18
3月11號總監面試完了之后,然后晚上狀態變成HR面試了,然后等啊等,等了一周終于等到了
1 自我介紹
還是一樣的介紹,介紹寫的什么項目,每天自己學習安排什么的。
2 家庭情況,父母工作
這個就問什么回答什么。
3 個人為什么選擇學計算機
這個問題,,,很尷尬,我說我想讓父母過上更好的生活,讓自己以后能在大城市生活。
4 為什么從百度離職
這個問題如果有興趣可以給大家講,,,
5 對自己的以后的安排
就是自己以后生活規劃,自己說了自己短期生活規劃和長期生活規劃。
6 對生活的看法
講了下自己看的書《人間失格》對自己影響很大,讓自己知道人該如何活著,每個人答案不一樣,我的答案是過自己喜歡并承擔的起的生活,想讓我周圍的人都過的很好。
總結
最后面完試,HR小姐姐給了口頭?offer,然后我還拜托學長用他?leader?查了下我面試評價,除了一面評價是?A,其他三面都是?A+?(騰訊面試完會有個打分?A+?A?A-?B?c?BC就是這面很差),讓我出乎意料的。感覺自己也沒很厲害,都是很基礎的問題,然后自己分析了下原因
自己簡歷評級很高(有興趣可以查下騰訊簡歷評級)
有百度手百需求實習經歷
自己游戲項目給自己加了很大亮點
自己寒假認認真真復習了兩個月?操作系統?編譯原理?計組?數據結構和算法?安卓和?java?jVM都做了很詳細的準備。
自己有寫博客和定時提交 git 的習慣
學長直接給部門的內推
分析上面的原因,很大因素都是運氣好,剩下的都是自己一點一滴慢慢積累的,積少成多,很簡單的道理。
資料分享
操作系統視頻-北大陳向群?https://www.bilibili.com/video/av20528688
計算機組成原理-哈工大劉宏偉?https://www.bilibili.com/video/av15123338
還有我推薦極客時間里面老師的課程:
王爭老師---數據結構與算法之美(在吳師兄的安利下買的,強烈推薦啊啊啊啊,真 的講的特別好,聽說最近出了一門新課)
劉超老師---趣談網絡協議(講的也不錯)
//這兩個課程很值得去買,晚上我睡不著時候聽這個課程睡覺尷尬。
我的csdn博客地址?https://blog.csdn.net/sakurakider?歡迎大家關注我嘿嘿。
算法公眾號的話推薦「五分鐘學算法」,早知道當時好好看下這里面文章,面試很多算法題都有題解哈哈。
最后,分享一下實驗室的吉祥物,它的名字叫?offer,哈哈哈哈。
福利
掃描添加小編微信,備注“姓名+公司職位”,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
推薦閱讀:
為什么給黑洞拍照需要這么長時間?
V神玩起freestyle!?5位以太坊核心大咖在悉尼的演講精華全在這了!|?直擊EDCON
“重構”黑洞:26歲MIT研究生的新算法?|?人物志
零編程基礎的?15?歲少年,僅用?9?個月開發了?9?款?App?!
京東“地震”
程序員?996?再上熱搜,黑名單增至?84?家!
真香,朕在看了!
總結
以上是生活随笔為你收集整理的昨天,终于拿到了腾讯 offer的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 读完这篇文章,你就是下一个时间管理大师。
- 下一篇: 计算机软件定时运行,Win7打开定时运行