人人,金山西山居,騰訊互娛,微信,網易遊戲offer及面經php
首先感謝師兄在兩年前發的貼(【天道酬勤】 騰訊、百度、網易遊戲、華爲Offer及筆經面經 ),這篇文章對我幫助很大。
我寫這篇文章一是爲了感謝這位同是華南理工但素未謀面的師兄,給我推薦這篇文章的炳爺,以及爲我解決難題的浩子,羊兄給的項目幫助,潔潔的理解,王兄提供的兩個月免費住宿,以及互娛的BOSS,leader,金山的朱先生等人對我擇業的幫助,以及全部直接間接幫助過個人人。二是飲水思源,要把這份活水轉贈出去以幫助到更多的人。
我用完以後是這個樣子,大家用完以後也會是這個樣子。 = =~
文筆很差,表述不清的地方還請見諒,記錄本身的找工做歷程,若是能爲有須要的人提供到一點幫助或啓發我就很心滿意足了,一樣攢攢RP~嘿嘿
-------------------------------------------公司面試回憶----------------------------------------------------
(面試很大不肯定性,這些僅是本身的相關面試經驗,不會涉及到具體面試題目的表述,公司考查的都是常見問題,這裏不涉及對具體問題的探討,只會說個大概謹供參考~)
1、2013年4月,騰訊互娛,後臺開發工程師(實習)-------------------------------
1)一面,當天人爆滿,十點半進到808房間(挺吉利的號碼~),面試官整個過程一直面帶微笑,一面在輕鬆的氛圍中度過~(40分鐘)主要問到:
1. FTP服務器怎麼實現(由於本身有寫過),多線程磁盤讀寫效率(因爲磁盤尋道隨機性增長而致使I/O效率呈線性降低),是否考慮到斷點續傳。爲何要用epoll,優缺點是什麼,epoll的兩種方式,各有什麼不一樣。
2. TCP爲何要三次握手。
3. vector的容量增加的題目,vector a; push_back八次對象,求總共調用多少次拷貝構造函數。另外問到vecter和set的底層實現。
4. 空對象的大小,加虛析構函數又怎樣呢。
5. 寫算法,求二叉樹中某個值爲5的結點到根的路徑。
6. 看我寫過抓包軟件,問有沒嘗試分析一些軟件的數據包。
7. 字符串倒轉。
8. 排序有哪些,快排的思想。
2)二面總監面,態度也很友好,談話挺輕鬆的。(40分鐘)
主要問到:
1.一上來看我簡歷上編譯器相關內容,問我基於什麼緣由要寫,覺得現場寫彙編的節奏,結果是要寫strcpy(),大跌眼鏡~;
2. FTP服務器怎麼改進,果斷把上次一面面試官說的答上。提到若是進程崩潰,文件緩存區內容還沒法寫到文件中怎麼辦,我回答用數據庫的回滾思想,作記錄。後面說能夠用文件映射和共享內存等等。問用共享內存須要注意什麼東西,讓我回去想一想。。
3. 問網絡,問項目中爲何要考慮用TCP(文件傳輸難道用UDP?= =),不用TCP流量控制,傳文件還不爆掉阿。。問迅雷的協議是什麼,問優酷土豆這些視頻網站是用什麼協議傳輸視頻,答可能UDP組播。問熟悉P2P不,叫我回去瞭解。。
4. 問語言,問面向對象繼承封裝多態,問動態多態的實現,STL容器,仍是問到vector增加(這麼喜歡問這個)。
5. 寫算法,升序鏈表的合併。(現場手寫代碼能力要增強)
6. 問連連看外掛,問基於什麼緣由要寫。
7. 問實習,談到說實習公司LINUX下用到mono來開發C# , 本身參與C++重寫。
3)三面HR。當知道hr面不怎麼刷人也就放下心來了。本身好好想了下,看了騰訊的基本信息。
主要問到:
1. 自我介紹:扯遊戲和技術
2. 平時學校生活怎麼安排:起牀看網頁看小說學習吃飯健身跑步鍛鍊遊玩
3. 說下騰訊的產品的見解:QQ消息丟失的問題,QQ密碼安全的問題
4. 各類問,還問考研考了多少分,英語怎麼複習的,哪科考的最好
5. 你認爲本身作過最成功的事:說遊戲打到好裝備= =~,考研,項目
6. 介紹參加的社會實踐,問之前有沒實習經歷
7. 談本身研究生生活的得與失:得-知識能力積累提升 失-沒有搞什麼研究,或者本身不是想純搞研究的人吧
糾結的十多天,期間有一批同窗簽約了,本身這裏還毫無音訊,到5月1號,微信通知招聘結束,這下以爲可能要沒戲了,後來發現這是個系統錯誤,但願又來,果真5月2號下午四點半收到OFFER通知~ (記我難忘煎熬的騰訊實習面試經歷)
2、2013年9月,人人,後臺開發工程師-------------------------------
1)一面,一上來寫個aabbbccddff化爲abcdef的去重算法,想複雜了,其實的話只要將後面的移到前面來就好了(我是否是太弱了。。。)。接着問騰訊實習做業,磁盤的效率問題,併發的取捨,實現的UDP可靠傳輸效果如何,最後考了個0(1)時間求棧中最大元素的算法。這個沒想出來,其實考慮到棧的出棧入棧特色的話,很容易解決了。
2)二面,一上來又是算法,畫個不規則的多邊形,如今每條邊都須要一條等長的木頭,給定一塊足夠長的木頭,要以最小的體力值把這些邊長木頭出來(體力值等於木頭的長度),其實這就是個哈夫曼算法。提示不少次纔想到這裏,還好最後算法實現比較快。接着問了linux查看內存,查看磁盤容量剩餘,怎麼經過ls輸出目錄。
3)三面,問了key/value存儲,有什麼優缺點,什麼場景下用。問了一個分佈式key/value存儲要如何保證映射可靠,答經過中心代理來負責映射,那缺點又是什麼。接着問,若是不一樣的例程都要向某個key更新更大的value值,如何在不用信號量,同步鎖這些的狀況下保證最終value是最大的(同步,set get循環巧妙)。後面問了個海量數據中找第k大數(1.其實能夠直接採用桶劃分,即便是64位也最多三次遍歷就能夠了。2.也能夠採用位濾除,但磁盤操做太多 3.k堆濾除,但k若是太大會頻繁交換內存 4.分配到多機,多機同時外存排序,並有另一臺機子做多路歸併)
順利拿到了offer~可北京不太想去
3、2013年9月,金山西山居,後臺開發工程師------------------------------
1)一面,面試官是湖南老鄉,一上來問了各類c++問題,如new,delete,malloc,free的區別,new a[5]再delete a的編譯器未定義行爲及深層緣由探討。接着問了個內存分配,說堆中有1G的內存,但內存還夠用,但爲何就分配內存錯誤了。問了C++類的構造順序。問了TCP的黏包現象。一個是nagle算法,一個是應用層數據的包無邊界問題,這是沒法解決的,由於TCP管不到應用層的事,它只負責按字節流傳輸。問了火車運煤,拉燈的智力問題。。開玩笑帶過去了。。。
2)二面,是個作手遊3D的總監,一上來也是問編譯器,說不懂編譯原理,他就說你是怎麼去作的這個東西,我就說了一通,最後他說這樣先實踐再看理論也是不錯的,說他喜歡這種搞鑽研的人= =~。。。後面問到多線程須要注意的問題,問到FTP作的目的。
3)三面,見到CTO陳飛舟,竟然不認識他。。。首先也是一上來問了個編譯器的問題,函數聲明和函數定義是如何區分的,編譯器怎麼判別出來。後面問到我作的騰訊實習這個做業,說到併發策略那塊(多CPU核開網絡中斷是須要特殊網卡,特殊平臺及更高版本的linux支持)。問我有沒代碼積累,講他的代碼積累的習慣。問我之後想從事哪方面工做,跟我講他在各個不一樣產品部門間積累代碼,高效最優完成的結果。講到選擇,講到本身認同公司的價值觀。講到遊戲產業,爲何虛幻三用不起(美術的總體工業環境不行,一樣的效果圖,美術資源是暴雪美術的4倍)。講到雲風,講到雷軍和小米,看了下桌子上的小米3S工程機= =~。
拿到金山offer~ 這個offer真是很難割捨,幾輪面試官都給人印象都很好,整個西山居環境也非常不錯,自助食堂餐廳,工做間旁各類遊戲機,在珠海拿着還不錯的待遇過的應該很舒服。。。
在婉拒offer後,面試官還給了我一些在微信和網易遊戲間如何選擇的中肯意見,甚是感激。
4、2013年10月,微信,後臺開發工程師------------------------------
1)一面,一上來丟了6個算法題過來作,要四十分鐘的樣子搞定,單都是基礎算法,什麼鏈表,二叉樹之類的,其中的兩個字符串的最大公共子串沒有較好的解決辦法。問key/value緩存,它具體是如何實現的。瓶頸在哪,怎麼保證負載。後面問騰訊互娛後臺的負載均衡低耦合架構,這裏說的不是很好。問磁盤效率優化,如何作的優化,測磁盤數據怎麼測,經過什麼命令(top,iostat),iostat的參數如何去看,讀寫隊列,等待時間與服務時間的比例,空閒比例。編碼規範(命名規範,固定的括號樣式,函數註釋與關鍵註釋,異常說明,類的訪問控制規範)。問網絡編程應該注意的地方(TCP和UDP取捨),問UDP實現可靠傳輸是如何實現的。是否作過測試,拿scp來作爲對比的恰當性。問網絡方面的調試用到的命令,如tcpdump,lsof,netstat,問編譯器,如何實現的,是否考慮到中文編碼問題的解決。編譯器的實現流程。問查看一個進程的運行狀況的命令,top,/proc/pid/,問如何統計出函數的使用頻率,用valgrind。==。壓力較大的一次面。。
2)二面總監面,自我介紹,以後問我作的最好的一個項目,說了編譯器,最後再叫我介紹個項目,說了UDP文件上傳服務,問了UDP可靠傳輸的具體內容,好奇爲何速度能夠達到SCP的兩倍。問我本科爲何沒寫什麼東西,答的很差。問平時讀什麼技術書籍,本身說linux內核詳解,我說內存,介紹了一遍,最後問內存這塊有什麼用到項目中的嗎,實際上是沒有,但能夠說的更好一些的,如能夠說對動態內存的理解,線程建立實際的開銷在內存方面是有多大。說了文件中的mmap,直接I/O。問三個優勢,最大的缺點。。
3)三面hr面,自我介紹,之後自我介紹儘可能要充實點,問了拿到幾個offer,問了之後的工做意向,是否願意留廣州,問本身以爲作的最出色的一個項目,爲何是最出色的,嗯,這點要多想一想。
順利拿到offer~
5、2013年10月,網易遊戲,遊戲研發工程師------------------------------
1)筆試,這個要提下,總共三個小時的題量,並且題目都不簡單,前面30題的基礎題,每題一分,都不是好搞的。後面6個算法題,涉及數組靈活遍歷,算法非遞歸實現,BNF,鏈表,圖,布隆過濾器等。大可能是寫了一小問,難~(其實後面想一想仍是本身對知識的靈活運用能力不足吧)
2)一面,開始作的矩陣乘法測試題,反覆檢查發現就只是矩陣乘法,仍是本身想多了。首先自我介紹。介紹C++,C++和C的區別,出了個c++多態的例子,考的還算比較活的,但順利作出來了。介紹TCP協議。問了epoll,epoll的特性,LT和ET的區別。問了進程的內存佈局,因爲都有充足準備,答的均可以。出了BFS算法和擴展問題,出了線段樹的問題,最後是一個如何以最快時間找到與給定點最近的點算法,說了取整預處理思路,但數據存儲會有問題,若是問題域是無限的,又如何去設計這樣的數據結構來存儲。問了編譯器的實現。
3)二面,一上來就是四張撲克牌要算24點,當時爲毛想不出= =~,後面是給算法解決。桌面均勻放點算法,最後是要求一個點在扇形中如何隨機放的問題,說了按弧度和半徑來隨機的想法,但這樣會集中在扇形頂部,說了按頂部和底部的面積來分,這樣又不能處理連續的狀況,並且也會出現一樣的問題,最後提到連續隨機密度函數的思路但沒能給出最終正解。給個隨機洗牌算法,如何證實洗牌是隨機的。也問了編譯器,叫我介紹一遍。最後問爲何沒有hr面了,他說須要的話能夠給我安排。。我就很自覺的滾粗了~
順利收到offer
-------------------------------------------公司面試回憶----------------------------------------------------
這些即是我一路過來的面試歷程了,我不是技術牛人,能拿下這些offer主要是準備還算充足,今年就業形勢好,另外運氣還不錯,這裏談談本身是如何找工做及準備的。
-------------------------------------------找工做及準備----------------------------------------------------
首先肯定目標,本身剛出去仍是想從事技術工做,偏實幹,因此首選互聯網公司。
如何準備的話,個人想法是不能爲了準備而準備,同時也能夠當作一種學習來鞏固本身的整個技術框架體系(我的認爲,在學校仍是頗有必要把整個技術體系架好)。
那麼我會分紅算法,語言,系統三個部分來準備。
算法:
本身不搞ACM,自知也不是搞ACM的料,因此這塊仍是比較虛的,那麼怎麼較好得消解這個短板呢?
1.我首先是把weiss的那本《數據結構與算法分析》大概看了遍的,多動手,嘗試着解決後面的一些算法問題,問題不在多在精。
2.必定要多動手,訓練本身的手寫代碼能力,大可沒必要去鑽難的算法,基本算法搞定面試基本無憂。問問本身能把插入,選擇,冒泡,希爾,快排,堆排,歸併等排序正確高效地寫出來;能寫循環隊列實現;能對鏈表指針插入刪除等操做熟悉;二叉樹各類遍歷遞歸非遞歸實現,常見算法寫的出;優先隊列(堆)的實現可否寫的出;圖的基本算法,DFS,BFS,最小生成樹,最短路徑;熟悉貪心,分治,動歸,回溯等算法設計方法及適用場景;深入理解迭代跟遞歸的區別。
3.熟悉一些常見的高級數據結構,如紅黑樹,B+樹,線段樹,跳錶,並查集等,不要求實現,原理、基本實現流程知道便可,如紅黑樹的是怎麼插入刪除結點的(你叫面試官現場給你寫個紅黑樹試試= =~)。
4.查漏補缺,能夠看《編程之美》來啓發本身的靈活運用能力,看JULY的博客來看本身可否解決常見的一些算法面試題,什麼微軟100題之類的。
語言:
因爲日常多用C++,因此準備的也可能是這塊的。
1.STL是否熟悉,固然最好是本身能夠嘗試寫寫與STL兼容的容器,算法之類來增長理解,瞭解vector,list,set,map的底層數據結構實現。
2.C++語法機制是否熟悉,我看的是《C++ Pimer》和《c++ 對象模型》,對象模型畫的出嗎;多態是如何實現的;異常框架是否知曉;構造,析構,虛函數的關係;
3.適當瞭解C++11新特性,如move語義,auto類型推斷,lambda表達式等。
4.固然語言終歸是工具,是聯繫算法邏輯和系統的橋樑,仍是須要在本身的項目中去總結怎麼用好C++這把雙刃劍。
另外後臺開發,腳本語言也是須要熟悉,如SHELL,經常使用命令要知道吧;基本的正則要會寫吧,這些對工做效率也有很大提升的。
系統:
這部分就比較雜了,我的比較喜歡對技術究根問底,因此彙編,編譯原理,系統內核實現,網絡原理實現都會有涉及。好比:一個程序如何編譯成彙編語言到連接成可執行文件,程序如何被裝載運行,操做系統作了些什麼,程序的內存佈局是怎樣的,棧是如何分配的,堆是如何擴張的,文件映射內存在哪,操做系統是如何實現的。虛擬內存到實際物理內存是如何轉換的,硬件負責什麼,操做系統負責什麼,操做系統怎麼管理內存又如何影響到實際程序的執行,文件是什麼等等。下面我會例舉幾個大點。
1.彙編,程序連接這些比較雜的(固然這些看我的興趣),我會看《深刻理解計算機系統》,這本書講的不錯,= =~我只是選着看了一點點。
2.系統內核這塊,我看的是那個女人拿個大盤子的《Linux內核詳解》,主要看了內存,文件這幾塊,真正從代碼級來理解一個操做系統,也只是淺嘗則止,沒有進行深刻研究。另外像epoll這種幾乎必問的能夠考慮看看內核源碼,管道,FIFO,文件映射,共享內存等是如何實現的。
3.系統調用接口,posix編程環境這塊就是兩個大部頭,《UNIX環境高級編程》和《UNIX網絡編程》,這些對個人實習及一些項目的編寫都幫助挺大,不是說要去記這些接口,只是要有個總體把握。
4.計算機網絡這塊看到就是《TCP/IP詳解-協議》,瞭解從鏈路層到應用層的協議,真正的理解TCP的優缺點,爲什麼須要有UDP。
5.再就是對一些系統架構上的東西要有了解,如負載均衡有哪些策略,高性能服務器須要注意什麼,什麼是C10K問題,key/value緩存,事物處理這些。
我一直以爲不是爲了找工做而找工做,若是同時這又是種提升和積累,何樂而不爲呢?
-------------------------------------------找工做及準備----------------------------------------------------
總結下來就是: 明確目標->選擇方法->踏實準備
好了,到這裏也差很少了,個人不必定適合後來者,若是能有一點借鑑意義,那就是我最大的安慰了。祝你們都找到滿意的工做~html
=================================================================================================================================mysql
【天道酬勤】 騰訊、百度、網易遊戲、華爲Offer及筆經面經linux
應屆生上泡了兩年,一直都是下資料,下筆試題,面試題。一直都在感謝那些默默付出的人。寫這個帖子花了我兩個夜晚的時間,不是爲了炫耀,只是爲了能給那些「迷惘」的學弟學妹,一點點建議而已。你們何須那麼認真,更不必說髒話。我不在意大家怎麼評價我。只要有人以爲帖子有用,我就欣慰了。謝謝你們,別說髒話,以和爲貴。飲水思源,謝謝應屆生上默默付出的師兄師姐,謝謝那麼多份筆試題,面試題,沒有這些資料,就沒有如今的我。真心感謝。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
面試完畢,已跟網易遊戲簽約。遂敲一份筆經面經,記錄下面試通過。相似於用日記記錄本身,同時但願對師弟師妹有必定幫助。不是炫耀,只是但願攢RP,但願各位不要鄙視我。
正所謂「飲水思源」。
小弟來自廣州華南理工大學,計算機科學與工程學院。給華工計算機打一個廣告吧,呵呵。。。
------------------------------------------------------------------------------------------------------------------------------------------
一 騰訊(2011 4月):(所報職位:後臺開發工程師 – 深圳)
騰訊是我一直準備的公司,因此對筆試的知識點及面試側重點有必定的瞭解。
@筆試
一份2個小時卷子,挺基礎的,具體什麼題記不清楚了。涉及網絡原理,c/c++語言基礎及高級機制,基礎數據結構及算法,數據庫,linux基礎,linux下可執行文件組織機制(內存佈局,.text,.bss,.data組織方式等)。
由於一直在準備,因此這份卷子答起來,相對比較順利。成績有80+,這個爲經過實習面試起決定性做用。
今天筆試卷子能夠勾選bussiness unit(BU),果斷勾選B3(互動娛樂)。
@一面
我習慣面試帶簡歷(由於但願面試官多注重本身的項目經驗,少問些算法,體現下本身優點吧),見到一面面試官,直接雙手遞上一份簡歷。果真面試官對着簡歷開始問,看着簡歷中寫到的技能一項項問。
c++ 問了多態實現機制(這個問題多次被面試官問),直接把insight c++ object models書裏面的內存佈局圖搬上去,面試官很是滿意。
tcp/ip原理 ,問了TCP狀態變遷圖,TCP/IP接受發送緩衝區相關概念。
對Unix環境編程、網絡編程問的較多,不過都是Apue,Unp上面的,從容應答。
linux kernel,問了一些內核源碼相關的概念,問得廣而淺,不難回答。
幾個綜合問題,1 QQ飛車新用戶註冊時,如何判斷新註冊名字是否已存在?(數量級:幾億)
2 編寫高效服務器程序,需考慮的因素?
3 Epoll機制相關概念(Epoll與Select機制區別),這個概念許多面試官都會問起
一面答得不錯,加上筆試成績不錯。面試官當場說了一些表揚的話,並把他QQ留給我,說之後什麼事直接諮詢他。我知道本身確定過了,後面面試走流程吧。^_^。
@二面
一個和善的大叔,35-45歲,一直在笑。從簡歷開始,介紹技能,介紹項目經驗,對筆試時的系統設計題作改進優化,隨便說了下本身想法。
@HR面
隨便聊天。
拿到騰訊實習Offer,並在騰訊暑期實習兩個月。
2、百度(2011/10) (所報職位:軟件研發工程師 – 深圳)
對百度的面試一直很猶豫,不知是否應該參加。主要兩個緣由,一是騰訊已經過實習拿到Offer,二是以爲本身算法不好,怕被鄙視。直至考試前一天,都沒有肯定是否應該參加。幸運地是,最終克服本身的懼怕,走上了百度的筆試考場,有機會體會百度的面試。
面度的筆試卷子,因部門而異。我報的軟件研發,RD-3的卷子。
@筆試
筆試題回憶版
一簡答題(30分)
1 對遠程linux/unix系統進行遠程操做,一般的途徑是採用終端軟件經過ssh登錄遠程系統進行操做,可是在網絡發生中斷時,Linux/unix端運行的程序將會中斷。
請闡述這種問題發生的原理、經過何種路徑能夠避免這種問題、以及闡述可避免這種問題發生途徑的原理
2 最小堆 插入,刪除 編程實現。
3 不知所云。
二算法與程序設計(40分)(算法可使用僞代碼描述)
4 給定一個數字編碼N,大多數狀況下能夠找到一個數字編碼M,其位數與N相同,各位數字之和與N的各位數字之和相同。而且M是大於N的數值中最小的一個,也可能M不存在。
如:N=134,則M=143.如N=020,則M=101。形式化表述爲F(N)=M。若是M不存在,則F(N)=-1。
要求給定算法計算F(N)序列。
5 給定序列s={a1,a2,…,an};1)構造算法求全排列。2)構造算法求全部組合。
三 系統設計題(40分)
這個有時間再慢慢回憶吧。
這個筆試能夠用超爛來形容,勉強40分(後面面試時,卷子上見到)。筆試當天是星期日,當晚手機沒電,充電開機後有兩個未接020-*。由於其餘童鞋都是短信通知,因此沒太在乎,本身沒收到短信通知,很清楚筆試沒過,遂決定霸面。
星期一:霸面,霸終端研發深圳,見到面試官,但面試官一直忙於找我筆試成績,我就一直推銷本身,項目經驗如何,linux如何,內核如何,TCP/IP網絡如何,嵌入式開發如何。終於面試官問了幾個小題,寫了幾個編程之美上面的小題。答的還能夠,但由於霸面,他一直不爽我。
此次霸面很是失敗,本身也備受打擊。
失落的星期一晚上晚,無心中又收到020-*的電話,接起來,對方告知是百度公司,通知星期二去一面。
星期二:哥今天是有通知來一面,不是霸面了。NND。
一面:設計數據結構及改進。我作的很差,我坦言數據結構及算法通常,由於本身忙項目,但項目經驗及linux,網絡知識較豐富。遂轉問linux及內核源碼,tcp/ip原理及實現細節。
他拿着筆記本上網查問題,我壓力大啊。問題廣而深,幸虧linux掌握的還能夠。
記起來的問題有,linux操做系統做用,內存管理在源碼哪一個目錄(mm),說些進程調度內核實現大體機制,TCP/IP接收發送緩衝區,內存管理實現機制。又對項目提問題,要求優化。
面試快結束時,面試官直言我數據結構及算法掌握的不熟練,之後但願強化。雖然知道這可能意味被淘汰,但仍是特別感謝他,遂說了N多謝謝,但都是真心的。由於對比他和霸面的面試官。
星期二晚上一直沒通知,我等到12點就睡了。失望,絕望。雖面試時知道本身可能被淘汰,但仍不肯接受這個事實,但如今不得不接受,帶着遺憾入夢。
星期三晚上,沒有期待的時候,不經意又是百度的通知。那一刻,死裏逃生,我想尖叫。
星期四:二面:兩個算法都是編程之美的。其餘就是linux、內核,網絡、項目,高效服務器,如何預防攻擊等題目,發揮的不錯。面試官一直微笑。我知道三面有了。
星期五:三面:萬幸不問算法,問意向,項目經驗,項目細節及可否優化,linux內核等。由於項目確實是本身完成的,因此答的還不錯。
星期日:收到Offer通知。但職位是北京的研發。
3、華爲:(所報職位:操做系統工程師 – 深圳)
@機試
給一個數組,求數組中比平均數大的數字個數。
這題是在考咱們的編程能力嗎?⊙﹏⊙b汗。
@一面
主要就項目問。
@二面
羣面。技術,非技術總16人,分兩組,討論曹操,劉備,孫權,諸葛亮,誰適合當總經理。這個環節,技術的一直被動。Finally,咱們組淘汰了兩個(都是技術)。
@三面
上機性格測試,104題。這個沒據說刷人的。
@四面
跟兩個「老男人」隨便聊,聊項目,聊將來方向,聊華爲操做系統發展,聊linux操做系統及實現,很廣但很淺。
4、網易遊戲面試 遊戲系統架構師
@筆試 10.22
網易遊戲筆試,三個小時的題,題量仍是很是大的,設計計算機各們核心課程,操做系統原理,c/c++,基礎數據結構與算法,數學推理題,網絡等。題特別多,題特別雜,幾乎沒有童鞋作完吧。多多益善吧。經歷過考研,一些基礎課程仍是蠻紮實,前40分的題答的不錯,後面的算法題作的通常,我只會最笨重的方法。
@一面 10.24晚上通知11.1下午2點面試
最次給各位同窗提個醒,簡歷必定要多帶幾份,以備不時之需。他要求2份,我帶了5份,份份都起做用了。
通知2點面試,1:50簽到,開始作題,矩陣相乘,差很少10分鐘作完。開始等一面。
大概2:40通知一面,2個面試官。要求先自我介紹,其次問了一個項目,以後問了一句你是哪裏人?你目前拿到哪些公司offer?以後一面結束,不足10分鐘。沒問任何技術,偶是至關不淡定。
@二面 11.1晚上通知11.2下午3點面試
2點半左右到網易準備。大概3點10分,一個女人帶我進面試房間。當時緊張了,這是個人第一個女技術面試官?
進去後,2男1女。面試官先自我介紹,1個大話西遊II主程序,1個天下II主程序,靚女姐姐是HR。二面+HR面一塊兒面的。
問了不少c++高級機制,問了2道基礎算法吧。題目回憶以下:
1 構造函數能夠調用虛函數嗎?語法上經過嗎?語義上能夠經過嗎?
2 析構函數能夠拋出異常嗎?爲何不能拋出異常?除了資源泄露,還有其餘需考慮的因素嗎?
3 c++中類型轉換機制?各適用什麼環境?dynamic_cast轉換失敗時,會出現什麼狀況?(對指針,返回NULL.對引用,拋出bad_cast異常)
4 洗牌算法,如何證實算法是隨機的
5 100萬個32位整數,如何最快找到中位數。能保證每一個數是惟一的,如何實現O(N)算法?
這道題是編程之美或編程珠璣上的。
這道題使用位圖,須要空間複雜度是512M。
6問了一個他們感興趣的項目,關於gcc插件的,聊了比較久。
7 拷貝構造函數做用及用途?何時須要自定義拷貝構造函數?
8一些題目記不清楚了。
9聊待遇。
@簽約 11.2晚上收到經過面試通知,通知11.3下午4點簽約。
網易遊戲不一樣部門不一樣職位不一樣面試面試內容不一樣,但都注重基礎知識。還有的一面題目是BFS,這個應該特別容易了,但還有一些童鞋完成的很差。
若是各位師弟師妹,若是以爲此貼對大家有點點幫助,就祝福下我吧,幫我攢點RP吧,多謝。
關於書單,列表以下:
一直準備的是騰訊後臺開發,因此針對性很強,不免有偏見,望見諒。
先貼下騰訊後臺開發要求的技能,這些技能要求是我讀書的指南針。
遊戲開發類
後臺開發工程師返回>>
職位描述:
負責遊戲相關後臺系統的開發和設計。
1
職位要求:
1、 有Unix/Linux操做系統下的C/C++項目的2年以上開發經驗;
二、 熟悉網絡編程;熟悉Linux下的mysql開發;
三、精通TCP/IP協議及編程,熟悉互聯網應用協議;
四、熟悉面向對象的大型分佈式系統設計與開發,瞭解中間件的技術以及基於中間件的開發模式;
五、全面的軟件知識結構(操做系統、軟件工程、設計模式、數據結構、數據庫系統、網絡安全);
六、 具有良好的分析解決問題能力,能獨立承擔任務和有系統進度把控能力;
七、 責任心強,良好的對外溝通和團隊協做能力,主動,好學。
有如下經驗者優先考慮:
1、大型分佈式系統設計開發經驗;
二、遊戲後臺系統開發經驗。ios
這其中大部分書都是研1下,研2上購買的。大部分已讀完。一部分書反覆讀3遍以上。好比apue,unp,tcp/ip v1等。
重點圈幾本推薦下:(*號書籍 強烈推薦)
c/c++:
初級 c語言解惑/C和指針
專家:C專家編程 *
c++ primer/effictive c++/inside c++ *
tcp/ip書籍
tcp/ip v1(tcp/ip 詳解 卷I) *** 卷2/3不必買,也不必看,這本卷1主要將tcp/ip原理
unp *** 這本主要將linux socket編程API,兩本結合看,效果最佳
unp2(unix 網絡編程第2卷) 這本主要講IPC,有時間能夠看看
linux書籍:
apue ***
深刻理解linux內核 *
其餘系列linux源碼書籍,適量看便可。
應試算法及智力題:
編程之美、編程珠璣
海量數據處理:
這個網上收集資料,或者有時間我傳上來。
數據結構:
數據結構與算法分析-C語言描述 Weiss *
考研數據結構1800紅色題集 (這本書對於向我這種數據結構基礎薄弱的童鞋,幫助很大)
差點沒忘了2本至牛的書籍:
彙編語言程序設計(絕不誇張的說,這本書改變了我)c++
深刻理解計算機系統
其餘的沒什麼了,這些書都掌握了,足夠了,O了。
我對嵌入式開發蠻感興趣的,因此上面photo中也包含部分嵌入式書籍,不感興趣的能夠忽略。
最後,談一談廣研和深圳騰訊的一點面試感覺。
廣研:
筆試:6小題,設計基礎數據結構:鏈表,樹,字符串。很基礎,但也很考驗C語言功底。不要說你會,要熟練,要確保你寫的代碼無誤且編程風格優美。這樣才能增長籌碼。保證你後面順利經過。
一面:講解筆試卷子解題思想,講解項目。面試過程很隨意,面試官主要側重linux,c++,網絡。
二面:談一談項目,就項目問一些問題。問一些他們實際中遇到的問題,你會如何解決? 也是比較隨意。
騰訊深圳:
筆試: 數據結構、tcp/ip、操做系統、計算機底層機制(包括堆棧如何組織等,apue有講),20個多選,每題3分,多選少選不得分。40分大題。每空4分,10空。大題基本是送分的。
這個筆試我得了82分,42+40, RAID磁盤陣列,b樹/b+樹,堆,幾個問題沒把握,錯了6個選擇題。
82分,一面面試官說算不錯的分數了。
一面: 可能由於筆試成績不錯,因此面試過程比較順利。2頁的簡歷,他只看了第1頁的1/2,其它的都沒看。
就我簡歷所列技能問了幾個問題, tcp/ip狀態轉換,socket api,高性能遊戲服務器須要考慮哪些瓶頸,我主要就tcp/ip回答的,好比三次握手隊列,數據接受/發送緩衝區等。linux也問了幾個 proc機制及做用,我直接跟他談 ls /proc內核如何生成結果,這個是proc文件系統源碼所談,他比較滿意。你使用的IPC及比較? epoll模型及優缺點?(這個年年必考)主要有3點,對應於select的3個缺點:1 鏈接數受限 2 查找配對速度慢 3數據由內核拷貝到用戶態。C++主要問動態如何實現。直接畫內存佈局,既inside c++所講,面試官仍是比較滿意。還問了一些大數量的問題。因爲以前準備過,因此答的還不錯。
一面過程當中,面試管屢次提到他對我很是滿意,我也適當的表達了實習後會留職。他把Q號留給我,說之後有什麼事,就在Q上聯繫他。那一刻,我就知,我應該能夠去實習了。呵呵
二面:比較隨意,本身講項目。講完項目,還有點時間,就着筆試附加題問了些問題。後又結合QQ相冊問了些比較難的問題,勉強答了幾個。
hr面:是我全部面試中最慘的一次,因爲以前浩哥面hr很隨意,因此我就沒準備了,由於有一些其餘事要作。中午沒睡好,4點去面,頭暈暈的。被hr問的好慘。主要是談人生。有幾個問題答的很差:
你是一個什麼樣的人?
你究竟是一個什麼樣的人?
MD,這讓我想起另外一個極品噁心的女人,因此這2個問題沒有發揮好。面試