1. 程式人生 > >如何準備校招技術面試+一隻小菜鳥的面試之路

如何準備校招技術面試+一隻小菜鳥的面試之路

640?wx_fmt=png

      校招一路走來很幸運,從最初的迷茫,到偶爾的被否認,然後慢慢調整心態,有缺憾才能有進步,正視的自己不足,靜下心努力提高,勇敢嘗試各種面試機會,因上努力,果上隨緣,慢慢看到改變,收穫肯定,重拾信心。


      校招像一個登山的過程,要一步一個腳印,不能因為某些失敗,就半途而廢,行百里者半九十,念念不忘,必有迴響,只要一路堅持下來,就會有所收穫。據身邊所見,大部分一直堅持面試下去的同學,最後都拿到了滿意的offer。

        寫在這裡,是對我們的學員通過參加春招的一次總結和懷念,也希望給那些和過往學員一樣迷茫過,懷疑過,失落過的人一些幫助和激勵。

640?wx_fmt=png如何準備參加校招

需長期積累

(1)手撕程式碼能力

        現在大多數大廠的面試基本上都需要手寫程式碼!基本逃不掉!所以這個能力是極其重要的,寫得好很加分,寫得不好就很可能GG了。

        建議這方面基礎不太好的同學,提前至少半年開始刷題,主要是lintcode和leetcode。等到校招開始前一個月再刷題可能就真的來不及了,那時候基本每天都有筆試面試,所以如果演算法程式碼能力不好的同學,一定要儘早刷題,演算法是個內功,需要時間慢慢積累,唯一的方法就是多刷題,多寫程式碼。

        Leetcode刷200道左右,編號前100的題目儘量能刷兩遍,儘量做到大部分能獨立寫bug free的ac程式碼。

        現場面試的時候基本是手寫程式碼,所以最好有時間也練一練在紙上寫程式碼,找找感覺,儘量寫的簡潔乾淨,不要塗塗改改。

(2)專案經歷和實習經歷

         專案經歷和實力經歷是最需要平時積累的。不要僅僅就在完成任務這個層面,不要沉迷在專案的一些業務細節上,多關注框架,架構,優化方面的東西。可以深入去研究專案,比如做某些優化,用設計模式去重構一下,用到前沿的技術優化,比如redis快取之類的東西,相信只要用心去研究所做的專案,等到面試的時候,去總結專案難點怎麼回答就不困難了!

可臨時抱佛腳

        網路,資料庫,作業系統,Java或者C++等這些基礎知識,面試的時候無非就是常見的那些面試題,都是固定的問題和答案,平常只要稍微關注一下即可,到了面試前花一兩個星期臨時抱佛腳看一看背一背基本就能應付過去。(如果要真正掌握這些知識,顯然是需要花很大精力去鑽研的,但就應付面試來說,記一記常考的點,搞清楚常問的點基本就夠了)。

        場景題和系統設計題,很多同學比較怕這類題目,其實這類題目大多涉及一些架構設計的東西,不會要你回答的多麼細緻,能給出大概的思路即可。而且多是一些高併發高負載的系統設計題。可能大部分應屆生都沒法接觸到這麼高難度的開發,所以這時候主要就看你的想法和視野了。嘗試去看一些架構方面的書和積累一些面試題就發現其實這類題都是一個套路。看著很難,但實際上只要知道這些技術的基本概念和作用就行了,答出思路基本就沒問題,畢竟不會讓你現場寫一個高併發系統。

640?wx_fmt=jpeg

640?wx_fmt=png完整面試+總結

  Cvte提前批   

  • 一面(電話)

  1. 自我介紹

  2. 介紹你的專案

  3. 加密解密瞭解麼?幾種演算法,講一下你瞭解的

  4. 多執行緒瞭解麼?什麼是執行緒安全?

  5. 說一個你最熟悉的設計模式

  6. 講一下你專案中用到了哪些設計模式

  7. Java的hashmap的原理

  8. Hashmap的執行緒安全性,什麼是執行緒安全的?如何實現執行緒安全

  9. 資料庫的索引瞭解麼?介紹一下

  10. 資料庫有哪些優化的方法?講你自己知道的

  11. 為什麼事務可以優化資料庫?

  • 二面(視訊)

  1. 自我介紹

  2. 介紹專案

  3. Mysql的資料庫引擎,區別特點

  4. 設計模式瞭解?講一下最熟悉的

  5. 寫一個單例模式,答主寫的是雙檢查鎖單例,問了為什麼用Volatile,synchronize

  6. 單例模式在你專案裡哪些應用?

  7. 資料連線池採用了什麼設計模式?意義是什麼?

  8. 對高負載有了解麼

  9. 你意向的技術方向是哪塊?(答主回答的高併發,然後面試官說他是做高負載的)

  10. 對高併發有了解麼?

校招首次面試,二面跪。發現存在以下問題:

(1)準備不充分(自我介紹,專案介紹,專案難點等需提前準備)

(2)基礎不紮實(面試中問的資料庫相關問題基本沒答上來)

(3)缺乏亮點(缺乏體現自己能力的東西,比如專案難點如何解決,對一些前沿技術的瞭解等)

640?wx_fmt=jpeg

 阿里 

  • 一面(電話)

  1. 聽說你有部落格,部落格裡大概有什麼內容?

  2. 專案介紹,最複雜的表

  3. Hashmap的原理

  4. Hashmap為什麼大小是2的冪次

  5. 介紹一下紅黑樹

  6. Arraylist的原理

  7. Arraylist的擴容機制

  8. 為什麼arraylist擴容是1.5倍

  9. 場景題:設計判斷論文抄襲的系統

  10. 堆排序的原理

  11. 抽象工廠和工廠方法模式的區別

  12. 工廠模式的思想

  13. object類你知道的方法

  14. 哪裡用到了工廠模式

  15. Forward和redirect的區別

  • 二面(視訊)

  1. 自我介紹

  2. 專案介紹

  3. 專案架構

  4. 專案難點

  5. Synchronize關鍵字為什麼jdk1.5後效率提高了

  6. 執行緒池的使用時的注意事項

  7. Spring中autowire和resourse關鍵字的區別

  8. Hashmap的原理

  9. Hashmap的大小為什麼指定為2的冪次

  10. 講一下執行緒狀態轉移圖

  11. 訊息隊列了解麼

  12. 分散式瞭解麼

阿里作為提供面試總結的同學最想去的公司(畢竟是國內JAVA第一大廠)面試開始比較早。
一面面試官很好,體驗不錯。最後給面試者建議:希望多去深入理解背後的原理,而不是僅僅停留在知道了解的層面。總體一面還是感覺不錯。
二面是整個校招表現最不好的一次面試。答的很亂。
這次面試看到的不足,第一,就是基礎很不紮實,很多常問的面試題都不知道,第二,要深入去理解背後的原理,比如資料庫的隔離級別具體的實現等等,第三,深入琢磨自己做的專案,用一些高大上的技術去裝飾。
阿里面試後,有了危機感,從0開始研究redis資料庫,研究mysql資料庫的一些常問的底層實現,以及spring的一些常見的面試題等。
一個經驗:快要到校招的時候,遇到一些自己不會的大塊,比如資料庫,很多人就直接放棄,覺得再學已經來不及,其實不然,面試的時候,問的東西基本是固定的,只要我們對常問的面試問題深入瞭解就行。所以快要到校招的時候發現自己還有東西完全不會的,也不要慌,沉下心去學幾天,絕對來得及!

  便利蜂  

  • 一面(電話)

  1. 自我介紹

  2. 專案介紹

  3. volatile和synchronized

  4. 來個演算法題:一個無序陣列,其中一個數字出現的次數大於其他數字之和,求這個數字 (主元素)

  5. 答完再來一個:一個數組,有正有負,不改變順序的情況下,求和最大的最長子序列

  6. 專案用到什麼資料庫?隔離級別?每個隔離級別各做了什麼

  7. 資料庫的索引?mysql不同引擎索引的區別

  8. 垃圾回收演算法的過程

  9. 你瞭解的垃圾收集器? Cms收集器的過程

  10. 怎樣進入老年代?

  11. 平時用到了什麼設計模式?

  12. 講一下你最熟的兩個設計模式

  13. 用過什麼系統?shell寫過指令碼嗎?

  14. 講你知道的Linux命令

    便利蜂雖然公司名氣不大,但儘早拿到第一個offer,可以提高信心和穩住心態,對後續的面試很有幫助。
    所以前期一定要多投簡歷,能面的儘量面,反正最後你又不一定去,多面幾次積累經驗,等到大廠的面試開始,已經積累到了足夠的面試經驗,可以發揮的更好。
    便利蜂的面試也是幸運女神眷顧。
    面試前,在牛客網搜尋了所有便利蜂java的面經,只找到一篇,就把那篇面經的問題好好研究了一遍。然後奇蹟出現了,面試問的問題基本一模一樣,估計是同一個面試官,所以答得很順利。
    一個小技巧,當面試的時候遇到以前做過的演算法題的時候,千萬別說自己做過,請假裝沒做過,不然面試官會換題目的。
    經驗:
    進入校招之後,多泡泡牛客網,多看看面經很有幫助,面試其實都大同小異,就那麼些知識點,所以多看多總結。

 拼多多 

  • 一面(現場面)

  1. 自我介紹

  2. 專案介紹

  3. 手撕演算法:一棵二叉排序樹,給定一個數,找到與給定數差值絕對值最小的數

  4. 場景題:設計一個系統,解決搶購時所需要的大量的短連結的功能,如何保證高併發,如何設計短連結

  • 二面(現場面)

  1. 程式碼量多少

  2. 給了一張紙,各種名詞,會的寫出來

  3. 然後給它解釋那些會的

  4. 設計題:設計一個系統,記錄qq使用者前一天的登入狀態,提供16g記憶體和2tb的硬碟,要做到查詢指定qq號的前一天的登入狀態,快速查詢O(1)複雜度

之前經歷了那麼多電話面,終於迎來了人生第一次現場技術面!
果然第一次總是會有點痛苦,很遺憾的掛了!
一面感覺還不錯,專案簡單聊了一下,感覺面試官興趣不大。就開始手撕程式碼,第一次手撕程式碼,略緊張,最後還是想出來了。然後一個場景題,用到了剛學會的redis,現學現賣,感覺面試官還比較滿意。
二面一坐下,就感覺對面的面試官氣場太強,一坐下,沒讓自我介紹,直接給了問程式碼量多少,準備大概估算一下,結果被面試官打斷,讓直接說,講真,有點慌亂哈哈。就說了大概十萬行。然後給了一張紙,大概有幾十個專業名詞,讓我把會的勾出來,然後一個一個的解釋。然後就出了一個系統設計題,一直沒理解面試官的意思,最後在面試官討論專案的過程中,面試官問是否可以通過value推到key,一下沒經過思考,答了個是,答錯了,然後面試官就說面試結束了。
很多時候,如果面試官問到一個比較基礎的問題,你沒答上來,那你就跪了,所以回答之前要三思熟慮,別急著回答,好好想一想。

640?wx_fmt=jpeg

  多益網路  

  • 一面(視訊)

  1. 自我介紹

  2. 對面向物件的理解

  3. 介紹多型

  4. Java新建執行緒有哪幾種方式

  5. 執行緒池的作用

  6. 看過框架原始碼麼

    整個面試過程,感覺面試官都是問的一些很大的問題,就看你自己發揮了,儘量把知道的都回答,而且儘量回答的專業。
    在問到對面向物件的理解的時候,可能大部分人都會回答多型繼承封裝就沒了。前幾天正好看到面向物件的六原則和一法則,然後就給面試官吹了一波,面試官也沒打斷,一直讓說,整個面試答得比較好的就是這裡。
    所以還是要提前準備啊,像這種題目,提前準備過和沒準備回答出來的效果完全不一樣。

  塗鴉移動  

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 資料庫的索引原理

  4. 索引使用的注意事項

  5. 資料庫的引擎

  6. Java垃圾回收機制

  7. Java的finalize,finally,final三個關鍵字的區別和應用場景

  8. String類可以被繼承麼

  9. 手撕演算法:假設你是一個專業的竊賊,準備沿著一條街打劫房屋。每個房子都存放著特定金額的錢。你面臨的唯一約束條件是:相鄰的房子裝著相互聯絡的防盜系統,且 當相鄰的兩個房子同一天被打劫時,該系統會自動報警。
    給定一個非負整數列表,表示每個房子中存放的錢, 算一算,如果今晚去打劫,你最多可以得到多少錢 在不觸動報警裝置的情況下。

  • 二面(電話)

  1. 自我介紹

  2. 對遊戲的瞭解

  3. 專案介紹

  4. 演算法題:給一個整數陣列,找到兩個數使得他們的和等於一個給定的數 target。

  5. 紅黑樹

  6. Redis的應用

    一面面試官說之前仔細看了面試者的部落格,然後面試的內容就是讓面試者講一講部落格裡寫的內容,基本就是之前複習準備的資料庫的知識,都遊刃有餘了。但感覺到講的時候還是思維有點混亂,所以表達能力也很重要,有時間試著將一些常問的東西,自己私下表達一遍,儘量做到表達清楚專業有條理。
    然後手撕演算法,leetcode原題,打劫房屋,自己當時只記得題目,但方法不記得了,就現場推了一遍動態規劃的狀態方程,結果很幸運推了出來。(這個還是得靠前期的刷題的積累)。
    二面電話面問的比較簡略,又用到了救命稻草redis,發現面試官都很喜歡問這個。可能因為是比較前沿的技術吧,現在企業用的比較多,但實際這個東西不是特別難。所以瞭解一下redis會很加分。
    不久之後,面試者收到塗鴉移動的offer,應該是第四個offer,自己也開始慢慢更有信心了。
    雖然最後沒去塗鴉,但面試的過程也學習了不少東西,自己在表達能力方面還需要加強。所以每次面試我們或多或少都能有所收穫,多面試多經歷多體驗!

 中國電信IT研發中心 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 專案裡用的什麼伺服器

  4. 自己寫一個tomcat伺服器,你會怎麼寫

  5. 分散式伺服器會出現哪些問題

  6. 怎麼解決session一致性快取的問題

  7. Redis的優勢和特點

  8. 一千萬使用者併發搶購,怎麼設計

  9. 如果成功的使用者有10萬,redis存不下怎麼處理

  10. 你專案中的難點

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 介紹spring中的熟悉的註解

  4. 讓你實現autowire註解的功能你會如何實現

  5. Redis和mysql的區別

  6. Redis的持久化有哪些方式,具體原理

    中國電信算是提供面試總結的面試者拿到的第一個比較滿意的offer,雖然不是網際網路大廠,但是薪資地點發展都感覺不錯,當時考慮,如果後面沒拿到大廠的offer就去電信養老了。
    電信的面試官年紀偏大,問的問題也比較偏實踐和設計,基本沒問基礎知識。
    一面一上來就讓寫一個tomcat伺服器,石化,還好面試官比較和善,慢慢提示,然後又問怎麼保持session的一致性,這個其實是比較常見的問題,之前沒見過,面試官讓現場想,最後想到的答案正好是正確答案,然後面試官出的場景題,就將redis往上面套,無非就是快取,訊息佇列這些技術去處理那些高併發的問題。所以答得還不錯。
    可以看出,有時候面到你不會的東西,如果你能在面試官的引導下回答出來是很加分的,可能因為看到你的思考能力吧,更看重你的潛力!

 中興 

  • 專業面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 你瞭解的設計模式,講兩個

  4. Java collection類,集合,講兩個你瞭解的,說實現原理

  5. Java執行緒池的作用

  6. 你覺得你在你實驗室處於什麼水平

  • 綜合面試(現場)

  1. 自我介紹

  2. 說一下你知道的設計模式

  3. 畫一個策略模式的uml圖

  4. Java多執行緒的理解

  5. 記憶體屏障是什麼

  6. 資料庫索引

  7. 專案中的優化

  8. 然後開始聊人生

    中興軟體崗的面試比較水,主要看你的學校背景。學校不錯基本沒問題

 百度 

  • 一面(現場)

  1. 自我介紹

  2. Java中的多型

  3. Object類下的方法

  4. Wait和notify的作用

  5. Finalize的作用和使用場景

  6. Hashcode和equals

  7. 為什麼要同時重寫hashcode和equals

  8. 不同時重寫會出現哪些問題

  9. Hashmap的原理

  10. Hashmap如何變執行緒安全,每種方式的優缺點

  11. 垃圾回收機制

  12. Jvm的引數你知道的說一下

  13. 設計模式瞭解的說一下啊

  14. 手撕一個單例模式

  15. 快速排序的思想講一下

  16. 給個數組,模擬快排的過程

  17. 手寫快排

  18. 設計題,一個圖書館管理系統,資料庫怎麼設計,需求自己定,題目很寬泛,面試官看你能考慮到哪些問題

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹

  3. Redis的特點

  4. 分散式事務瞭解麼

  5. 反爬蟲的機制,有哪些方式

  6. 手撕演算法:反轉單鏈表

  7. 手撕演算法:實現類似微博子結構的資料結構,輸入一系列父子關係,輸出一個類似微博評論的父子結構圖

  8. 手寫java多執行緒

  9. 手寫java的soeket程式設計,服務端和客戶端

  10. 程序間的通訊方式

  11. 手撕演算法: 爬樓梯,寫出狀態轉移方程

  12. 智力題:時針分針什麼時候重合

  • 三面(現場)

  1. 由於三面面試官不懂java,我不熟c加加,所以全程尬聊

  2. 自我介紹

  3. 專案介紹

  4. 專案難點

  5. 手撕演算法:給定一個數字三角形,找到從頂部到底部的最小路徑和。每一步可以移動到下面一行的相鄰數字上。

  6. 然後繼續在這個問題上擴充套件

  7. 求出最短那條的路徑

  8. 遞迴求出所有的路徑

  9. 設計模式講一下熟悉的

  10. 會不會濫用設計模式

  11. 多執行緒條件變數為什麼要在while體裡,為什麼不是if

  12. 你遇到什麼挫折

百度三輪技術面,每面都在手撕程式碼,很注重程式碼能力,還有智力題,也是比較特別的。
一面主要聊了聊基礎和寫了簡單的演算法。
二面一開始聊了聊專案,然後就開始手撕程式碼,先撕了翻轉單鏈表(這個演算法算是面試常考了,整個秋招寫了三次這個演算法),然後就撕了一個比較難的演算法,微博子結構,程式碼比較難寫,寫的比較慢,面試官催了好幾次,但還是寫出了,面試官評價:“程式碼風格不錯,但是寫的太慢,筆試會吃虧”,確實吃虧,筆試掛了好多哈哈。然後又是一輪寫,先寫多執行緒,然後寫socket,socket不會寫,就直接說了。面試的時候,有些問題答不上來也不要慌,最後問了一個智力題。
三面遇到了語言不一樣的面試官,於是就一直在寫程式碼。
百度的面試很要求手撕演算法的能力,考察的比較全面,智力題場景題均有涉及。

 美團 

  • 一面(電話)

  1. 自我介紹

  2. 專案介紹

  3. Redis介紹

  4. 瞭解redis原始碼麼

  5. 瞭解redis叢集麼

  6. Hashmap的原理

  7. hashmap容量為什麼是2的冪次

  8. hashset的原始碼

  9. object類你知道的方法

  10. hashcode和equals

  11. 你重寫過hashcode和equals麼,要注意什麼

  12. 假設現在一個學生類,有學號和姓名,我現在hashcode方法重寫的時候,只將學號參與計算,會出現什麼情況?

  13. 往set裡面put一個學生物件,然後將這個學生物件的學號改了,再put進去,可以放進set麼?並講出為什麼

  14. Redis的持久化?有哪些方式,原理是什麼?

  15. 講一下穩定的排序演算法和不穩定的排序演算法

  16. 講一下快速排序的思想

  • 二面(現場)

  1. 自我介紹

  2. 講一下資料的acid

  3. 什麼是一致性

  4. 什麼是隔離性

  5. Mysql的隔離級別

  6. 每個隔離級別是如何解決

  7. Mysql要加上nextkey鎖,語句該怎麼寫

  8. Java的記憶體模型,垃圾回收

  9. 執行緒池的引數

  10. 每個引數解釋一遍

  11. 然後面試官設定了每個引數,給了是個執行緒,讓描述出完整的執行緒池執行的流程

  12. Nio和IO有什麼區別

  13. Nio和aio的區別

  14. Spring的aop怎麼實現

  15. Spring的aop有哪些實現方式

  16. 動態代理的實現方式和區別

  17. Linux瞭解麼

  18. 怎麼檢視系統負載

  19. Cpu load的引數如果為4,描述一下現在系統處於什麼情況

  20. Linux,查詢磁碟上最大的檔案的命令

  21. Linux,如何檢視系統日誌檔案

  22. 手撕演算法:leeetcode原題 22,Generate Parentheses

  • 三面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 怎麼管理專案成員

  4. 當意見不一致時,如何溝通開發成員,並舉個例子

  5. 怎麼保證專案的進度

  6. 資料庫的索引原理

  7. 非聚簇索引和聚簇索引

  8. 索引的使用注意事項

  9. 聯合索引

  10. 從底層解釋最左匹配原則

  11. Mysql對聯合索引有優化麼?會自動調整順序麼?哪個版本開始優化?

  12. Redis的應用

  13. Redis的持久化的方式和原理

  14. 技術選型,一個新技術和一個穩定的舊技術,你會怎麼選擇,選擇的考慮有哪些

  15. 說你印象最深的美團技術團隊的三篇部落格

  16. 最近在學什麼新技術

  17. 你是怎麼去接觸一門新技術的

  18. 會看哪些書

  19. 怎麼選擇要看的書

美團是提供總結的面試者拿到的第一個大廠offer,也是美團面完後心態更穩了。最有效提升信心的方法就是拿到一個滿意的offer!現場面,二面一開始太緊張,資料庫的四個特性不記得了,一個永續性死活想不起來,還好影響不大,後面答的都比較好,問到資料庫的隔離級別,主動引入到底層實現原理,回答問題的時候,可以主動延伸一下,儘量將自己會的表達出來。

面試之前,將牛客網上所有美團的面經扒了下來,看到很多出現率很高的問題,就提前準備了這些問題,果然在面試的時候碰到了,功夫不負有心人,準備工作沒有白做。所以多刷牛客,多刷面經才是王道啊!
最後就是手撕演算法,leetcode原題,生成括號,dfs問題。一貫套路,假裝之前沒見過這道題,先講一個暴力法,然後再寫出程式碼!由於leetcode刷了差不多兩遍,所以很順暢的寫出來了。(像這類題,如果之前完全沒刷過或者沒見過,現場寫出來並不容易)
三面就基本就是聊人生,偶爾帶一點技術。
現在大廠的面試基本逃不過手寫程式碼,基本上都是leetcode的中等難度的原題或者類似的題目,所以前期一定要多刷題,如果演算法能力不強的話,這個只能靠硬實力了。

 華為 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 專案架構

  4. 專案一個完整的執行流程(由於我是搞java的,而面試官是搞c的,所以全程尬聊)

  5. 專案優化

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 怎麼管理專案進度

  4. 平常的愛好

  5. 感覺面試官也不是搞java的,所以又是一陣尬聊

華為軟體崗的面試比較水,主要看你的學校背景。學校不錯基本沒問題

 蘇寧 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 面過哪些公司了

  4. 有哪些offer了

  5. 聊到多益,於是開始聊最近微博上很火的多益老闆

  6. 得出結論,我和麵試官都覺得多益老闆三觀有問題,但做遊戲就是要偏執的人

  7. 你部落格主要哪方面的

  8. 多執行緒併發包瞭解麼

  9. 講一下countDownLatch

面試過程就是聊人生,面試官先問了你有哪些offer。然後討論了多益的老闆的微博和價值觀,估計是因為offer對實力也是一種認可,所以沒怎麼問技術就結束了,最後提供總結的面試者順利拿到offer。(算是秋招拿的最容易的一個offer,就一輪面試聊了聊八卦就過了)但其他認識的同學,有被懟了50分鐘技術的。
所以啊,面試這個東西看緣分,期望老天保佑遇到對味的面試官。

640?wx_fmt=jpeg

 騰訊 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. Hibernate的作用,你對hibernate的理解

  4. 多執行緒的理解,如何保證執行緒安全

  5. mysql資料庫的引擎和區別

  6. 場景題:千萬使用者搶購,如何處理高併發,並且有一個連結,指向前一天搶購成功的使用者,如何設計這個系統和資料庫

  7. 如果後臺處理搶購請求的伺服器,每次最多承受200的負載,系統該怎麼設計

  8. 手撕演算法:最小公倍數和最大公約數

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 專案裡一個完整請求的流程

  4. 專案的優化

  5. Hibernate和mybatis的區別

  6. 為什麼用ssh框架

  7. Mysql的容災備份

  8. Redis和memcache 的區別

  9. 為什麼選擇redis

  10. Java的full gc

  11. Full gc會導致什麼問題

    騰訊筆試似乎不怎麼刷人(筆試做的很爛,依然收到了面試通知,周圍認識的做了騰訊筆試的基本都收到了面試通知)。所以對待騰訊的筆試可以輕鬆一點。
    一面是個小姐姐,基本問的都是很大問題,看你的發揮,沒怎麼問基礎。沒想到一面能過,二面是一位中年大叔,不言自威,氣場略強,感覺答的還可以,最後還是掛了,可能因為真的不招java吧。
    一面的面試官讓我回去看一下分散式事務,然後我就真的看了,然後後面網易的面試都在問這個,如果沒來面騰訊,估計後面網易也過不了。所以啊,面試真實一個學習的過程,不要錯失大好的學習機會

 招銀網路科技 

  • 一面(現場)

  1. 自我介紹

  2. 寫一個兩個有序連結串列合併成一個有序連結串列

  3. 死鎖是什麼呢

  4. 怎麼解決死鎖

  5. http請求流程

  6. 為什麼負載均衡

  7. 怎麼實現負載均衡

  8. 資料庫掛了怎麼辦?除了熱備份還有什麼方法

  9. 講講你對spring的理解,不要把ioc和aop背給我聽

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 演算法:找出兩個陣列相等的數,不能用其他資料結構

  4. 演算法:給定一個數字,一個數組,找出陣列中相加等於這兩個數的和,不能用資料結構

  5. 演算法:如何判斷一個樹是不是另一顆樹的子樹

  6. 如何解決併發訪問的錯誤

招銀算是銀行類的公司面試最專業的。
一面上來就是手撕演算法,最後問spring的時候,問對spring的理解,並且面試官提示我不要把ioc和aop背給我聽,就正好講了自己的理解,ioc和aop都是為了降低程式碼侵入性和耦合度。所以,
有時候一些常規的問題,我們最好能有自己的思考,如果是千篇一律的答案,並沒有什麼亮點,將自己的理解講出來或許更好。
二面基本都是在問演算法,講思路就可以了,這個時候就看自己的演算法能力了。
前期一定要多刷題!

 網易 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 專案難點(瘋狂懟)

  4. I++操作是執行緒安全的麼?怎麼保證執行緒安全

  5. 場景題:設計一個下單系統,下單成功後可以給使用者發優惠券

  6. 接上面場景題:伺服器掛了,優惠券還沒發怎麼辦

  7. 資料庫掛了怎麼怎麼辦

  8. 怎麼保證一致性

  9. 分散式事務知道麼

  10. 介紹分散式事務

  11. 你的職業規劃

  • 二面(現場)

  1. 自我介紹

  2. 專案介紹(又是狂懟)

  3. Nio的原理

  4. Channel和buffer

  5. directBuffer和buffer的區別

  6. nio和aio的區別

  7. 鎖的實現原理

  8. 怎麼解決快取和主存的一致性問題

  9. 快取還沒更新到主存,伺服器掛了怎麼辦

  10. 資料庫掛了怎麼辦

網易的面試提供總結的面試者感覺運氣比較好。也跟自己心態有關,這個時候已經壓力不大了,掛了也無所謂,但往往就是這種平常心去面試的時候,發揮的會更好。所以,心態真的很重要。
前兩天騰訊面試官讓下去了解的分散式事務,結果網易一面的場景題基本都是在這一塊討論,最後還具體問了分散式事務,正好現學現賣。所以,
多面試,面試官說讓你去了解,一定要去了解,多學習肯定沒壞處。二面面試官聽說我有部落格,感覺不錯,說很多程式設計師就缺乏總結的能力。平常積累的部落格,感覺終於派上用場了,所以如果有空,維護一個技術部落格,寫寫演算法題解或者一些技術問題,就當是學習筆記。

 攜程 

  • 一面(現場)

  1. 自我介紹

  2. 專案介紹

  3. 專案難點(講到用了訊息佇列優化,被面試官誇了一波)

  4. 相關推薦

    如何準備技術面試+小菜面試

          校招一路走來很幸運,從最初的迷茫,到偶爾的被否認,然後慢慢調整心態,有缺憾才能有進步

    python:YY試題--傳入個數組進行排序,奇數在前進行升序,偶數在後進行降序

    a = input() # 輸入使用空格進行進行間隔 num = [int(n) for n in a.split()] print(num) def mysort(a,ascending=True): # 插入排序,a為list陣列,ascending=True時升

    網易真題 個數變為斐波那契數列數

    題目描述 Fibonacci數列是這樣定義的: F[0] = 0 F[1] = 1 for each i ≥ 2: F[i] = F[i-1] + F[i-2] 因此,Fibonacci數列就形如:0, 1, 1, 2, 3, 5, 8, 13, ...,在Fibonacci數列

    2015騰訊筆試,、二面經(菜的流水賬)

    前言:自從阿里筆試都沒通過,就有點擔心校招連筆試都過不了。而能通過騰訊的筆試,當然是一個非常不錯的機會,一定要好好把握,可惜還是錯過了……唉,自從被鵝廠拋棄後,感覺找工作越來越難了。。。 廢話

    Java nio 學習筆記(四) 淘寶2012技術筆試題

     實現五:統計一個單詞可重複的英文檔案(假設4G)中每個單詞出現的次數,把結果按照英文排序放入一個檔案中。並能夠檢索特定單詞的出現次數。由於檔案過大,不重複單詞總數有限,需要考慮到執行速度和記憶體使用情況。(淘寶筆試技術題) import java.io.File; imp

    騰訊2016TST內推iOS開發WXG面試經驗

    時至今日(8.28),騰訊的校招應該就可以告一段落了。樓主今天下午收到騰訊的電話,告知已經順利通過面試,offer將在九月中下旬派發,懸著的一顆心才得以有著落。下面將為大家分享一下這一個多月裡來的騰訊面試經歷經驗等。 首先介紹一下騰訊的面試流程,首先是專案面,然後是codi

    2016內推 -- 阿里巴巴前端 -- 四面面試經歷

    匆匆找了某溼兄內了個推,才過兩天就收到面試通知了,好吧首先是第一面。 其實也沒什麼可說的,一面主要問基礎,二面才進入專案實習之類的探討,三面兩者都有吧但還是綜合多一點 腦子混了記得不多了,記得多少就記錄多少吧,嗯都是問題。 一面: 1.面試官一上來就先大概瞭解實習的情況,但不深入,也不談實習具

    計算機視覺(深度學習)記錄()CNN的特點以及優勢

    1. 區域性感知 : 通過在底層的區域性掃描獲得影象的區域性特徵,然後在高層綜合這些特徵獲取影象的全域性資訊。作用:降低引數的數目。 2.  權值共享  : CNN中每個卷積核裡面的引數即權值,原始圖片卷積後會得到一副新的圖片,而新圖中的每個畫素都來自同一個卷積核,這就是權

    攻城獅啊

      今天,我們來玩一下深拷貝和淺拷貝吧。可以吧,別給我面子,隨便玩,啥姿勢都行。   說深淺拷貝之前,我們先來談一談JS的儲存,JS變數儲存有棧儲存和堆儲存,基本資料型別存放在棧中,而複雜資料型別存放在堆中,複雜資料型別的引用資料型別的地址儲存在棧中   來看看上面這張圖,應該還是比較清晰的,可能有的朋友會問

    年的總結——的救贖,啊,啊,啊

    ---恢復內容開始--- 離自己進入acm已經快5個月,這半年來,也遇到了很多挫折,首先是起初的兩個月,不懂得學習的方法。遇到一道題不會,就會死磕,或者是遇到一個新的演算法無法理解,也會一直死磕。卻沒有向別人請教。這是一種非常低效的狀態吧。但是後面有一段時間,又反其道而行之了,只想追求在最短的時間裡學到更多

    的Qt學習路程

        大家好,我是一名即將畢業的軟體工程大四學生,以前從未接觸過Qt,但是研究生導師給我的畢業設計讓我使用Qt,所以我從今天開始了Qt的學習路程。     扶額,想刪除已經上傳的圖片,按到了退格鍵,

    嵌入式工程師的血淚史!

    作為一名在嵌入式行業摸爬滾打許久的老鳥,回想自己的經歷之路,那麼漫長可又彷彿近在眼前。隨著學生的日益增多,偶爾之間,會想起自己曾經的一個經歷。——此文僅獻給那些剛剛踏上硬體之路和還在徘徊的同學們,在此我簡要的記錄了我的學習經歷和其間自己所獲的一些心得,以幫助初學者少走彎路。

    談OMO的創新

    創新首先,中國是唯一迎來OMO時代的國家,是移動支付最早普及和最大規模的國家。從線上線下的流量將雙向交織。O2O模式是單向的從線上到線下,OMO模式下,是線上與線下將雙向交織,互相導流。需要強調的是,中國是第一個,可能也是很長一段時間內唯一一個能夠把線上線下打通的國家。起關鍵作用的是移動支付的普及。移動支付是

    南京TSMC 16nm量產出貨,聊聊TSMC的崛起

    芯片 半導體 集成電路 導讀1:臺積電南京12寸晶圓廠於2016年7月7日奠基,原計劃就是從2018年開始提供16nm代工,月產能為2萬片。近期,臺積電南京晶圓廠已經出貨第一批產品,客戶是比特大陸。(恭喜!) 導讀2:半導體芯片公司三種運營模式:IDM(Integrated Device Manu

    機器學習web服務化實戰:次吐血的服務化

      機器學習web服務化實戰:一次吐血的服務化之路 背景 在公司內部,我負責幫助研究院的小夥伴搭建機器學習web服務,研究院的小夥伴提供一個機器學習本地介面,我負責提供一個對外服務的HTTP介面。 說起人工智慧和機器學習,python是最擅長的,其以開發速度快,第三方庫多而

    android 記次富文字載入

    文章連結:https://mp.weixin.qq.com/s/69TRkmFL1aNuSqfw4ULMJw 專案中經常涉及到富文字的載入,後臺管理端編輯器生成的一段html 程式碼要渲染到移動端上面,一種方法是前端做成html頁面,放到伺服器上,移動端這邊直接webVie

    【本人禿頂程式設計師】面試-執行緒池的成長

    ←←←←←←←←←←←← 我都禿頂了,還不點關注! 背景 相信大家在面試過程中遇到面試官問執行緒的很多,執行緒過後就是執行緒池了。從易到難,都是這麼個過程,還有就是確實很多人在工作中接觸執行緒池比較少,最多的也就是建立一個然後往裡面提交執行緒,對於一些經驗很豐富的面試官來說,一下就可

    公司招聘技術的技巧(程式設計師成長

    大公司喜歡專才,越專業越好。 小公司喜歡全才,越全面越好。全棧工程師在小公司很吃香,很受歡迎,而小公司的老闆會載入程式員往全棧方向發展。 要成長為技術大神,一定會經歷過,外包公司、產品公司的洗禮。外包公司就是有一套或者幾套成熟的生產技術,需要進入裡面花費很多的時間學習

    spring原始碼解析()邁向學習spring

      Spring總共大約有20個模組,由1300多個不同的檔案構成。而這些元件被分別整合在核心容器(CoreContainer)、Aop(AspectOrientedProgramming)和裝置支援(Instrmentation)、資料訪問及整合(DataAccess/Integeration)、Web、報

    ASP.NET MVC4 菜專案)改造示例程式碼擴充套件使用者資訊管理

    模板建立示例專案 MVC的基礎內容我就不說了,入門建議看看官方的MvcMovie示例。       開啟VS2012,【新建專案】,選擇【ASP.NET MVC 4 Web應用程式】,名稱叫MyMvc(這隨便取,但常規是公司.專案的名稱空間),按【確定】,模板選【I