百度實習電話面試經歷
一面:
3月11日下午,一點半午睡起來看到了一個北京的陌生電話,開始以為是騷擾電話,後來一想會不會是前兩天內推的百度有訊息了,趕緊打過去。結果真是百度說約定下週一下午三點半給我打電話進行電話面試準備好電腦和網路,要進行線上程式設計。
太突然了,以前根本沒有面試的經驗也不知道準備什麼,在網上搜索了一些面經,於是把以前的專案看看把網路程式設計的書也拿出來看基礎知識(恨不得多出幾個腦袋)只有三天的面試準備時間。。。。
3月14日下午準時打來電話,直接進入面試環節:
1.自我介紹一下,巴拉巴拉說了些個人資訊和自己做得方向和東西。
2.簡單介紹一下你的專案,巴拉巴拉說了一些簡單的專案,然後我說了最近在做一個執行緒池加epllo的伺服器程式,於是他就抓住執行緒池進行對我的提問,什麼是執行緒池啊,為什麼使用執行緒池,執行緒和程序的區別,我的執行緒池是怎麼實現的。可惜不是直面,要是能畫圖會好講很多,巴拉巴拉說了一堆 主要就是執行緒的併發問題(pthread_cond_wait)感覺自己沒有說清楚。
3.他挑了我做的一個專案進行提問,問專案的具體實現,架構什麼樣子的。 我做的事一個網路連線的中介軟體,簡單說就是基於socket介面開發的通訊介面軟體,一個執行在伺服器上的通訊程式,他負責把client方傳送過來的資料送給應用程式,並且把應用程式處理結果傳送給相應的client 1>client到通訊程序 多程序併發形式 2>通訊到應用程序 程序間的通訊(訊息佇列) 環境為unix作業系統。
4.接下來問我瞭解java麼,我說明吧一些,,,然後就讓我講下GC的原理(哎 自己挖的坑啊)。我大概說了下年輕代,年老代,持久代什麼什麼的,,,真的是不太明白。
5.估計他也看出來對java不是太熟悉就問了C++的問題(我簡歷上寫的主要學習語言為C ,C++) 問我const char *a, char const*a這類的經典問題。
6.他看我簡歷上寫的熟悉linux作業系統 於是就讓我說幾個我用過的API函式。 腦子裡崩了幾個最近用的關於IPC的API說了說。
7.最後他說我們來做兩道題吧,他通過郵箱吧線上程式設計的網站發給我,不知道怎麼郵箱有延遲遇到了下小尷尬。。。
第一題是一個二叉樹,給了前序和中序,讓我寫出後序
第二題是 大概是兩個有序的數組合並求出中位數 (給了些提示 做出來了,,)
最後他讓我問他幾個問題。一時想不出什麼問題,就問我學網路程式設計方向發展怎麼樣,還需向那方面努力。
回答是:學自己感興趣的東西,堅持住就行。
之後說面試結果會在三天內通知。
暈暈忽忽的一面結束(回頭寫第二天的電話二面)。