騰訊后端面試經(jīng)歷與經(jīng)驗總結(jié)

終于等來騰訊的面試。
4.3號 機試
機試包括選擇(30多)、簡答(2題)、編程(2)。選擇和簡答編程分別一小時,選擇題考的比較廣,概率、Linux 、操作系統(tǒng)、網(wǎng)絡(luò)等各個方面,
自我感覺比??途W(wǎng)題有深度和難度,不是那種一看就知道結(jié)果的問題,而且都是多選題(這點比較坑),
從面試的整體過來來看,無論筆試還是面試騰訊都注重廣度和深度,也就是技術(shù)實力。
4.12
接到13號面試的通知,地點安排在某星級酒店,逼格甚高,承包一個宴會廳,面試官在不同的樓層房間里,標(biāo)間。
騰訊面試官給我的感覺是不像碼農(nóng)的技術(shù)碼農(nóng),穿著時尚,非標(biāo)準(zhǔn)工科男形象,由于我是第一個面試,可能時間比較久,持續(xù)一個小時時間。
進門以后,面試官把簡歷整體掃描一遍,接著開始面試,首先從c++語言特性問題,
一問你對c++的語言特性有怎樣的認識,balaba一堆,
二問多態(tài)特性有什么用?有沒有用過多態(tài)特性,
三問多態(tài)怎么實現(xiàn)的?
四問虛函數(shù)是怎么實現(xiàn)的?
五問虛函數(shù)指針有幾個?
六問虛函數(shù)表存在哪里?
七問有沒有遇到過使用虛函數(shù)程序宕掉的情況?為什么宕機?
八問memset初始化類對象會出現(xiàn)什么情況?
九問如何調(diào)試程序?有沒有使用過core文件調(diào)試程序?
十問什么情況下引起程序宕機?
十一問對于大型程序,正在運行,且不可停止檢錯,有個邏輯錯誤,運行幾萬次才會復(fù)現(xiàn)一次,怎么找出這個邏輯錯誤?
十二問設(shè)計模式幾個原則是什么意思?
十三問網(wǎng)絡(luò)通信TCP UDP 如何選擇?
十四問TCP出現(xiàn)粘包怎么處理?自己使用中有沒有出現(xiàn)過粘包的現(xiàn)象?
十五問多線程編程如何進行分線程?
十六問網(wǎng)絡(luò)編程模型區(qū)別
十七問如何學(xué)習(xí)的?看過哪些書?通過什么途徑學(xué)習(xí)?
十八問平時逛什么論壇?
十九問現(xiàn)場手寫代碼
二十問邏輯推理題。
整體面試下來,感覺面試官技術(shù)很深入(面試官很年輕),有些東西會的不一定能說上來,不會的更是不可能說上來,知識的深度和廣度同樣重要。
在這里強調(diào)一點是,當(dāng)時面試設(shè)計模式問到里氏替換原則,我的答案回答正確,但是面試官突然一句是不是說反了?在當(dāng)時的環(huán)境本能反應(yīng)肯定會認同他說的是對的,面試官一笑而過,
但是后來出來以后,證明我是對的,我意識到當(dāng)時是不是故意的提出疑問,考驗我的扎實程度。
還是一個自己挖的坑,最終把自己埋了的事情是,為了”強調(diào)”自己的自學(xué)能力,作死提出自己不是科班出身,然后就被面試官抓住把柄,一臉嫌棄的說才學(xué)兩年編程?
4.14 復(fù)試
初試整個一個小時下來,感覺基礎(chǔ)知識自己回答的還算不錯,但涉及到linux系統(tǒng)大型程序調(diào)試經(jīng)驗時還是有所欠缺,特別最后一作,感覺應(yīng)該與復(fù)試無關(guān),但13號晚接到復(fù)試通知,
至此,已經(jīng)心滿意足,感覺已經(jīng)賺到,復(fù)試還是原來的酒店,只是人數(shù)明顯少了,換了一個很小的宴會廳。因為許多同學(xué)初試都會被問到項目,而我初試沒有問到項目,多次往項目上扯,
都被面試官無情的扯回來,所以在前一天很充分準(zhǔn)備了項目經(jīng)驗,然而,,,事實是:
來到面試官房間,也是一個看起來很年輕的面試官,但能感覺到技術(shù)氣息很濃厚,坐下來以后,遞交簡歷(其實初面面試官的材料他手里都有,包括我的簡歷),一上來又是基礎(chǔ),
(此處是重點)多態(tài)是什么?虛函數(shù)表存在哪里?(是不是很熟悉?對,初試時候沒有完全答對的問題,又被問了一遍,其實我有點心虛,回去以后我并沒有針對這個問題做總結(jié),所以長點心吧)
上次答案是錯的,那么這次簡單分析一下?lián)Q一個答案,證明是對的,接下來又問,內(nèi)存中有幾份虛函數(shù)表?怎么分布的?懵逼狀態(tài)勉強回復(fù),二問,客戶端往服務(wù)器端連續(xù)發(fā)送10個包,每個包100字節(jié),
服務(wù)器端讀取一次,問讀到多少字節(jié)?為什么?這個問題同樣是對初試十四問的實際例子。接下來就是噩耗,三問邏輯題,(智商跟不上啊),紙牌類游戲(后來從下一環(huán)節(jié)的面試知道,面試我的面試官是做游戲開發(fā)的,也就是說我應(yīng)該是被分到騰訊游戲了)
A,B兩個玩家
A、B的牌面都是 3 4 5 66 77 88
規(guī)則是 斗地主規(guī)則一樣,但是 對子不能拆開單出,A先出,問什么策略可以保證A穩(wěn)贏?給出策略。
博弈論?馬爾科夫鏈?心中一萬種猜想,面試官倒是很耐心的,說這是邏輯題,提示A的行為都會導(dǎo)致B產(chǎn)生相應(yīng)的行為?而B的行為又直接導(dǎo)致A的輸贏?結(jié)果是退到二十分鐘也沒有推倒出來,現(xiàn)在想想應(yīng)該是馬爾科夫鏈問題,但是至今不知道答案是什么?
說實話此時有點緊張,面試官安慰說,沒關(guān)系的,很少人能推倒出答案。四問,源碼?。?!源碼!??!接下來面試官遞給我筆記本電腦,展示一段代碼,沒用過的電腦,沒用過的IDE,簡單教我?guī)讉€操作,
然后說,這里是一個完整的工程(這句話有兩個含義: 一,這個工程文件是完整的,可以編譯運行的,二是 代碼量真的是超級大),這里是主函數(shù),你來閱讀源碼,并盡可能的告訴有更多的信息.
接下來就是一段沉寂,面試官就坐在旁邊看著你,而你在看著源碼,時不時內(nèi)心還要注意面試官的舉動,加上上一個問題沒有回答上來,可想當(dāng)時的壓力有多大,看了二十分鐘后,
簡單匯報自己的結(jié)果,實現(xiàn)的功能應(yīng)該是游戲換場景的功能,其中是各種綜合,單例模式、命令模式、觀察者模式,類模板,繼承、多態(tài)、函數(shù)指針 嵌套使用。接下來繼續(xù)問,指了一個語句,(函數(shù)指針調(diào)用函數(shù)),問這個函數(shù)最終執(zhí)行到哪里?
上一個問題的回答面試官并沒有給出明確的對錯,心里很是沒有底,然后這個問題已經(jīng)忘我狀態(tài)(腦袋完全沒有一點邏輯可言),然后就按部就班的一步步向下走,最終死胡同是進入到類模板中,此類模板又繼承自一個類,
然后進行不下去,面試官倒是很好,在這過程中一直很耐心的給提示給指導(dǎo),給出提示找到這個類模板的一個實現(xiàn)就找到結(jié)果了,再一次提示所有的源碼都在這個工程里(這個提示很重要,然而我并沒有意識到),就這樣持續(xù)了很久,無疾而終,
面試大概持續(xù)一個小時20分鐘,面試結(jié)束,自己的面試表現(xiàn)能知道肯定沒戲,就讓面試官給個評價,很中肯,基礎(chǔ)不錯很扎實,但是閱讀代碼能力很欠缺,尤其復(fù)雜的代碼沒有一個完整的思路,需要加強。最后謝謝面試官的指導(dǎo),離開。
出來以后才發(fā)現(xiàn)問題的關(guān)鍵所在,面試官一再提醒這是個完整的工程,也就是說可以編譯運行調(diào)試的,其實當(dāng)時最簡單的方式是設(shè)置斷點,單步執(zhí)行,是肯定可以找到程序運行到哪里的,這也算是一個教訓(xùn)。
總結(jié):
1.面試的失利終歸是自身實力不夠,平時閱讀代碼量太少,其實面試官已經(jīng)做了很大的指導(dǎo)。
2.心理素質(zhì)太差,遇到一個不會的問題容易慌張,終究是太看重這個面試,面試其他XX公司時,完全抱著學(xué)習(xí)的態(tài)度去,反而表現(xiàn)的很好,所以心態(tài)要端正。
3.針對面試崗位準(zhǔn)備相應(yīng)的技能,一面面試官給的建議,報后臺就一定要會多線程、linux、網(wǎng)絡(luò)編程。
4.基礎(chǔ)一定要扎實、深入,知其然知其所以然。
5.非典型互聯(lián)網(wǎng)公司注重你的是業(yè)務(wù)能力,也就是看重你整個系統(tǒng)實現(xiàn)的思路,并不看重你對某一技術(shù)特別的深入,只要你會用,而且基本原理知道;互聯(lián)網(wǎng)公司看重你的技術(shù)深度,因為在大系統(tǒng)中每個人都是一顆螺絲釘,干著自己的精通的工作。
至此,止步。有失落,但沒有難過??v是煙霧繚繞,我必奮然前行。
相關(guān)文章
- 這篇文章主要介紹了2019年騰訊最新前端工程師面試題(附答案),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-11-21
- 這篇文章主要介紹了騰訊面試算法題之編碼問題,結(jié)合具體案例形式分析了基于java的編碼轉(zhuǎn)換相關(guān)算法原理與操作技巧,需要的朋友可以參考下2019-10-08
- 這篇文章主要介紹了騰訊的外包c++面試經(jīng)歷,總結(jié)記錄了一次騰訊C++面試的經(jīng)歷,包括面試的流程、面試題目與相應(yīng)的參考答案,需要的朋友可以參考下2019-09-29
- 這篇文章主要介紹了騰訊游戲客戶端開發(fā)面試經(jīng)歷,整理記錄了騰訊游戲開發(fā)面試中遇到的各種問題與心得體會,需要的朋友可以參考下2019-09-24
- 這篇文章主要介紹了騰訊游戲客戶端開發(fā)面試經(jīng)歷,總結(jié)分享了騰訊游戲客戶端開發(fā)面試所涉及到的考點與注意事項,需要的朋友可以參考下2019-09-20
9月最新184道阿里、百度、騰訊、頭條Java面試題合集(小結(jié))
這篇文章主要介紹了9月最新184道阿里、百度、騰訊、頭條Java面試題合集,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-09-09- 這篇文章主要介紹了騰訊前端面試題相關(guān)知識點,整理總結(jié)了騰訊前端面試中所涉及的相關(guān)基礎(chǔ)知識點與疑難問題,需要的朋友可以參考下2019-08-27
- 這篇文章主要介紹了2019騰訊后臺開發(fā)詳細面試流程詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-08-09
- 本文詳細的介紹了SpringMvc面試題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-28
- 這篇文章主要為大家介紹了C++ 一道騰訊面試題,深入剖析C++面向?qū)ο蟪绦蛟O(shè)計中關(guān)于指針成員變量的相關(guān)操作技巧,代碼剖析深入淺出,具有一定代表性,需要的朋友可以參考下2019-04-10