(轉(zhuǎn))面試心得與總結(jié)---BAT捣炬、網(wǎng)易熊昌、蘑菇街

原文

之前實習(xí)的時候就想著寫一篇面經(jīng),后來忙就給忘了湿酸,現(xiàn)在找完工作了婿屹,也是該靜下心總結(jié)一下走過的路程了,我全盤托出推溃,奉上這篇誠意之作昂利,希望能給未來找工作的人一點指引和總結(jié), 也希望能使大家少走點彎路 铁坎, 如果能耐心讀完蜂奸,相信對你會找到你需要的東西。
先說一下LZ的基本情況硬萍,LZ是四川某985學(xué)校通信專業(yè)的研究生(非計算機)窝撵,大學(xué)階段也就學(xué)了C語言,根本沒想過最后要成為碼農(nóng)襟铭。大四才開始學(xué)java碌奉,研一下開始學(xué)android,所以LZ覺得自己開始就是一個小白寒砖,慢慢成長起來的赐劣。
一、心態(tài)
心態(tài)很重要哩都!
心態(tài)很重要魁兼!
心態(tài)很重要!
重要的事情說三遍漠嵌,這一點我覺得是必須放到前面來講咐汞。
找工作之前盖呼,有一點你必須清楚,就是找工作是一件看緣分的事情化撕,不是你很牛逼几晤,你就一定能進你想進的公司,都是有一個概率在那植阴。如果你基礎(chǔ)好蟹瘾,項目經(jīng)驗足,同時準(zhǔn)備充分掠手,那么你拿到offer的概率就會比較高憾朴;相反,如果你準(zhǔn)備不充分喷鸽,基礎(chǔ)也不好众雷,那么你拿到offer的概率就會比較低,但是你可以多投幾家公司做祝,這樣拿到offer的幾率就要大一點报腔,因為你總有運氣好的時候。所以剖淀,不要懼怕面試,剛開始失敗了沒什么的纤房,多投多嘗試纵隔,面多了你就自然能成面霸了。得失心也不要太重炮姨,最后每個人都會有offer的捌刮。
還有一個對待工作的心態(tài),有些人可能覺得自己沒有動力去找一個好工作舒岸。其實你需要明白一件事情绅作,你讀了十幾二十年的書,為的是什么蛾派,最后不就是為了找到一個好工作么《砣希現(xiàn)在到了關(guān)鍵時刻,你為何不努力一把呢洪乍,為什么不給自己一個好的未來呢眯杏,去一個自己不滿意的公司工作,你甘心嗎?
想清楚這一點壳澳,我相信大多數(shù)人都會有一股干勁了岂贩,因為LZ剛剛準(zhǔn)備開始找實習(xí)的時候,BAT這種公司想都不敢想巷波,覺得能進個二線公司就很不錯了萎津,后來發(fā)現(xiàn)自己不逼自己一把卸伞,你真不知道自己有多大能耐,所以請對找工作保持積極與十二分的熱情锉屈,也請認真對待每一次筆試面試荤傲。
二、基礎(chǔ)
基礎(chǔ)這東西部念,各個公司都很看重弃酌,尤其是BAT這種大公司,他們看中人的潛力儡炼,他們舍得花精力去培養(yǎng)妓湘,所以基礎(chǔ)是重中之重。之前很多人問我乌询,項目經(jīng)歷少怎么辦榜贴,那就去打牢基礎(chǔ),當(dāng)你的基礎(chǔ)好的發(fā)指的時候妹田,你的其他東西都不重要了唬党。
基礎(chǔ)無外乎幾部分:語言(C/C++或java),操作系統(tǒng)鬼佣,TCP/IP驶拱,數(shù)據(jù)結(jié)構(gòu)與算法,再加上你所熟悉的領(lǐng)域晶衷。這里面其實有很多東西蓝纲,各大面試寶典都有列舉。
在這只列舉了Android客戶端所需要的和我面試中所遇到的知識點晌纫,盡量做到全面税迷,如果你掌握了以下知識點,去面android客戶端應(yīng)該得心應(yīng)手锹漱。
J2SE基礎(chǔ)

  1. 九種基本數(shù)據(jù)類型的大小箭养,以及他們的封裝類。
  2. Switch能否用string做參數(shù)哥牍?
  3. equals與==的區(qū)別毕泌。
  4. Object有哪些公用方法?
  5. Java的四種引用嗅辣,強弱軟虛懈词,用到的場景。
  6. Hashcode的作用辩诞。
  7. ArrayList坎弯、LinkedList、Vector的區(qū)別。
  8. String抠忘、StringBuffer與StringBuilder的區(qū)別撩炊。
  9. Map、Set崎脉、List拧咳、Queue、Stack的特點與用法囚灼。
  10. HashMap和HashTable的區(qū)別骆膝。
  11. HashMap和ConcurrentHashMap的區(qū)別,HashMap的底層源碼灶体。
  12. TreeMap阅签、HashMap、LindedHashMap的區(qū)別蝎抽。
  13. Collection包結(jié)構(gòu)政钟,與Collections的區(qū)別。
  14. try catch finally樟结,try里有return养交,finally還執(zhí)行么?
  15. Excption與Error包結(jié)構(gòu)瓢宦。OOM你遇到過哪些情況碎连,SOF你遇到過哪些情況。
  16. Java面向?qū)ο蟮娜齻€特征與含義驮履。
  17. Override和Overload的含義去區(qū)別鱼辙。
  18. Interface與abstract類的區(qū)別。
  19. Static class 與non static class的區(qū)別疲吸。
  20. java多態(tài)的實現(xiàn)原理。
  21. 實現(xiàn)多線程的兩種方法:Thread與Runable前鹅。
  22. 線程同步的方法:sychronized摘悴、lock、reentrantLock等舰绘。
  23. 鎖的等級:方法鎖、對象鎖、類鎖廓鞠。
  24. 寫出生產(chǎn)者消費者模式魁瞪。
  25. ThreadLocal的設(shè)計理念與作用。
  26. ThreadPool用法與優(yōu)勢秦陋。
  27. Concurrent包里的其他東西:ArrayBlockingQueue蔓彩、CountDownLatch等等。
  28. wait()和sleep()的區(qū)別。
  29. foreach與正常for循環(huán)效率對比赤嚼。
  30. Java IO與NIO旷赖。
  31. 反射的作用于原理。
  32. 泛型常用特點更卒,List<String>能否轉(zhuǎn)為List<Object>等孵。
  33. 解析XML的幾種方式的原理與特點:DOM、SAX蹂空、PULL俯萌。
  34. Java與C++對比。
  35. Java1.7與1.8新特性上枕。
  36. 設(shè)計模式:單例咐熙、工廠、適配器姿骏、責(zé)任鏈糖声、觀察者等等。
  37. JNI的使用分瘦。
    Java里有很多很雜的東西蘸泻,有時候需要你閱讀源碼,大多數(shù)可能書里面講的不是太清楚嘲玫,需要你在網(wǎng)上尋找答案悦施。
    推薦書籍:《java核心技術(shù)卷I》《Thinking in java》《java并發(fā)編程》《effictive java》《大話設(shè)計模式》

JVM

  1. 內(nèi)存模型以及分區(qū),需要詳細到每個區(qū)放什么去团。
  2. 堆里面的分區(qū):Eden抡诞,survival from to,老年代土陪,各自的特點昼汗。
  3. 對象創(chuàng)建方法,對象的內(nèi)存分配鬼雀,對象的訪問定位顷窒。
  4. GC的兩種判定方法:引用計數(shù)與引用鏈。
  5. GC的三種收集方法:標(biāo)記清除源哩、標(biāo)記整理鞋吉、復(fù)制算法的原理與特點,分別用在什么地方励烦,如果讓你優(yōu)化收集方法谓着,有什么思路?
  6. GC收集器有哪些坛掠?CMS收集器與G1收集器的特點赊锚。
  7. Minor GC與Full GC分別在什么時候發(fā)生治筒?
  8. 幾種常用的內(nèi)存調(diào)試工具:jmap、jstack改抡、jconsole矢炼。
  9. 類加載的五個過程:加載、驗證阿纤、準(zhǔn)備句灌、解析、初始化欠拾。
  10. 雙親委派模型:Bootstrap ClassLoader胰锌、Extension ClassLoader、ApplicationClassLoader藐窄。
  11. 分派:靜態(tài)分派與動態(tài)分派资昧。
    JVM過去過來就問了這么些問題,沒怎么變荆忍,內(nèi)存模型和GC算法這塊問得比較多格带,可以在網(wǎng)上多找?guī)灼┛蛠砜纯础?br> 推薦書籍:《深入理解java虛擬機》

操作系統(tǒng)

  1. 進程和線程的區(qū)別。
  2. 死鎖的必要條件刹枉,怎么處理死鎖叽唱。
  3. Window內(nèi)存管理方式:段存儲,頁存儲微宝,段頁存儲棺亭。
  4. 進程的幾種狀態(tài)。
  5. IPC幾種通信方式蟋软。
  6. 什么是虛擬內(nèi)存镶摘。
  7. 虛擬地址、邏輯地址岳守、線性地址凄敢、物理地址的區(qū)別。
    因為是做android的這一塊問得比較少一點湿痢,還有可能上我簡歷上沒有寫操作系統(tǒng)的原因涝缝。
    推薦書籍:《深入理解現(xiàn)代操作系統(tǒng)》

TCP/IP

  1. OSI與TCP/IP各層的結(jié)構(gòu)與功能,都有哪些協(xié)議蒙袍。
  2. TCP與UDP的區(qū)別俊卤。
  3. TCP報文結(jié)構(gòu)嫩挤。
  4. TCP的三次握手與四次揮手過程害幅,各個狀態(tài)名稱與含義,TIMEWAIT的作用岂昭。
  5. TCP擁塞控制以现。
  6. TCP滑動窗口與回退N針協(xié)議。
  7. Http的報文結(jié)構(gòu)。
  8. Http的狀態(tài)碼含義邑遏。
  9. Http request的幾種類型佣赖。
  10. Http1.1和Http1.0的區(qū)別
  11. Http怎么處理長連接。
  12. Cookie與Session的作用于原理记盒。
  13. 電腦上訪問一個網(wǎng)頁憎蛤,整個過程是怎么樣的:DNS、HTTP纪吮、TCP俩檬、OSPF、IP碾盟、ARP棚辽。
  14. Ping的整個過程。ICMP報文是什么冰肴。
  15. C/S模式下使用socket通信屈藐,幾個關(guān)鍵函數(shù)。
  16. IP地址分類熙尉。
  17. 路由器與交換機區(qū)別联逻。
    網(wǎng)絡(luò)其實大體分為兩塊,一個TCP協(xié)議骡尽,一個HTTP協(xié)議遣妥,只要把這兩塊以及相關(guān)協(xié)議搞清楚攀细,一般問題不大箫踩。
    推薦書籍:《TCP/IP協(xié)議族》

數(shù)據(jù)結(jié)構(gòu)與算法

  1. 鏈表與數(shù)組。
  2. 隊列和棧谭贪,出棧與入棧境钟。
  3. 鏈表的刪除、插入俭识、反向慨削。
  4. 字符串操作。
  5. Hash表的hash函數(shù)套媚,沖突解決方法有哪些缚态。
  6. 各種排序:冒泡、選擇堤瘤、插入玫芦、希爾、歸并本辐、快排桥帆、堆排医增、桶排、基數(shù)的原理老虫、平均時間復(fù)雜度叶骨、最壞時間復(fù)雜度、空間復(fù)雜度祈匙、是否穩(wěn)定忽刽。
  7. 快排的partition函數(shù)與歸并的Merge函數(shù)。
  8. 對冒泡與快排的改進夺欲。
  9. 二分查找缔恳,與變種二分查找。
  10. 二叉樹洁闰、B+樹歉甚、AVL樹、紅黑樹扑眉、哈夫曼樹纸泄。
  11. 二叉樹的前中后續(xù)遍歷:遞歸與非遞歸寫法,層序遍歷算法腰素。
  12. 圖的BFS與DFS算法聘裁,最小生成樹prim算法與最短路徑Dijkstra算法。
  13. KMP算法弓千。
  14. 排列組合問題衡便。
  15. 動態(tài)規(guī)劃、貪心算法洋访、分治算法镣陕。(一般不會問到)
  16. 大數(shù)據(jù)處理:類似10億條數(shù)據(jù)找出最大的1000個數(shù).........等等
    算法的話其實是個重點,因為最后都是要你寫代碼姻政,所以算法還是需要花不少時間準(zhǔn)備呆抑,這里有太多算法題,寫不全汁展,我的建議是沒事多在OJ上刷刷題(湃蛋客網(wǎng)、leetcode等)食绿,劍指offer上的算法要能理解并自己寫出來侈咕,編程之美也推薦看一看。
    推薦書籍:《大話數(shù)據(jù)結(jié)構(gòu)》《劍指offer》《編程之美》

Android

  1. Activity與Fragment的生命周期器紧。
  2. Acitivty的四中啟動模式與特點耀销。
  3. Activity緩存方法。
  4. Service的生命周期品洛,兩種啟動方法树姨,有什么區(qū)別。
  5. 怎么保證service不被殺死桥状。
  6. 廣播的兩種注冊方法帽揪,有什么區(qū)別。
  7. Intent的使用方法辅斟,可以傳遞哪些數(shù)據(jù)類型转晰。
  8. ContentProvider使用方法。
  9. Thread士飒、AsycTask查邢、IntentService的使用場景與特點。
  10. 五種布局: FrameLayout 酵幕、 LinearLayout 扰藕、 AbsoluteLayout 、 RelativeLayout 芳撒、 TableLayout各自特點及繪制效率對比邓深。
  11. Android的數(shù)據(jù)存儲形式。
  12. Sqlite的基本操作笔刹。
  13. Android中的MVC模式芥备。
  14. Merge、ViewStub的作用舌菜。
  15. Json有什么優(yōu)劣勢萌壳。
  16. 動畫有哪兩類,各有什么特點日月?
  17. Handler袱瓮、Loop消息隊列模型,各部分的作用爱咬。
  18. 怎樣退出終止App懂讯。
  19. Asset目錄與res目錄的區(qū)別。
  20. Android怎么加速啟動Activity台颠。
  21. Android內(nèi)存優(yōu)化方法:ListView優(yōu)化褐望,及時關(guān)閉資源,圖片緩存等等串前。
  22. Android中弱引用與軟引用的應(yīng)用場景瘫里。
  23. Bitmap的四中屬性,與每種屬性隊形的大小荡碾。
  24. View與View Group分類谨读。自定義View過程:onMeasure()、onLayout()坛吁、onDraw()劳殖。
  25. Touch事件分發(fā)機制铐尚。
  26. Android長連接,怎么處理心跳機制哆姻。
  27. Zygote的啟動過程宣增。
  28. Android IPC:Binder原理。
  29. 你用過什么框架矛缨,是否看過源碼爹脾,是否知道底層原理。
  30. Android5.0箕昭、6.0新特性灵妨。
    Android的話,多是一些項目中的實踐落竹,使用多了泌霍,自然就知道了,還有就是多逛逛一些名人的博客述召,書上能講到的東西不多烹吵。另外android底層的東西,有時間的話可以多了解一下桨武,加分項肋拔。
    推薦書籍:《瘋狂android講義》《深入理解android》

其他綜合性的書籍也需要閱讀,推薦:《程序員面試筆試寶典》《程序員面試金典》呀酸。另外“帕狗洌客網(wǎng)www.newcoder.com”是個好地方,里面有各種面試筆試題性誉,也有自己在線的OJ窿吩,強烈推薦,還有左程云老師的算法視屏課(已經(jīng)出書了)错览,反正我看了之后對我?guī)椭艽螅ㄟ@不是植入廣告)纫雁。
三、 項目
關(guān)于項目倾哺,這部分每個人的所做的項目不同轧邪,所以不能具體的講。項目不再與好與不好羞海,在于你會不會包裝忌愚,有時候一個很low的項目也能包裝成比較高大上的項目,多用一些專業(yè)名詞却邓,突出關(guān)鍵字硕糊,能使面試官能比較容易抓住重點。在聊項目的過程中,其實你的整個介紹應(yīng)該是有一個大體的邏輯简十,這個時候是在考驗?zāi)愕谋磉_與敘述能力檬某,所以好好準(zhǔn)備很重要。
面試官喜歡問的問題無非就幾個點:

  1. XXX(某個比較重要的點)是怎么實現(xiàn)的螟蝙?
  2. 你在項目中遇到的最大的困難是什么恢恼,怎么解決的?
  3. 項目某個部分考慮的不夠全面胶逢,如果XXXX,你怎么優(yōu)化饰潜?
  4. XXX(一個新功能)需要實現(xiàn)初坠,你有什么思路?
    其實你應(yīng)該能夠預(yù)料到面試官要問的地方彭雾,請?zhí)崆皽?zhǔn)備好碟刺,如果被問到?jīng)]有準(zhǔn)備到的地方,也不要緊張薯酝,一定要說出自己的想法半沽,對不對都不是關(guān)鍵,主要是有自己的想法吴菠,另外者填,你應(yīng)該對你的項目整體框架和你做的部分足夠熟悉。
    四做葵、 其他
    你應(yīng)該問的問題
    面試?yán)镎加矗詈竺嫱曛笠话忝嬖嚬俣紩柲悖阌袥]有什么要問他的酿矢。其實這個問題是有考究的榨乎,問好了其實是有加分的,一般不要問薪資瘫筐,主要應(yīng)該是:關(guān)于公司的蜜暑、技術(shù)和自身成長的。
    以下是我常問的幾個問題策肝,如果需要可以參考:
  5. 貴公司一向以XXX著稱肛捍,能不能說明一下公司這方面的特點?
  6. 貴公司XXX業(yè)務(wù)發(fā)展很好之众,這是公司發(fā)展的重點么篇梭?
  7. 對技術(shù)和業(yè)務(wù)怎么看?
  8. 貴公司一般的團隊是多大酝枢,幾個人負責(zé)一個產(chǎn)品或者業(yè)務(wù)恬偷?
  9. 貴公司的開發(fā)中是否會使用到一些最新技術(shù)?
  10. 對新人有沒有什么培訓(xùn)帘睦,會不會安排導(dǎo)師袍患?
  11. 對Full Stack怎么看坦康?
  12. 你覺得我有哪些需要提高的地方?

知識面
除了基礎(chǔ)外诡延,你還應(yīng)該對其他領(lǐng)域的知識有多少有所涉獵滞欠。對于你所熟悉的領(lǐng)域,你需要多了解一點新技術(shù)與科技前沿肆良,你才能和面試官談笑風(fēng)生筛璧。

軟實力
什么是軟實力,就是你的人際交往惹恃、靈活應(yīng)變能力夭谤,在面試過程中,良好的禮節(jié)巫糙、流暢的表達朗儒、積極的交流其實都是非常重要的。很多公司可能不光看你的技術(shù)水平怎么樣参淹,而更看重的是你這個人怎么樣的醉锄。所以在面試過程中,請保持誠信浙值、積極恳不、樂觀、幽默开呐,這樣更容易得到公司青睞妆够。
很多時候我們都會遇到一個情況,就是面試官的問題我不會负蚊,這時候大多數(shù)情況下不要馬上說我不會神妹,要懂得牽引,例如面試官問我C++的多態(tài)原理家妆,我不懂鸵荠,但我知道java的,哪我可以向面試官解釋說我知道java的伤极,類似的這種可以往相關(guān)的地方遷移(但是需要注意的是一定不要不懂裝懂蛹找,被拆穿了是很尷尬的),意思就是你要盡可能的展示自己哨坪,表現(xiàn)出你的主動性庸疾,向面試官推銷自己。
還有就是遇到智力題的時候当编,不要什么都不說届慈,面試官其實不是在看你的答案,而是在看你的邏輯思維,你只要說出你自己的見解金顿,有一定的思考過程就行臊泌。

五、 面經(jīng)
LZ應(yīng)聘的職位都是android客戶端開發(fā)揍拆。
面經(jīng)其實說來話長渠概,包括實習(xí)的話面過的公司有:CVTE、騰訊嫂拴、阿里播揪、百度、網(wǎng)易筒狠、蘑菇街猪狈、小米。最早得追溯到到今年3月份窟蓝,那時候剛過完年罪裹,然后阿里的實習(xí)內(nèi)推就開始了饱普,我基本都沒什么準(zhǔn)備运挫,就突如其來的接到了人生中第一個面試電話。
阿里實習(xí)內(nèi)推一面: 電話面試套耕, 由于是第一次面試谁帕,所以非常緊張,項目都沒怎么說清楚冯袍。然后面試官就開始問項目細節(jié)了匈挖,這里我關(guān)于一個項目細節(jié)和面試官有不同的看法,面試官說我這樣做有問題康愤,然后我說我們確實是這樣做的儡循,并沒有出什么錯,差點和面試官吵起來征冷,最后我還是妥協(xié)了择膝。然后問了我一個怎么對傳輸?shù)臄?shù)據(jù)加密,我答的很挫检激,然后面試官就開始鄙視我:你這個基礎(chǔ)不好肴捉,那個基礎(chǔ)不好,那你說說你還有其他什么優(yōu)勢沒叔收?Blabla緊張的說了一些…………只面了30分鐘不到齿穗,然后妥妥的就掛了。
經(jīng)過這次面試突然感覺人生的艱辛饺律,幾天后我們教研室的其他同學(xué)陸續(xù)開始了面試窃页,他們都很順利,其中我的室友(單程車票)很順利的拿到了offer,他是個大神腮出,然后我就壓力無比的大帖鸦。制定了整套復(fù)習(xí)計劃,從早上9點看書看到晚上10點胚嘲。
到了3月15號左右有CVTE面試作儿,第一次面試是群面,比較坑馋劈,坐了一個小時的車過去群面了5分鐘攻锰,沒什么好說的。
CVTE實習(xí)面 :在自我介紹和項目后妓雾,面試官開始問一些java基礎(chǔ)娶吞,object有哪些方法?這個還能說了一些械姻。問hashmap有多大妒蛇,這個當(dāng)時一臉茫然,還sb的答了一個65535楷拳。然后面試官讓我寫三分鐘內(nèi)寫一個二分查找绣夺,當(dāng)時也是第一次手寫代碼,并且還計時欢揖,完全沒經(jīng)驗陶耍,最后超時寫了出來。中間又問了我一堆基礎(chǔ)她混,都答得不是很完整烈钞。最后問我遇到過OOM的情況沒有,什么情況下會OOM坤按。這個也沒答出來毯欣,然后又妥妥的掛了。
這次經(jīng)歷告訴我臭脓,我是缺少面試經(jīng)驗酗钞,和現(xiàn)場寫代碼的能力,基礎(chǔ)還需要多加強谢鹊。所以我開始各種準(zhǔn)備算吩,在一個月的時間里看了四本面試書(程序員面試寶典、java程序員面試寶典佃扼、程序員面試筆試寶典偎巢、劍指offer),把所有關(guān)于數(shù)據(jù)結(jié)構(gòu)和算法的東西用代碼寫了一遍兼耀。

然后到了四月初压昼,騰訊來了求冷,我最開始還是非常向往騰訊的,但就當(dāng)時那個情況窍霞,我對自己不報太大希望匠题,覺得能進BAT這樣的頂級公司是個奢侈的夢想。
騰訊的面試是在一個5星級酒店里面但金,逼格高大上韭山,感覺問的東西也比較多,感覺喜歡問智力題冷溃,但是我沒遇到钱磅。
騰訊實習(xí)1面: 50分鐘左右, 面試的時候還是有些緊張的似枕,但是運氣好盖淡,遇到了一個學(xué)校的師兄,他一直叫我不要緊張凿歼。幾個比較關(guān)鍵的問題:死鎖的必要條件褪迟,怎么解決,java和c++比有什么優(yōu)勢答憔,java同步方法味赃,activity生命周期,中間讓我設(shè)計了個銀行排隊系統(tǒng)攀唯,我說了一堆洁桌。然后讓我寫了一個計算一個int里面二進制有幾個1渴丸,然后我用最高效的方法(n=n&n-1)寫出來之后侯嘀,面試官有點意外,還說沒見過這么寫的谱轨,讓我跟他解釋一下戒幔。后面就是拉拉家常,問我對工作地點怎么看土童,讓我對比qq和微信诗茎,一面出來之后,面試官讓我留意通知献汗,心想是過了敢订,其實發(fā)揮的不怎么好。
就在會學(xué)校的路上罢吃,都要到學(xué)校了楚午,收到了騰訊二面的通知,下午3點尿招。然后我又跑回去二面矾柜。
騰訊實習(xí)2面: 二面是一個很嚴(yán)肅的人阱驾,看上去就比較資深那種,一直都不笑怪蔑,后面才知道是手機管家T4的專家里覆。一開始就問我項目里,心跳包是怎么設(shè)計的缆瓣,我項目里并沒有用心跳喧枷,然后只能跟他說沒做,問我用json傳輸數(shù)據(jù)有什么不好(我只知道用哪想過有什么不好)弓坞。又問了http和socket的區(qū)別割去,兩個協(xié)議哪個更高效一點,遇到過java內(nèi)存泄露沒有昼丑,用過哪些調(diào)試java內(nèi)存工具呻逆,java四種引用。多數(shù)都是項目上的東西菩帝,基礎(chǔ)的東西沒問太多咖城,然后感覺自己答的不是很好,很多都不知道呼奢,而且還答錯了宜雀。其實我感覺我應(yīng)該是過不了的,但是最后我問問題的時候握础,我讓他評價下我的表現(xiàn)辐董,他說不好評價,我自己說了一堆禀综,說在學(xué)校里確實見識到的東西比較少简烘,很多東西沒考慮全面,然后他表示贊同定枷,和我探討了一番孤澎,我覺得最后這個問題給我加了不少分。二面也面了50分鐘左右欠窒。
回來后發(fā)現(xiàn)我的狀態(tài)一直沒變覆旭,而他們二面完了的都到了HR面了,我以為我已經(jīng)掛定了岖妄,后來在一天晚上12點的時候型将,驚喜的收到了第二天HR面的短信,當(dāng)晚上幾乎高興得一晚上沒睡著覺荐虐。
騰訊實習(xí)3面(HR): 就是hr面七兜,也就面了十幾分鐘,聊聊天缚俏,問問哪的人,未來什么打算的等等,基本不怎么掛人就不詳細寫了揭璃。
就這樣拿到了人生中第一個實習(xí)offer军援。

后面找實習(xí)的心就放松了,沒有復(fù)習(xí)了。然后到了5月5號,阿里來了。對阿里也只是想去面一面的心態(tài)了浓恳,因為已經(jīng)有騰訊的offer了,就沒想太多碗暗。
阿里實習(xí)1面: 面過騰訊之后發(fā)現(xiàn)自己已經(jīng)比較淡定了颈将,面試得時候能夠比較好的交談了。這一面也遇到一個比較好的面試官言疗,能很輕松的和他交流晴圾。主要的問題是android的:activity的生命周期、activity的四種啟動模式(當(dāng)時忘了一些沒答全)噪奄、線性布局和相對布局死姚、多線程請求,java GC算法與GC方法勤篮,內(nèi)存模型都毒,有一個比較特別的問題是問我微信的朋友圈怎么設(shè)計,然后我把思路跟他說了碰缔,其他的就是問了項目相關(guān)的了账劲。還問了我一個覺得技術(shù)深度重要還是技術(shù)寬度重要,一面感覺還是比較基礎(chǔ)的金抡。
阿里實習(xí)2面: 這一面就比較虐心瀑焦,碰到一個阿里云的CTO,一上去項目看都不看竟终,直接問我寫過多少行代碼蝠猬,我說至少3切蟋、4萬行统捶,然后他讓我寫了兩個題:一個找素數(shù),一個遞歸求階層柄粹,對我也算手下留情(他后來讓我同學(xué)寫AVL樹的插入算法喘鸟,想想也是醉了)。后面就各種基礎(chǔ)了驻右,java的基礎(chǔ)挨個問了一遍什黑,比較關(guān)鍵多線程實現(xiàn),鎖的幾種等級等堪夭,反射的用法愕把,wait()和sleep()(討論這個的時候他把我說暈了)拣凹,Java還好,多數(shù)能應(yīng)付恨豁,然后他就開始問c++的了嚣镜。雖然是基礎(chǔ),但是lz忘了差不多了橘蜜,什么指針數(shù)組和數(shù)組指針菊匿,虛函數(shù),多態(tài)實現(xiàn)(這個我扯到j(luò)ava上了)等等计福,問了很多跌捆,很多都沒答上來,然后他說我基礎(chǔ)不太好(我想說我簡歷上寫的了解C++象颖,為什么要追著我問TT)佩厚。
就這樣出來了,本來以為掛了说订,后面被通知過了可款。同學(xué)都只有2面技術(shù)面,我居然多了一面克蚂,叫交叉面試闺鲸,心想這下肯定完了。
阿里實習(xí)3面: 這一面遇到了后面我去實習(xí)時候的部門boss埃叭,人非常好摸恍,來的時候走的時候都要和我握手,非常的平易近人赤屋。這一面還是問項目上的一些東西居多立镶,基礎(chǔ)就問了個java多線程,各個排序的時間復(fù)雜度类早、思想媚媒。技術(shù)問了半個小時,后面半個小時就開始各種聊人生了(@_@)涩僻,我家是哪的缭召,父母干嘛的,中學(xué)怎么樣逆日,大學(xué)怎么樣嵌巷,等等,完全就不像是技術(shù)面嘛(后來才知道室抽,我一個同學(xué)一開始來就和他聊人生搪哪,還聊過了。再次感嘆找工作是看緣分吶)坪圾。
阿里實習(xí)4面(HR) :阿里hr比騰訊hr面專業(yè)晓折,面了一個小時惑朦,把我的生活經(jīng)歷趴了一遍,(問了類似你的優(yōu)缺點漓概,最讓你高興的一件事行嗤,最讓你傷心的一件事,你的職業(yè)規(guī)劃垛耳,你的理想等等栅屏,這種,現(xiàn)在想不起來了)也沒什么特別好說的堂鲜。
面完后第二天去圓桌簽offer栈雳,就這樣又拿到了阿里的實習(xí)offer。

LZ后面衡量了杭州阿里B2B和廣州騰訊MIG缔莲,最后選擇去了阿里哥纫,因為在總部,感覺大boss人比較好痴奏,發(fā)展前途可能不錯蛀骇,而且留下來的幾率比較大,而騰訊是一個分部門读拆,感覺可能不是很有前景(但是后來了解到其實廣州騰訊MIG發(fā)展前景非常好擅憔,環(huán)境也非常和諧,我同學(xué)去實習(xí)的都留下來了檐晕。哎暑诸,只能感嘆選擇是個大問題)。在阿里實習(xí)的兩個月時間也挺愉快的辟灰,學(xué)到了不少東西个榕,也認識了很好的師兄和主管,只因最后被擁抱了變化沒有拿到正式offer芥喇。
實習(xí)面經(jīng)就已經(jīng)寫完了西采,后面是正式找工作的經(jīng)歷,主要是內(nèi)推比較多:騰訊继控、網(wǎng)易械馆、蘑菇街、小米湿诊,校招就面了家百度狱杰。
在阿里實習(xí)的時候,面了網(wǎng)易和蘑菇街厅须。

網(wǎng)易面試是我面了這么多中,問得最專業(yè)的了食棕。
網(wǎng)易內(nèi)推1面: 電話面朗和,一天在里中午休息的時候面的错沽。這一面我面得很爛,由于在阿里實習(xí)眶拉,面試官恰好也在阿里呆過千埃,問了我在阿里學(xué)到了哪些東西,看過哪些框架忆植,看過源碼沒有放可,我支支吾吾說了一些,面試官不太滿意(我表示我都說不全啊朝刊,在阿里就來了不久耀里,哪那么多時間看源碼)。項目各種細節(jié)問一通之后拾氓,開始問基礎(chǔ)冯挎,Http報文結(jié)構(gòu),Handler咙鞍、Looper模型房官,ThreadLocal(這個LZ當(dāng)時沒答上來),怎么使service不被殺死续滋,android內(nèi)存優(yōu)化翰守,自己實現(xiàn)線程隊列模型,問我怎么設(shè)計(這個當(dāng)時被前面的問題問蒙了疲酌,直接說不知道了)潦俺,面了20+分鐘,感覺答得都不怎么好徐勃,然后面試官問我說還有沒有什么比較擅長的他沒有問道的事示,我就把android Framework里zygote的啟動和Binder通信說了一遍(這里強行裝了一次逼)。
面完之后本以為掛定了僻肖,然后師姐跟我說居然過了肖爵,也是夠神奇,我覺得是我后面補充的內(nèi)容救了我臀脏。
網(wǎng)易內(nèi)推2面: 二面是現(xiàn)場面劝堪,就在阿里濱江區(qū)的隔壁。時間是一天中午揉稚,吃了飯就到了隔壁秒啦。面試官是個比較年輕人,可能大不了我?guī)讱q搀玖,也是非常好說話余境,開始也是聊項目,我把在阿里做的app和自己寫的小框架拿出來,他就指著上面各種問芳来,這里怎么實現(xiàn)含末,會有什么問題,你怎么解決即舌,然后他描述了一個場景說佣盒,兩個activity,前面的是個dialog activity顽聂,怎么在dialog activity存在的情況下改變后面的activity(lz答的用廣播)肥惭。android怎么解決緩存,要是內(nèi)存超了怎么辦紊搪?然后扯到了JVM蜜葱,GC判定算法與方法,哪個區(qū)域用什么GC算法嗦明,怎么改進復(fù)制算法笼沥。然后是基礎(chǔ),也像一面一樣問了一些娶牌,hashmap和concurrntHashmap的區(qū)別奔浅、泛型能否強制轉(zhuǎn)換。然后是算法诗良,問了快排和歸并的平均時間復(fù)雜度與最差時間復(fù)雜度汹桦,出了個算法題:怎么找到一個隨機數(shù)組的前50大數(shù)、中間50大數(shù)鉴裹,(這個用最小堆和partition函數(shù))舞骆,復(fù)雜度是多少。
面完之后其實感覺還不錯径荔,基本都打答上來了督禽,順利進入三面。
網(wǎng)易內(nèi)推3面(HR): hr面也是現(xiàn)場总处,也聊了很多狈惫,問我為什么要從阿里來網(wǎng)易,有什么打算鹦马,你看中網(wǎng)易的什么(主要是針對我是在阿里實習(xí)來問的胧谈,我就講了一堆網(wǎng)易的優(yōu)勢),讓來杭州工作愿不愿意荸频。還跟我說了菱肖,這次內(nèi)推是優(yōu)中選優(yōu),有名額限制旭从,如果沒有通過稳强,請繼續(xù)關(guān)注網(wǎng)易校招场仲。
后面讓師姐查了下狀態(tài),狀態(tài)顯示是三面已通過键袱。但是最后沒有收到offer燎窘,還是有點小失望摹闽。

蘑菇街面試感覺比較基礎(chǔ)蹄咖,沒有什么技術(shù)難度。
蘑菇街內(nèi)推1面: 電話面付鹿,也是在一個中午面的澜汤。18分鐘,問了一些項目舵匾,主要是問基礎(chǔ)俊抵、問得非常基礎(chǔ):Arraylist與LinkedList區(qū)別坐梯,String與StringBuffer用法徽诲,HashMap與HashTable區(qū)別,Synchronized用法等等等等(非吵逞基礎(chǔ))谎替,這不一一列舉了,然后很順利的就過了蹋辅。
2面是在20天后了钱贯,也不知道蘑菇街出了什么岔子。
蘑菇街內(nèi)推2面 :也是電話面侦另,CTO面試秩命,就整體聊了項目,我在項目中學(xué)到了什么褒傅,遇到什么困難怎么解決的弃锐,在阿里實習(xí)學(xué)到了哪些東西,有看過源碼么殿托,我的優(yōu)缺點霹菊,我為什么選擇蘑菇街,我了解蘑菇街哪些東西碌尔。最后答完感覺自己答得還行但是也沒有過浇辜,不知道為什么。

小米是投的內(nèi)推精英計劃唾戚,50個名額柳洋,解決北京戶口。
小米內(nèi)推1面: 電話面叹坦,大概40分鐘熊镣,面試的時候那邊很吵,不過幸好面試官語速慢,而且我答完一個問題后绪囱,面試官會和我交流哪里沒有答好测蹲。沒有問項目,就問了基礎(chǔ)鬼吵,問題也不多:HashMap刪除元素的方法扣甲,for each和正常for的用在不同數(shù)據(jù)結(jié)構(gòu)(ArrayList、set齿椅、hashmap)上的效率區(qū)別(LZ表示沒有看過源碼琉挖,不知道),static class和non-static class的區(qū)別涣脚,一個大文件幾個GB示辈,怎么實現(xiàn)復(fù)制(這個也沒有答好)。然后問了兩個算法:之前一個出現(xiàn)過遣蚀,另一個是在git里面矾麻,如果有n個分支,m次commit怎么找到任意兩個節(jié)點共同的那個父節(jié)點(這個當(dāng)時我想錯了芭梯,想到二叉樹上去了险耀,沒有答好)。然后讓兩個算法用代碼實現(xiàn)粥帚,1個小時內(nèi)寫好email給他胰耗。
小米面了以后也杳無音信,估計也是要求很高芒涡,畢竟解決北京戶口柴灯。

其實在阿里實習(xí)的時候很早就開始投簡歷了,因為出去實習(xí)一段時間后费尽,感覺還是很想留在成都(因為lz是四川人)赠群。騰訊我沒有參加校招面試,直接走的內(nèi)推流程旱幼。
騰訊1面: 電話面查描,7月20+號,很水柏卤,就問了項目冬三,聊了可能有十多分鐘,然后面試官說缘缚,內(nèi)推沒有什么作用勾笆,還是要走校招面試(我覺得他可能是有其他事情,想節(jié)省時間)桥滨,你在實習(xí)不能回來窝爪,還是要現(xiàn)場面一次才行弛车,然后就留了個電話讓我校招聯(lián)系他,這樣就完了蒲每。
2面是在我回學(xué)校后了纷跛。
騰訊2面: 9月6號我回學(xué)校之后,下午3點接到電話邀杏,讓我晚上7點去騰訊現(xiàn)場面的(我在想為何是在晚上贫奠,lz學(xué)校到騰訊要2個小時,還讓不讓人回來了)淮阐,當(dāng)時緊張得要死叮阅,因為剛從阿里回來不久刁品,都沒怎么好好準(zhǔn)備基礎(chǔ)泣特,在地鐵上看了兩本基礎(chǔ)書,亞歷山大挑随。面試是在騰訊里面状您,微信部門,面試官是個中年人(現(xiàn)在是LZ的主管)兜挨,看起來還是比較沉穩(wěn)的那種膏孟。也沒問基礎(chǔ)技術(shù)問題,就聊項目細節(jié)和一些可優(yōu)化的地方拌汇,然后把lz的簡歷看了翻了一遍柒桑,問了一遍,然后就是問我在阿里學(xué)到了什么噪舀,為什么當(dāng)時選擇了阿里(這時候肯定要各種跪舔翱尽)。然后后來他說他是做ios的与倡,我在想難怪不問我基礎(chǔ)界逛。
面完了說一周之內(nèi)通知我結(jié)果,也沒報太大希望纺座,感覺并不太對口息拜,因為搞不懂為什么是做ios的來面我。
兩天之后净响,在阿里HRG電話通知我擁抱變化之后少欺,幾乎同一時間,騰訊電話通知我拿到了成都o(jì)ffer馋贤,我只能感嘆太巧了(大概這大半輩子的運氣都花光了)赞别。

后來校招開始后,只面了百度一家公司掸掸,百度確實比較重視基礎(chǔ)與算法氯庆,看中技術(shù)蹭秋。
百度1面: 大概1個小時,又是個做ios的師兄面試我堤撵,自然就只能聊項目了仁讨,我給他展示了我做的app后,也問了些技術(shù)問題实昨,緩存怎么做的洞豁,內(nèi)存溢出怎么處理。然后兩個算法題:把一個數(shù)組中奇數(shù)放前面荒给,偶數(shù)放后面丈挟,這個要求寫出來。另一個是3億條IP中志电,怎么找到次數(shù)出現(xiàn)最多的5000條IP曙咽。最后問了是否愿意去北京,對于技術(shù)的看法挑辆。
百度2面: 50分鐘例朱,寫個4個程序題:反轉(zhuǎn)鏈表、冒泡排序鱼蝉、生產(chǎn)者消費者洒嗤,這三個都還好寫,很快的寫出來了魁亦,還有一個題是在一組排序數(shù)中渔隶,給定一個數(shù),返回最接近且不大于這個數(shù)的位置洁奈,要求時間在O(logn)(這個想了一會间唉,用二分查找,然后特殊處理了一下)睬魂,最后他看不懂终吼,要我一步一步解釋÷认花了好一整子际跪,最后問了個java反射,就讓我走了喉钢。百度果然是重視算法姆打。
百度3面: 這一面應(yīng)該是個技術(shù)高層,籠統(tǒng)的問了我一下項目的問題肠虽,然后問了幾個基礎(chǔ):java反射機制幔戏;android動畫有哪些,什么特點税课?TCP/IP層次架構(gòu)闲延,每層的作用與協(xié)議痊剖;TCP擁塞控制;滑動窗口是怎么設(shè)計的垒玲,有什么好處陆馁;android的布局都有哪些。問完這些之后合愈,然后就是有點類似于HR的聊天了:如果這次面試過了你覺得是因為什么原因叮贩,沒過呢?你覺得百度怎么樣佛析?你對技術(shù)路線什么打算益老?有些和前面重復(fù)的就不寫了。然后他讓我問他問題寸莫,我就連續(xù)問了5捺萌、6個問題,最后愉快的走了储狭。
百度這兩天給結(jié)果互婿。

六、 寫在最后
關(guān)于選擇
LZ當(dāng)時實習(xí)的時候辽狈,杭州阿里和廣州騰訊選擇去了阿里,但是卻因為擁抱變化沒有留下來呛牲,相反這邊在騰訊實習(xí)的同學(xué)卻很順利刮萌。但是也是因為沒有去廣州騰訊,最后我能留在成都騰訊娘扩。選擇是一件非常重要的事情着茸,它決定著你的未來,但是也有一點你得知道:塞翁失馬焉知非福琐旁,現(xiàn)在看起來不太好的選擇涮阔,不一定將來就好,未來有太多未知數(shù)灰殴。
心懷感恩
其實一路走來敬特,我也是在成長,從最初的不自信牺陶,到了最后面試一切都比較冷靜與沉著伟阔。我一直相信,機會是留給有準(zhǔn)備的人掰伸,所以皱炉,請?zhí)嵩鐪?zhǔn)備,越早越好狮鸭。我很感激能有那么多人幫助我和肯定我合搅,沒有最初騰訊的肯定多搀,我肯定不會走的這么順利,所以我很感恩哪些讓我通過的人灾部,也感謝我們實驗室的兄弟姐妹酗昼,給了我良好的學(xué)習(xí)成長環(huán)境,心懷感恩才能好運常在梳猪。

找工作其實就像是一場戰(zhàn)役麻削,前面我們經(jīng)歷了高考或者考研,現(xiàn)在是找工作春弥,你不在這個時候搏一搏呛哟,怎么對得起你之前的努力。不要擔(dān)心找不到好工作匿沛,你要相信:
天道酬勤扫责!

                                               2015.9.22
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市逃呼,隨后出現(xiàn)的幾起案子鳖孤,更是在濱河造成了極大的恐慌,老刑警劉巖抡笼,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件苏揣,死亡現(xiàn)場離奇詭異,居然都是意外死亡推姻,警方通過查閱死者的電腦和手機平匈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來藏古,“玉大人增炭,你說我怎么就攤上這事∨≡危” “怎么了隙姿?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長厂捞。 經(jīng)常有香客問我输玷,道長,這世上最難降的妖魔是什么蔫敲? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任饲嗽,我火速辦了婚禮,結(jié)果婚禮上奈嘿,老公的妹妹穿的比我還像新娘貌虾。我一直安慰自己,他們只是感情好裙犹,可當(dāng)我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布尽狠。 她就那樣靜靜地躺著衔憨,像睡著了一般。 火紅的嫁衣襯著肌膚如雪袄膏。 梳的紋絲不亂的頭發(fā)上践图,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天,我揣著相機與錄音沉馆,去河邊找鬼码党。 笑死,一個胖子當(dāng)著我的面吹牛斥黑,可吹牛的內(nèi)容都是我干的揖盘。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼锌奴,長吁一口氣:“原來是場噩夢啊……” “哼兽狭!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起鹿蜀,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤箕慧,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后茴恰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颠焦,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年琐簇,在試婚紗的時候發(fā)現(xiàn)自己被綠了蒸健。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡婉商,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出渣叛,到底是詐尸還是另有隱情丈秩,我是刑警寧澤,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布淳衙,位于F島的核電站蘑秽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏箫攀。R本人自食惡果不足惜肠牲,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望靴跛。 院中可真熱鬧缀雳,春花似錦、人聲如沸梢睛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至深碱,卻和暖如春腹鹉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背敷硅。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工功咒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人绞蹦。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓力奋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親坦辟。 傳聞我的和親對象是個殘疾皇子刊侯,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容