1. 程式人生 > >記2016.10.15百度面試經歷,軟體研發工程師

記2016.10.15百度面試經歷,軟體研發工程師

9月參加的網上筆試,選擇主要做了一些行測的題(頭一次做行測題),後面有三道程式設計題,做出來一道,卡在第二道了50%,感覺自己水水的,百度也一直沒通知面試,以為被刷了就沒抱什麼希望。後來13號竟然發來了面試通知還是有點小激動。

要求9:00,並且提前二十分鐘到,我早早出了門,8:20到達百度大廈,保安讓去C座門前等著,路上碰到一位同校同學院的(也是有緣),還有一位北航學物理的,一路聊了聊有的沒得,頓時感覺大家也都不一定是科班出身,我覺得聊聊天自己頓時沒那麼緊張了。

到了9:00百度大門才開放我們進去排隊,我們因為來得早所以理所當然排在前面。最先拿到面試表,最先進入面試場。面試場設在食堂,這場面我還是頭一次見,一輪二輪三輪分別有三塊區域。

一輪:先自我介紹,我說了說自己會些什麼,做的專案是啥,他問我專案可不可以訪問,我當場給他寫了網址(幸好前幾天剛部署到試用的伺服器上),我給他介紹了一些功能,他問我遇到過哪些問題,我說了說不過好像他並沒有聽懂,因為提到了session,所以問我session儲存在哪裡,關了瀏覽器session還在不在,我說儲存在服務端,關了瀏覽器還在,他聽完沒說話記錄了一下(感覺沒毛病呀),問我氣泡排序和選擇排序的區別,我說基本操作不一樣,他讓我寫寫氣泡排序然後優化一下,我寫了最最基礎的,他提醒我說如果初始有序是不是可以提前結束(非常感謝提醒)我又優化了一下,後來就聊我參加的比賽,我說了說題目以及我的演算法。問我知道什麼設計模式,我說單例模式呀,代理模式呀,還問我什麼地方使用呀(這個答得很勉強)。一面說印象還不錯,然後就水水過了一面。

二面:二面感覺樂呵呵的很面善,上來看我說不是科班出身呀,說身邊同事也有同校的,然後問我java怎麼學的,都學了些啥。問我超長陣列怎麼排序,我說用歸併排序,他提示我是簡單的歸併嗎(善意提示拯救我),我想了想好像多路歸併,要用堆排序,問我複雜度是多少,還問我大根堆和小根堆複雜度一樣嗎,我說有什麼不一樣呢。又問我又什麼方法檢查數組裡面的重複元素,我想了想用一個hashset每次存,一旦重複就返回,他說只能用簡單的陣列,我想了想,那就是一個排序問題呀,他沒讓我寫,只說了思路。還問我aop有哪些應用,我說我記錄日誌是aop做的,他問我還有呢,我說事務處理,他問我什麼是事務又什麼性質,我說了一通,他說這是理想情況下,分散式的應用沒那麼簡單。最後他問怎麼在資料庫中不改變表結構的前提下,新添一個欄位(這個真不懂呀),我說那就新加一個表,關聯查詢,他說那效率太低了,我說那就在實體類中新添一個map(好吧這個我是瞎掰的)他說行吧~然後就讓我三面去了。

三面:三面看上去比一二面成熟很多,自我介紹,說說我做的專案,解決過什麼問題,我提到了html注入存在安全風險,他問我還有什麼可能的安全問題,我說了sql注入、session驗證。問了我的愛好,對愛好有什麼研究,問我上學的時候有什麼是最驕傲的經歷、什麼後悔的事,獲得了有什麼經驗,還問我成長環境、學習成績怎樣,高考分數等等,然後問我接觸過java以外的語言嗎,我說Matlab、R,他說不要過度依賴語言,要廣泛涉獵。還問我對百度印象如何,為什麼來百度,百度有什麼部門,想做哪方面的工作,職業規劃等等。最後就讓我回去等通知了…

總體感覺難度不大,可能是運氣比較好,聊天的氛圍很融洽,也可能是佔了早到的光,結果沒出我也不知道三面過沒過,不過面試官最喜歡問的就是然後呢,所以不能讓自己停下來,一定要繼續說下去,這樣才能壓縮他們問問題的時間,最後立志一定要做以下兩件事:
1. 惡補各種設計模式
2. 所有排序演算法手寫一遍

以上。