2014年計算機求職總結--面試篇
又一年實習招聘陸續開始了,這裡分享一下我在2013年實習招聘和秋季招聘中的一些面試經歷,希望能對找工作的同學有所幫助。
2013年面試過的公司有蘑菇街、網易遊戲、阿里巴巴、騰訊、百度、大眾點評、人人網、雅虎(北研)、WAP。
一、蘑菇街
一面(實習)
現場面試。先問了一下實習經歷以及研究生期間做的專案,面試前一定要好好回顧一下這些。因為我申請的是搜尋引擎和儲存方向,就問了我對大資料的理解。還問了一下為什麼讀研,千萬別說人家都讀我就跟著讀,要從深層次上分析讀研的優勢,讓面試官覺得你是經過深思熟慮選擇讀研的。然後出了個小演算法題,漢諾塔遞迴,演算法雖然簡單,但是實現的漂亮很難,程式碼風格、可讀性、可擴充套件性、測試用例等等都要好好考慮。然後又問了些平時關注什麼技術,雖然不是直接技術問題,但是這類問題也不能忽視,這些問題可以反映出你的知識面、對技術的熱情等等,這也是公司很看重的。後來又回過頭來問了一點專案,問如果你現在再架構一次,你會怎麼做等等,所以,做過的專案不僅要知道專案的難點在哪,也要知道當時做專案時的不足等等。整個過程差不多也就半小時,總體表現很差。
二面(實習)
現場面試。面試內容印象不深了,不是純技術面試,問一些性格了、團隊合作、實習時間、以後是否留在蘑菇街等等。
二面後就沒訊息了,可能總體面試結果不好,也可能面試官覺得我以後不是很想在蘑菇街工作,所以,想要拿到offer一定要表現出自己的誠意,比如為什麼選擇該公司,能夠分析出公司的優勢、競爭力等等。
二、網易遊戲
一面(實習)
電話面試,HR面,這個有點沒想到。
二面(實習)
現場面試,技術面。
三面(實習)
現場面試,技術面。
現場技術面試都是40分鐘左右。這裡我就不方便透漏具體的面試題了。考察知識涉及到c++、作業系統、演算法、圖形學、數學等等,考察得很全面。
最後拿到實習offer,線上遊戲部門,並通過實習拿到秋招offer。
三、阿里巴巴
一面(實習)
電話面試。首先問了一下之前在淘寶實習的情況。實習有什麼感想,實習接觸的東西和學校接觸的有什麼區別,等等。專案中你遇到的最難的事情是什麼。選擇開源實現時,如何評估。後面就是基礎技術。c++中虛擬函式是怎樣實現的。為什麼要有虛擬函式機制。什麼情況會使用多型機制。string的記憶體怎麼實現的,長度的動態變化怎麼處理,為什麼兩倍擴充套件。string a; string b = a;這時會不會有記憶體拷貝相關的東西。如果你自己設計一個類,管理可變長度的字串,你怎樣考慮優化。引用計數的實現,效率。STL庫瞭解的多嗎。map是怎麼實現的。iterator++和++iterator區別,哪種效率高。喜歡研究還是工程。實習時間問題。程式的編譯時間和什麼相關。怎麼樣減少編譯檔案依賴。.h和.cpp有什麼區別。inline問題。
二面(實習)
現場面試。技術總監面的。聊了些專案,問了些c++底層實現,垃圾收集,搜尋引擎等,寫了個簡單的程式碼。然後另一個技術總監,問了下GFS,外部排序問題,記憶體管理等。
三面(實習)
現場面試。前兩面是所應聘部門的面試,這一面是阿里巴巴集團統一的面試。應該也是個總監。記得也不多了,問的比較抽象比較底層的東西,資料庫各種索引優缺點,紅黑樹,STL的設計是面向函式還是物件導向以及為什麼這樣設計,函數語言程式設計等等。
拿到實習offer,阿里雲部門。
終面(秋招)
雖然沒有去阿里實習,但是當時拿到實習offer的同學秋招可以直接進入終面,還是可以省很多精力的。
終面基本都是一個技術術總監,同時旁邊還有一名HR。先是技術面試,同時HR也會在旁邊觀察你的表現吧,最後HR也會問幾個問題。先是介紹一下自己的優勢,以及今後的職業規劃,這樣的問題也應該好好準備,要讓面試官覺得你是個有目標有追求的人;介紹一下簡歷上提到的浙大的PAT考試認證;談一下在網易實習的專案中的難點,專案一定要好好回顧,自己負責的東西,專案難點什麼的;介紹一下常用的垃圾收集演算法;
一個演算法題,一個農夫,一隻狼,一隻羊,一棵白菜過河的問題。。。大家一般都見過這個,如何用寫程式解這個問題;講一下堆排序的思想;講一下動態規劃的思想,並舉例子解釋;闡述一下c++記憶體物件模型中涉及到的一些關鍵問題;介紹一下MapReduce的思想;介紹一下搜尋引擎的實現;給你兩三個月的時間,如何去學習一門技術。HR問題:說一下自己的優點,以及你與周圍的人相比的優點、不足。選擇一個公司你會考慮哪些因素。
拿到秋招offer,阿里雲部門。
四、騰訊
一面(實習)
現場面試。時間比較緊張,每人只有半個小時,連自我介紹都沒有。第一個問題解釋一下大小端模式,並寫出判斷系統是大端還是小端的程式碼。接下來是一段程式碼判斷有沒有問題,一個函式返回了區域性變數的地址,並在外面訪問了。然後是virtual函式底層實現機制。然後是sizeof問題,有虛擬函式的類的大小,64位情況下的大小等等。然後問了一點點網路的,使用UDP傳輸檔案,這個主要是要保證可靠性,在軟體層使用類似TCP的機制,如在UDP包中新增唯一編號,需要接收端確認等,接收端要對資料包排序等。解釋一下頁式記憶體管理。然後問取一個變數的地址是虛擬地址還是實體地址,顯然是虛擬地址,不多解釋。最後是一個程式碼實現,用一個陣列來實現一個連結串列插入刪除查詢等功能。最後問了一下筆試卷子中的題目。總之,時間太緊。
二面(實習)
現場面試。筆試和一面表現還可以,二面面試官就沒怎麼問,隨便聊了一下,騰訊招聘基本上是哪個部門要人,就由哪個部門的人面試。我的面試官是騰訊遊戲的。
三面(實習)
現場面試,HR面試。印象不深了。為什麼選擇騰訊,有沒有其他offer,期望薪水多少等等。
拿到實習offer,騰訊遊戲部門。
一面(秋招)
現場面試。記不清了。好像主要談了些專案。
二面(秋招)
現場面試。記不清了。面的時間不是很長,聊了些專案。
三面(秋招)
現場面試。HR面。記不清了。討論期望薪水什麼的。
拿到秋招offer,騰訊遊戲部門。
五、百度
一面(提前批)
電話面試。
先是自我介紹。如何返回連結串列的第四分之一個結點。網路協議模型幾層?鏈路層是做什麼的?如何判斷兩個機器屬於同一個子網路?什麼場景下需要判斷兩個機器是否屬於同一個子網路?一個陣列,給出一個數,找出陣列中哪兩個元素的和等於該數。給出一個詞典,找出詞典裡所有的變位詞(anagram),分析時間複雜度。堆和棧的區別。大量的new會導致什麼問題?堆記憶體如何管理記憶體?給出兩個檔案,每個檔案50億URL,每個URL64個位元組。找出兩個檔案中共同的URL。磁碟上的檔案不小心刪除了,如何找回來?能恢復檔名嗎?最後就是問還有什麼問題需要問面試官。
二面(提前批)
電話面試。自我介紹。看了哪些書?
class A
{
public:
int a;
staticint b;
voidf1();
staticvoid f2();
virtualvoid f3();
};
這個類的大小是多大?static成員變數如何儲存的?static成員函式和普通函式有什麼區別?百度搜尋提示功能如何實現?一個整數陣列,長度為n,每個數的範圍都是1~n+2,每個數字不重複,亂序的,求缺失的兩個陣列。TCP的擁塞視窗功能。TCP的三次握手過程,為什麼需要三次握手,TCP如何實現可靠通訊。資料庫的索引,各種索引的特點。B+樹的插入過程。一個包含很多單詞的檔案,每行一個單詞,查詢一個單詞是否在這個檔案中。有什麼問題需要問面試官。
三面(提前批)
電話面試。自我介紹。看哪些書。auto_ptr功能,為什麼要使用它。介紹c++的型別轉換,為什麼要使用。
講一下垃圾收集,Java的垃圾收集是怎樣的。介紹一下Map-Reduce,中間會有哪些問題,一般怎樣解決MFC的CButton如何根據自己的需要的樣式重繪。資料庫索引,為什麼需要索引,常用的索引有哪些,聚簇索引是怎樣的。如何判斷一個連結串列是否有環。介紹一下實習經歷。為什麼選擇百度。你的職業規劃是怎樣的,對哪些技術感興趣。你用過的百度產品有哪些,哪個產品感興趣。你覺得自己有什麼優勢能夠進入到百度。你覺得你哪些地方需要去提升。
到9月初收到秋招正式offer,第一個秋招offer。
六、雅虎(北研)
一面(秋招)
先問了一下筆試題中的一個演算法題,題目是這樣的,兩個長度相等的字串,每個字串中刪掉一個字元,剩下的字元順序不變,如果這樣操作後得到的兩個結果相同,就說是原來的兩個字串是相似的,實現函式bool isSimilar(char A[], char B[], int length);筆試時直接用的LCS,複雜度是O(n^2)。後來跟同學討論得知了一個O(n)的演算法,給面試官說了一下。筆試題回去之後一定要好好討論總結一下,如果是演算法題,基本上面試都會再問到的。看我簡歷上寫的c++很好,下面就問了一些c++的問題。static有哪些作用、虛擬函式相關的一些東西、建構函式是否可以為虛擬函式、解構函式是否可以為虛擬函式、靜態成員函式是否可以為虛擬函式等等,以及虛擬函式帶來的sizeof問題等等。問了一下程式與執行緒的比較、以及多程式與多執行緒的比較、多程式與多執行緒比較。然後問了一個演算法題,已知一個randM函式,可以隨機返回1~M中的一個數實現函式int
randN(int n)。寫程式碼一定要注意各種細節。
二面(秋招)
也是先問了一下筆試的演算法題,最後兩個都問了。最後一題是給出一個字串求所有與該字串similar的個數,面試官覺得我的程式碼有點問題,我就解釋了一下。又問了一下那個isSimilar,我說有O(n)的演算法,然後讓我寫程式碼實現O(N)的isSimilar函式,這個沒什麼問題。面試官又看了我之前LCS的程式碼,裡面有小錯誤,居然還有兩處,慚愧。然後問了一下c++,畫圖說明c++虛擬函式的實現機制、虛表的編譯器實現、虛擬函式的開銷等等。問了一下垃圾收集、搜尋引擎、B+樹。簡單問了一下MapReduce。問了一點點專案,以及與GPU繪製相關的一些東西,如CPU與GPU功能的區別等等。
三面(秋招)
印象不是很深刻了,一開始好像也問c++了,具體記不太清了,記得問了一個字串雜湊函式有哪幾種方式,然後舉例說明一下MapReduce工作原理。後面主要是一個負載均衡的系統設計問題。比如有伺服器S1,S2,S3,S4有客戶端c1,c2,c3。每個客戶端和伺服器的通訊只有一個介面,int send(event),向伺服器傳送一個請求,伺服器處理請求返回處理結果。問題:1)當有伺服器down掉的時候,要保證客戶端的請求仍能夠被處理2)當有伺服器由down恢復正常工作的時候,客戶端要能知道3)伺服器的負載要滿足一定的比例,比如1:2:3:4。這個題討論了比較多的時間。
四面(秋招)
先是英文自我介紹,我英語爛的讓面試官很無語。後面就是中文聊天了。問了一下專案,專案如何改進等等。問了一下MapReduce原理。問了一個海量資料處理問題,假設雅虎網站上一天中有1000萬個不同的廣告共投放了100億次,找出投放次數最多的100個廣告,這個應該大家都見過的。問了一下與周圍同學相比你的優點和缺點是什麼,以後的職業規劃。然後就是聊一些雅虎的東西了,面試官說了很多,我就一直在聽。結束了,讓回來等通知。
開始收到電話通知面試通過,等待美國總部稽核。後來一直沒訊息了。應該是面試表現很普通,當備胎了。
七、大眾點評
一面(秋招)
現場面試。先讓寫了一個c++引用計數的類。然後問了些c++問題,專案。具體的記得不多了。
二面(秋招)
現場面試。大部分時間面試官就是跟我閒談,聊一些我已經收到的offer的情況。
結果被刷,不知道是不是因為自己說的期望薪水太高。
八、人人網
印象不深了,主要是考察演算法,感覺面試官都是搞過acm似的。拿到offer。
九、WAP
英語面試,我英語很爛,好像日本面試官英語也不是很好,面試過程中很少有交談,就是現場寫程式碼,面試官旁邊有很多列印好的演算法題目,寫得正確、越多越好。只拿到實習offer。
相關文章
- 18年求職面經及總結求職
- 前端計劃——面試題總結-HTML篇前端面試題HTML
- 計算機網路面試問題總結計算機網路面試
- 計算機系應屆生求職指北計算機求職
- 2021秋招面試計算機基礎總結 - 資料庫,Redis面試計算機資料庫Redis
- 2021秋招面試計算機基礎總結 - 作業系統面試計算機作業系統
- 深入Java虛擬機器之 -- 總結面試篇Java虛擬機面試
- 亞洲求職面試攻略求職面試
- 2021秋招面試計算機基礎總結背誦版(還在寫)面試計算機
- 求職遇到的面試題目求職面試題
- 邦芒面試:助你求職成功的面試技巧面試求職
- 2021秋招面試計算機基礎總結 - 演算法,資料結構,設計模式,Linux面試計算機演算法資料結構設計模式Linux
- [前端 · 面試 ]HTTP 總結(三)—— HTTP 請求方法前端面試HTTP
- ResumeGo:LinkedIn如何影響求職者的面試機會Go求職面試
- 8年測試工程師+面試官——寫給求職心切的求職者工程師面試求職
- 計算機程式設計心得總結計算機程式設計
- 計算機面試重難點之計算機網路面試計算機網路
- java面試--計算機網路Java面試計算機網路
- 計算機考研經驗總結計算機
- 面試總結面試
- 牛客特製2020名企校招筆試面試求職攻略-技術篇筆試面試求職
- 面試帶你飛:這是一份全面的 計算機網路基礎 總結攻略面試計算機網路
- Linux面試常問命令及求職心得Linux面試求職
- 【面試篇】寒冬求職季之你必須要懂的原生JS(上)面試求職JS
- 【面試篇】寒冬求職季之你必須要懂的原生JS(中)面試求職JS
- 計算機網路實驗總結計算機網路
- VUE 面試總結Vue面試
- 面試總結(一)面試
- Servlet面試總結Servlet面試
- UC面試總結面試
- Android面試總結Android面試
- java面試總結Java面試
- 面試技巧總結面試
- kafka面試總結Kafka面試
- 面試題總結面試題
- iOS 面試總結iOS面試
- nodejs面試總結NodeJS面試
- golang 面試總結Golang面試
- 備戰AI求職季 | 100道機器學習面試題(下)AI求職機器學習面試題