前言
面了騰訊兩次,估計都涼了,但面經仍是要分享一下的。前端
正文
第一次面試騰訊
投遞渠道:騰訊官網投遞。
投遞崗位:後臺開發方向平常實習生。git
10月23日18:14,一個來自騰訊總部的電話打過來,是個女的面試官,問我如今是否方便麪試(騰訊好像喜歡突擊面試?),那時候沒空也沒在狀態就改了明天下午4點面試(改完以後就擔憂被放鴿子了)。
10月24日16:02,仍是那個女面試官。個人第一次電話面試就開始了,面試狀況很糟糕_(:ι」∠)_web
一面經驗:
面試內容:面試
- 先自我介紹一下(剛說了幾句話,騰訊面試官讓我正常對話就好了,不用那麼緊張,那時候我語速有點快)
- 介紹一下你的YY實習經歷吧(問了不少,好比作了哪一塊工做,用了哪些技術,帶寬成本,併發量QPS)
- 簡單說一下Java的內存管理(扯了一堆JVM裏面的東西,好比程序計數器、Java虛擬機棧、本地方法棧、堆、方法區、運行時常量池)
- Java反射機制(其實這一塊我也不知道咋回答,就談了反射是什麼,如何獲取某個類、方法、屬性)
- 簡單的聊了一下項目
- TCP/IP有哪些協議(說了ARP、RARP、TCP、UDP、HTTP、SMTP)
- TCP、UDP的區別以及它們的使用場景
- 如何查看TCP服務中的TCP鏈接有多少(一開始聽到這個有點懵,後來才知道問的是命令行,在window或者Linux中可使用
netstat
查看)
- 經常使用的數據結構有哪些(說了數組、鏈表、哈希表、棧、隊列、二叉樹)
- 給我一個數組,如何查詢裏面第2大的元素(其實就是top K問題,不過我答的不是很好,先說了須要使用額外空間的思路,再說了使用快排,面試官就問了我快排原理以及時間複雜度,以及問我還能不能繼續優化,我一時想不出來了,其實最優解應該是堆排序)
- 給我一個棧,如何排序棧裏面的無序元素(電話面試有點緊張,這麼簡單的問題都沒想好,面試以後就明白怎麼解了(;´༎ຶД༎ຶ`) )
- 數據庫的設計,給我一個場景,查學生的平均成績,問我須要涉及到哪些表,有哪些主外鍵(這個比較簡單)
- Redis的優點,只能存在內存上嘛?讀取效率怎樣?(唉,redis沒好好準備就被問到了,固然回答的也很很差)
- C++學過嗎?(沒orz)
- 有哪些問題須要問我?(表現如何,是否還有下一面,多久給結果)
面試總時長:38分09秒redis
因爲這是個人第一次電話面試(上篇文章的小米電話面試是第二次電話面試點這裏查看小米麪試),存在着不少問題,包括說話語速、本身緊張,致使此次電話面試自我感受不好。
固然八九成是涼了,目前官網仍是初試狀態。算法
第二次面試騰訊
投遞渠道:實習僧。
投遞崗位:信息流與QQ廣告部後臺開發實習生(CDG)。數據庫
10月24日,10:10,也就是電話面試那天早上,仍是騰訊總部的電話。此次是一個男的面試官,跟我約了時間面試,吸收上一次的教訓,此次我問了面試官是哪一個部門的(方便後續聯繫),對方回答說是CDG,負責騰訊廣告的。最後約了10月30日的現場面試。後端
一面經驗:
約定了10月30日下午兩點半面試,買了早上最先的票去廣州市區(學校離廣州市區一個半鐘的車程),訂了中午去深圳北的高鐵票。提早一個多鍾到達騰訊總部,簡單的參觀了一下,騰訊總部環境是真的好!!!數組
面試內容:數據結構
- 看我在YY實習過,就讓我介紹一下在YY作了什麼(居然沒有自我介紹環節Σ(っ °Д °;)っ)
- 問我以前寫的項目中是前端開發仍是後端開發
- 如今在深圳嗎?(在廣州)問我是坐大巴過來的嗎?(校車轉高鐵)
- 那你如今有其餘的offer嗎?(沒有,┭┮﹏┭┮被本身菜哭了)
- 你是21屆的?如今是大三對嗎?那你大三的話每週能夠來多少天,不用上課嗎?(內心話:若是騰訊願意收留我,每週7天均可以【捂臉】)
- 那我給你一個題目寫一下吧,實現一個addBinary函數,要求傳遞兩個二進制的字符串參數,返回二者計算之和。(題目還比較簡單,注意考慮邊界狀況,好比進位以及兩個字符串長度不一致的狀況。題目作完以後就是給面試官解答)
- 剛剛那道題算是過了,接下來說一下常見排序算法的複雜度是多少?
- 快排什麼狀況下會變成N2,寫一個會變成N2的例子,講一下快排的原理(好吧,N2這個問題是以前有看到,可是那時候也沒有仔細思考,致使這裏回答的很很差😔)
- 看了一下簡歷中提到剖析過Java容器(集合)源碼,就問我如何解決哈希碰撞的問題(我說了拉鍊法,計算哈希值以後,若是已經發生了衝突,就將其添加到鏈表節點以後)
一面結束,面試官讓我等一會,我覺得不會有二面了,都作好要走的準備了。
二面經驗:
因爲臨近雙十一,這個部門彷佛很忙,當初是在窗戶旁的休息區面試,在我旁邊一兩米內有不少人一直在討論騰訊廣告的問題,有些嘈雜,錄音的時候錄進去了不少可有可無的聲音。
- 看你以前有一段實習經驗,那你說在版本管理上用過git嗎(用過),那你在YY那邊的版本開發流程是怎樣的
- 對DB的操做應該挺熟悉的吧?好比MySQL、Redis那些,熟練度如何?(我說基本上可以應付工做),那你說一下數據庫的join吧(我回答說「這個不多用」,尬笑,媽耶,瞬間打臉,忘了)
- 用過哪些redis的經常使用命令(除了set和get,尷尬,這個問題回答的也很差。。。因爲簡歷沒寫redis,就沒複習了)
- 我看到你以前也寫了一些博客,你是否是有寫博客的習慣?博客寫在哪裏?
- 實習的話,天天的時間安排是怎樣的?能實習多久?
- 一面的時候給了你一道題,如今再給你一道題,由於平時工做也是寫業務代碼,想看看你的水平(實現一個前綴樹,問了我數據結構怎麼寫,如何實現add()和check()方法)
這是一個很是很是惋惜的面試題,因爲我以前沒有了解過前綴樹,加上環境嘈雜(實際上是本身太菜)的緣由,即便面試官一直很耐心的引導我,但我仍是沒怎麼搞出來,把本身繞進去了。。。
PS:這裏真的要吐槽一下,聽了一下電話錄音,真的很嘈雜,旁邊人的聲音都比咱們還大聲
- 你有操做過Linux系統吧,你以前在YY實習了多久(實習了一個多月就走了),那你走的緣由是?
- 那你對咱們這邊有什麼須要瞭解的嗎?(若是要實習,須要提早學習什麼,如今是最後一面了嗎?多久以後會有結果?有多大概率可以經過😔,你以爲我今天表現怎麼樣?)
面試結束,表現很通常,面試官最後讓我去逛一逛總部其餘地方,有什麼須要聯繫的能夠直接找他。
面試總時長:1小時51分45秒(一二面)
總結
面試了兩次騰訊,我發現本身存在三個問題:
- 缺乏電話面試經驗,在說話語速、表達方式這兩方面須要改善
- 本身的簡歷不夠熟悉,好比寫了熟悉快排,可是深度掌握的不夠,面試的時候每每容易被打臉
- 算法題作得少,在一些沒有見過(或者只是簡單瞭解過)的題目面前,可能會一籌莫展
總得來講,騰訊面試體驗仍是發現了本身的很多問題所在,雖然說大機率是涼涼了,但仍是得取長補短,改掉本身存在的問題。
最後附上一些騰訊的圖吧,當個記念。