記一次阿里實習生電話面試

塵埃092發表於2014-03-20

昨天晚上8點的一個杭州打來長串的電話號,終於開始了我的阿里巴巴實習生面試之路。

因為學校以前一個大四學長內推的原因,所以淘寶的官方校園實習生招聘,我就沒有投遞,按袁茁學長當時的話說:"走那個還不如我這邊來得快。" 的確,阿里的官方筆試還沒有開始,我的人生中的第一次面試電話就來了,把第一次獻給阿里,應該還不算很差吧。。。。哈哈哈,邪惡了。

電話面試我的是淘寶的文景GG,google了一下,應該是叫姚偉斌工程師:)。由於是第一次面試,所以沒有怎麼問技術上的細節,大概就是東扯西扯地瞎胡談了一下。

我由於全程我也沒有錄音,所以現在只能回一個大概,BTW,我面試的是淘寶的底層開發團隊,所以涉及的知識面基本都是C層面的東西:)




文景:今年是大三下嘛?

我 :恩




文景: 看你github做了一個MiniC的編譯器,能簡單說一下嘛?

我 : 恩,做了一個TOY級別的C編譯器,功能很弱,但是前段後端都是自己寫的,從詞法分析到語法分析,語意分析,再到後端虛擬機器,語法和語義分析我是做了一個遞迴下降分析同時新增語義並生成四元組,後來發現四元組離中間程式碼還有一定差距,於是又@#$¥%……&&此處省略N多字,通過這個簡單的編譯器學到了很多,另外也認識到了C語言和C++/C#/java這些語言底層實現的區別,@#¥%¥……&*此處再省略N多字。




文景: 你自己構造了一個虛擬機器,那你知道虛擬有什麼優化技術嗎?

我 : LLVM嗎?...優化的話,應該是從虛擬機器自身去做優化嗎?....(這問是面試唯一不太對答如流的了)




文景: 談談你對單程式在記憶體中分配,堆和棧這些的認識。

我 : 從低地址到高地址,exec()出來main函式開始,程式碼段,全域性變數區,堆的向上增長,當然其實是從記憶體碎片中分出來些空間,棧的向下增長等等。。。。。。




文景: 還有其他部分了嘛?

我 : 額,平時也沒有刻意去記這些,不知道您指的是哪些?




文景: 靜態庫和動態庫是怎麼樣的?

我 : 動態庫程式碼是執行以後程式碼段跳轉到共享的程式碼段,靜態庫的程式碼是編譯到每個程式的私有程式碼段裡的。




我 : 其實我對網路程式設計也挺感興趣的,自己實現的網路五子棋對戰,不過我打算寫一個網路對戰平臺,寫成一個真正的網路伺服器框架。。。

文景: 哦?你說說。

我 : @#$¥%……&**(於是,我就把以前老薑給我說的那個全國廣發銀行都在用的一套系統的大體框架撂給了他,應該還算滿意吧)




文景: 恩,不過你知道,你那個連線層,如果伺服器壓力比較大,客戶端同時訪問較多,有什麼好辦法嗎?

我 : 恩,Web伺服器的話,應該用的都是連線池技術,執行緒池等等。。。@#¥%……




文景: 恩,你平時開發的工具都用哪些?

我 : unix的話,就是tmux+vim+gdb+ddd 大概這些,Qt 用的是自帶的IDE, MFC VS也都用過。




文景: 你能說說VIM操作的快捷鍵什麼的嗎?

我 : (我就把我知道的說了,cw什麼的一些中級命令,再高階的命令平時也不用,就沒說。)




文景: 你能說說GDB除錯什麼的嗎?

我 : N S FINISH U P X THREAD INFO WATCH TTY RUN 等等一些。。。




文景: 看你有的程式碼註釋用的拼音,你英語差嗎?

我 : 啊,那個是無意瞎寫的,英語不差,四級500多分,平時做應用開發直接上官方E文API文件無壓力。




文景: 你對演算法這方面瞭解?

我 : 大一大二做了一段時間ACM,也獲得了省賽的銀獎,不過個人興趣並不再刷題上,對真正的工程更感興趣,不過ACM的確讓我收穫了很多。




文景: 紅黑樹瞭解嗎?

我 : 自平衡的二叉查詢樹,和AVL類似吧,AVL我以前實現過,四種旋轉。不過紅黑樹沒有實現過。




文景: 我們也不是特別care你寫多少演算法程式碼,主要還是看。。。。。後面一些我忘了。。。-_-!

我 : 嗯。




文景: 談談你對開源的認識。

我 : 嗯,@#¥%……&*扯了很多,google的三駕馬車促成了hadoop等等,包括去IOE:IBM小型機、Oracle資料庫與EMC儲存裝置的組合。(還有很多廢話我就不多說了。。。)




最後還有一些時間留給我提問,我大概就問了一下團隊開發組的情況,實習時間等等。

不過最後是否面試成功也不知道,文景GG的意思是說後面可能他老大還有再面一次,然後可能有機會去杭州面一次吧,具體我也不清楚了,希望能混到一張去杭州1日遊的門票,呵呵,這樣也就值了。:)


相關文章