文/michaelgbw
前言
2016的校招所謂的“金9銀10”已經(jīng)“金”馬上就過去了,對于大四工作狗來說,是時候表演真正的技術了。本人三方已簽,就今年的形式和筆面試的技巧和大家做一個討論。也為明年找工作的學弟學妹們鋪下路。還有就是也別太迷信BAT,今年華為就很逆天啊~
首先說筆試
我自己也做了不少筆試,包括京東,滴滴,美團,騰訊,百度,阿里等。首先先寫到前面的一句話即是:
筆試可以掛,但絕不代表公司不給你機會面試,也并不代表能力不行。
首先我先說明下我的崗位是后端研發(fā)(當然有的公司啥都考),有在線編程題,這就要求我們對其平臺十分了解,尤其是各種語言的在線編程和調(diào)試機制,輸入輸出之類的。然后就是要注意時間,可以助攻(你們懂得),但千萬別太過了。接下來就我筆試過的幾家公司來具體說道說道:
京東,滴滴,美團
我把京東滴滴美團歸為一類,因為這幾家公司實在是太像了(在筆試題方面),20道選擇題,兩道編程題,一個綜合題。
選擇題這幾個公司很像的,幾乎是什么都涉及到了,數(shù)據(jù)結構,算法,操作系統(tǒng),編程基礎(語言以c為主),網(wǎng)絡通信,數(shù)據(jù)庫。什么都會涉及到,這就要求我們筆試者有很好的計算機基礎,這里我就不舉例了,大家可移步到??途W(wǎng),賽碼網(wǎng)刷題即可。
編程題,這兩家公司都是采用賽碼網(wǎng)的平臺,這個平臺有個好處就是編程題可以調(diào)出頁面來使用自己的IDE,不錯不錯,有些函數(shù)忘了還可以百度百度,哈哈,但千萬別想著去整到題去百度,這是自討苦吃,百度不到的。兩道編程題從難到易,一般第二道題較難,沒時間或根本不會做到100%accepted,把思路一定要寫上去即可,很巧的是,這三家筆試編程題都有一個DP(動態(tài)規(guī)劃的)。這里分享一個美團的題吧:
一圓桌子,放了一排紅包。有個規(guī)則就是不能取相鄰的紅包,首位相連,用‘ ’分割的string表示。比如1,3,4.要取3,就不能取1,4。問最大可以取的紅包數(shù)是多少。
eg:
輸入:
1 3 4
4
3 9 7 5 1 3 1 2 7
輸出:
5
4
24
<?php
function get_no_continiu_max($str){
$arr=explode(' ',$str);
//print_r($arr);
$data=array();
$len=count($arr);
for($num=0;$num<2;$num++){
if($num==0){
array_pop($arr);
}
else{
array_shift($arr);
}
$data[0]=$arr[0];
$data[1]=$arr[1];
$current_max=($data[0] > $data[1]) ? $data[0] : $data[1];
for($i=2;$i<count($arr);$i++){
for($j=0;$j<$i-1;$j++){
if($arr[$i] + $data[$j] > $current_max){
$current_max =$arr[$i] + $data[$j];
}
}
$data[$i]=$current_max;
}
if($num==0)
$re1=$current_max;
else
$re2=$current_max;
$arr=explode(' ',$str);
$data=array();
$len=count($arr);
}
return max($re1,$re2);
}
再就是綜合題,比如設計個方案來承載高并發(fā)的高容災的服務器架構等,這個每個方向不同。具體原則是把自己知道的都寫上去,別管相不相關,但絕對不能答錯。
BAT
其實B和A的筆試題側重點還是不怎么一樣的,但我把他們歸為一類來說,就是這兩家,我其實是投的前端。(人家也不想,,說多了都是淚)。
阿里筆試總共一個小時,沒有編程題。20道題,5個填空,其他選擇題。總結起來就是各種前端框架(vue,react,angular)。直接被虐殘了,考的知識的廣度非常大,但深度不大??磥硇U姓娴氖橇鞒塘?,完全不想招人。。
百度的筆試其實還好,之前有幸在百度實習過一段時間,前端PHP,JQ,CSS3,H5,linux?;A還算正常難度,編程題是亮點,兩道題都是來自于現(xiàn)實的問題,一個是web的顏色反轉(zhuǎn),還有一個是xml的標簽定位。把算法融合到相應的實際問題中。
騰訊
鵝場的筆試和全年一樣,30個選擇,2個編程,2個問答,2個小時。個人認為鵝場的面試和筆試是最難的,筆試不管什么崗都考c++,這真的是醉了。不過還好鵝場編程題不是很難,基本都是寫常規(guī)算法題。?;緵]什么問題。
面試
比起筆試來說面試則更加重要,因為如果說筆試能作弊,面試幾乎不可能。這里只說技術面,因為到了hr就基本妥了,hr就就是聊人生聊理想。
百度
首先說"老東家"百度,由于是內(nèi)推,在正式校招開始前就面試了。
- 一面
自我介紹后基本就是聊項目了,在百度實習經(jīng)歷加分不少,然后說出一道智力測試題吧:

是不是有點蒙,我也是。然后開始問概率論,問的什么記不清了,難度還行,之后來個算法,國際象棋的上有兩個棋子,只能斜著走,給出兩個棋子的位子(x,y),一個棋子用幾步能把另一棋子吃掉。說實話這道題答得并不好,思路都不怎么被面試官認可,,唉,然后就是問了問session和cookie的區(qū)別呀,PHP如何進行session全局,跨服務器共享等,這還行。
- 二面
也是上來問項目,但和一面不同的是問的更加細致,還有實現(xiàn)的效率問題。記得當時的算法題是這樣的,有100多萬的無規(guī)律大數(shù)array,然后對其進行一個100多萬次的無規(guī)則運算,比如第3000個所有數(shù)相加,2000到4000數(shù)相加,可能越界。不接受O(n*n)的算法復雜度。
這個當時真不會考慮越界問題怎么處理,感覺真的答得不是很好。。
然后就隨便聊了聊相關的職業(yè)發(fā)展方向。感覺答得真的不好。。。
360
- 一面
問的很細致,PHP的基本語法,mysql的兩種引擎的區(qū)別,和鎖的機制,索引的實現(xiàn),left join和right join的區(qū)別,http協(xié)議的優(yōu)化,緩存控制等,tcp/ip
的三次握手,四次揮手等等,很多,最后算法是給你個n,求n之前所有素數(shù)?,F(xiàn)場寫代碼,還行吧,面完一看表1個小時10分鐘。 - 二面
休息了30min,開始了二面,二面的面試官很nice,完全沒有壓力面的意思,上來就說了下他們的面試流程,然后就是對著簡歷問項目,也是問的很細致,還問了這個項目的盈利點是什么。這,呵呵。但人真的不錯,,算法題是兩個無序數(shù)組求差集,并求算法復雜度。還好,再有就是除了mysql,還用過什么,除了PHP,js還會什么語言。并大概講了講為什么,很好,面試官全程笑呵呵的。很nice,很像和主管聊天。。
騰訊
- 一面
這個掛的最慘,一面什么都不問,就問你投的是WXG吧,我是IEG的,微信并不招人,在西安。然后就聊了聊我在百度的實習過程,唯一的一個技術問題就是js的匿名函數(shù)有什么作用,然后同學你還有什么問題嗎?我去。。。好吧,不到30min,,然后就沒有然后了。直接蒙了,,這是干嘛??
樂其網(wǎng)絡
- 一面
這個是個創(chuàng)業(yè)公司,是陪同學去面的,我就順帶霸面了一波。上來介紹項目,然后一個有序數(shù)組求一個數(shù)第一次出現(xiàn)的位置,簡單二分查找,就是return的時候不能直接返回,再向前挪動指針,知道和查找到的不同就行,,然后讓我寫了幾句sql,還行。 - 二面
一面后2min后,開始二面,看來真的是挺急的。二面問的有深度點,https的原理,ssl如何防止中間人攻擊等,mysql的索引原理,為什么聯(lián)合索引是左優(yōu)先原則,然后就問了問今后的職業(yè)規(guī)劃,和期待薪資。
總結
面試什么的都是你和面試官的直接對話,這個很有運氣的成分在里面,不過不代表你能力不行,只是更多的是不合適他們公司吧。
還有就是別,太,看,重,薪,資(我自己都有點不信,唉~),適合自己的最好,確定了一家公司就一心一意干。我們程序員都是寫很普通的人,很簡單,看準一件事,只要自己覺得值得,就會奮不顧身。比如一個女孩,聊的來,那她就是全世界。
最后再次懇求拿到高薪資offer的大大們給我們留條生路,都不容易,還沒拿到理想offer的大大們加油,祝好~