乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      校園招聘面試心得與總結(jié)

       jnstyle 2016-02-16

      之前實習的時候就想著寫一篇面經(jīng),后來忙就給忘了,現(xiàn)在找完工作了,也是該靜下心總結(jié)一下走過的路程了,我全盤托出,奉上這篇誠意之作,希望能給未來找工作的人一點指引和總結(jié), 也希望能使大家少走點彎路 , 如果能耐心讀完,相信對你會找到你需要的東西。


      校園招聘面試心得與總結(jié)---BAT、網(wǎng)易、蘑菇街

      校園招聘面試心得與總結(jié)---BAT、網(wǎng)易、蘑菇街


      先說一下LZ的基本情況,LZ是四川某985學校通信專業(yè)的研究生(非計算機),大學階段也就學了C語言,根本沒想過最后要成為碼農(nóng)。大四才開始學java,研一下開始學android,所以LZ覺得自己開始就是一個小白,慢慢成長起來的。


      一、心態(tài)


      心態(tài)很重要!


      心態(tài)很重要!


      心態(tài)很重要!


      重要的事情說三遍,這一點我覺得是必須放到前面來講。


      找工作之前,有一點你必須清楚,就是找工作是一件看緣分的事情,不是你很牛逼,你就一定能進你想進的公司,都是有一個概率在那。如果你基礎好,項目經(jīng)驗足,同時準備充分,那么你拿到offer的概率就會比較高;相反,如果你準備不充分,基礎也不好,那么你拿到offer的概率就會比較低,但是你可以多投幾家公司,這樣拿到offer的幾率就要大一點,因為你總有運氣好的時候。所以,不要懼怕面試,剛開始失敗了沒什么的,多投多嘗試,面多了你就自然能成面霸了。得失心也不要太重,最后每個人都會有offer的。


      還有一個對待工作的心態(tài),有些人可能覺得自己沒有動力去找一個好工作。其實你需要明白一件事情,你讀了十幾二十年的書,為的是什么,最后不就是為了找到一個好工作么?,F(xiàn)在到了關(guān)鍵時刻,你為何不努力一把呢,為什么不給自己一個好的未來呢,去一個自己不滿意的公司工作,你甘心嗎?


      想清楚這一點,我相信大多數(shù)人都會有一股干勁了,因為LZ剛剛準備開始找實習的時候,BAT這種公司想都不敢想,覺得能進個二線公司就很不錯了,后來發(fā)現(xiàn)自己不逼自己一把,你真不知道自己有多大能耐,所以請對找工作保持積極與十二分的熱情,也請認真對待每一次筆試面試。


      二、基礎


      基礎這東西,各個公司都很看重,尤其是BAT這種大公司,他們看中人的潛力,他們舍得花精力去培養(yǎng),所以基礎是重中之重。之前很多人問我,項目經(jīng)歷少怎么辦,那就去打牢基礎,當你的基礎好的發(fā)指的時候,你的其他東西都不重要了。


      基礎無外乎幾部分:語言(C/C++或java),操作系統(tǒng),TCP/IP,數(shù)據(jù)結(jié)構(gòu)與算法,再加上你所熟悉的領(lǐng)域。這里面其實有很多東西,各大面試寶典都有列舉。


      在這只列舉了Android客戶端所需要的和我面試中所遇到的知識點,盡量做到全面,如果你掌握了以下知識點,去面android客戶端應該得心應手。


      J2SE基礎


      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的設計理念與作用。


      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. 設計模式:單例、工廠、適配器、責任鏈、觀察者等等。


      37. JNI的使用。


      Java里有很多很雜的東西,有時候需要你閱讀源碼,大多數(shù)可能書里面講的不是太清楚,需要你在網(wǎng)上尋找答案。


      推薦書籍:《java核心技術(shù)卷I》《Thinking in java》《java并發(fā)編程》《effictive java》《大話設計模式》


      JVM


      1. 內(nèi)存模型以及分區(qū),需要詳細到每個區(qū)放什么。


      2. 堆里面的分區(qū):Eden,survival from to,老年代,各自的特點。


      3. 對象創(chuàng)建方法,對象的內(nèi)存分配,對象的訪問定位。


      4. GC的兩種判定方法:引用計數(shù)與引用鏈。


      5. GC的三種收集方法:標記清除、標記整理、復制算法的原理與特點,分別用在什么地方,如果讓你優(yōu)化收集方法,有什么思路?


      6. GC收集器有哪些?CMS收集器與G1收集器的特點。


      7. Minor GC與Full GC分別在什么時候發(fā)生?


      8. 幾種常用的內(nèi)存調(diào)試工具:jmap、jstack、jconsole。


      9. 類加載的五個過程:加載、驗證、準備、解析、初始化。


      10. 雙親委派模型:Bootstrap ClassLoader、Extension ClassLoader、ApplicationClassLoader。


      11. 分派:靜態(tài)分派與動態(tài)分派。


      JVM過去過來就問了這么些問題,沒怎么變,內(nèi)存模型和GC算法這塊問得比較多,可以在網(wǎng)上多找?guī)灼┛蛠砜纯础?/p>


      推薦書籍:《深入理解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)絡其實大體分為兩塊,一個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ù)的原理、平均時間復雜度、最壞時間復雜度、空間復雜度、是否穩(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ù).........等等


      算法的話其實是個重點,因為最后都是要你寫代碼,所以算法還是需要花不少時間準備,這里有太多算法題,寫不全,我的建議是沒事多在OJ上刷刷題(??途W(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中弱引用與軟引用的應用場景。


      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(wǎng)www.newcoder.com”是個好地方,里面有各種面試筆試題,也有自己在線的OJ,強烈推薦,還有左程云老師的算法視屏課(已經(jīng)出書了),反正我看了之后對我?guī)椭艽螅ㄟ@不是植入廣告)。


      三、 項目


      關(guān)于項目,這部分每個人的所做的項目不同,所以不能具體的講。項目不再與好與不好,在于你會不會包裝,有時候一個很low的項目也能包裝成比較高大上的項目,多用一些專業(yè)名詞,突出關(guān)鍵字,能使面試官能比較容易抓住重點。在聊項目的過程中,其實你的整個介紹應該是有一個大體的邏輯,這個時候是在考驗你的表達與敘述能力,所以好好準備很重要。


      面試官喜歡問的問題無非就幾個點:


      1. XXX(某個比較重要的點)是怎么實現(xiàn)的?


      2. 你在項目中遇到的最大的困難是什么,怎么解決的?


      3. 項目某個部分考慮的不夠全面,如果XXXX,你怎么優(yōu)化?


      4. XXX(一個新功能)需要實現(xiàn),你有什么思路?


      其實你應該能夠預料到面試官要問的地方,請?zhí)崆皽蕚浜茫绻粏柕經(jīng)]有準備到的地方,也不要緊張,一定要說出自己的想法,對不對都不是關(guān)鍵,主要是有自己的想法,另外,你應該對你的項目整體框架和你做的部分足夠熟悉。


      四、 其他


      你應該問的問題


      面試里,最后面完之后一般面試官都會問你,你有沒有什么要問他的。其實這個問題是有考究的,問好了其實是有加分的,一般不要問薪資,主要應該是:關(guān)于公司的、技術(shù)和自身成長的。


      以下是我常問的幾個問題,如果需要可以參考:


      1. 貴公司一向以XXX著稱,能不能說明一下公司這方面的特點?


      2. 貴公司XXX業(yè)務發(fā)展很好,這是公司發(fā)展的重點么?


      3. 對技術(shù)和業(yè)務怎么看?


      4. 貴公司一般的團隊是多大,幾個人負責一個產(chǎn)品或者業(yè)務?


      5. 貴公司的開發(fā)中是否會使用到一些最新技術(shù)?


      6. 對新人有沒有什么培訓,會不會安排導師?


      7. 對Full Stack怎么看?


      8. 你覺得我有哪些需要提高的地方?


      知識面


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


      軟實力


      什么是軟實力,就是你的人際交往、靈活應變能力,在面試過程中,良好的禮節(jié)、流暢的表達、積極的交流其實都是非常重要的。很多公司可能不光看你的技術(shù)水平怎么樣,而更看重的是你這個人怎么樣的。所以在面試過程中,請保持誠信、積極、樂觀、幽默,這樣更容易得到公司青睞。


      很多時候我們都會遇到一個情況,就是面試官的問題我不會,這時候大多數(shù)情況下不要馬上說我不會,要懂得牽引,例如面試官問我C++的多態(tài)原理,我不懂,但我知道java的,哪我可以向面試官解釋說我知道java的,類似的這種可以往相關(guān)的地方遷移(但是需要注意的是一定不要不懂裝懂,被拆穿了是很尷尬的),意思就是你要盡可能的展示自己,表現(xiàn)出你的主動性,向面試官推銷自己。


      還有就是遇到智力題的時候,不要什么都不說,面試官其實不是在看你的答案,而是在看你的邏輯思維,你只要說出你自己的見解,有一定的思考過程就行。


      五、 面經(jīng)


      LZ應聘的職位都是android客戶端開發(fā)。


      面經(jīng)其實說來話長,包括實習的話面過的公司有:CVTE、騰訊、阿里、百度、網(wǎng)易、蘑菇街、小米。最早得追溯到到今年3月份,那時候剛過完年,然后阿里的實習內(nèi)推就開始了,我基本都沒什么準備,就突如其來的接到了人生中第一個面試電話。


      阿里實習內(nèi)推一面: 電話面試, 由于是第一次面試,所以非常緊張,項目都沒怎么說清楚。然后面試官就開始問項目細節(jié)了,這里我關(guān)于一個項目細節(jié)和面試官有不同的看法,面試官說我這樣做有問題,然后我說我們確實是這樣做的,并沒有出什么錯,差點和面試官吵起來,最后我還是妥協(xié)了。然后問了我一個怎么對傳輸?shù)臄?shù)據(jù)加密,我答的很挫,然后面試官就開始鄙視我:你這個基礎不好,那個基礎不好,那你說說你還有其他什么優(yōu)勢沒?Blabla緊張的說了一些…………只面了30分鐘不到,然后妥妥的就掛了。


      經(jīng)過這次面試突然感覺人生的艱辛,幾天后我們教研室的其他同學陸續(xù)開始了面試,他們都很順利,其中我的室友(單程車票)很順利的拿到了offer,他是個大神,然后我就壓力無比的大。制定了整套復習計劃,從早上9點看書看到晚上10點。


      到了3月15號左右有CVTE面試,第一次面試是群面,比較坑,坐了一個小時的車過去群面了5分鐘,沒什么好說的。


      CVTE實習面 :在自我介紹和項目后,面試官開始問一些java基礎,object有哪些方法?這個還能說了一些。問hashmap有多大,這個當時一臉茫然,還sb的答了一個65535。然后面試官讓我寫三分鐘內(nèi)寫一個二分查找,當時也是第一次手寫代碼,并且還計時,完全沒經(jīng)驗,最后超時寫了出來。中間又問了我一堆基礎,都答得不是很完整。最后問我遇到過OOM的情況沒有,什么情況下會OOM。這個也沒答出來,然后又妥妥的掛了。


      這次經(jīng)歷告訴我,我是缺少面試經(jīng)驗,和現(xiàn)場寫代碼的能力,基礎還需要多加強。所以我開始各種準備,在一個月的時間里看了四本面試書(程序員面試寶典、java程序員面試寶典、程序員面試筆試寶典、劍指offer),把所有關(guān)于數(shù)據(jù)結(jié)構(gòu)和算法的東西用代碼寫了一遍。


      然后到了四月初,騰訊來了,我最開始還是非常向往騰訊的,但就當時那個情況,我對自己不報太大希望,覺得能進BAT這樣的頂級公司是個奢侈的夢想。


      騰訊的面試是在一個5星級酒店里面,逼格高大上,感覺問的東西也比較多,感覺喜歡問智力題,但是我沒遇到。 


      騰訊實習1面: 50分鐘左右, 面試的時候還是有些緊張的,但是運氣好,遇到了一個學校的師兄,他一直叫我不要緊張。幾個比較關(guān)鍵的問題:死鎖的必要條件,怎么解決,java和c++比有什么優(yōu)勢,java同步方法,activity生命周期,中間讓我設計了個銀行排隊系統(tǒng),我說了一堆。然后讓我寫了一個計算一個int里面二進制有幾個1,然后我用最高效的方法(n=n&n-1)寫出來之后,面試官有點意外,還說沒見過這么寫的,讓我跟他解釋一下。后面就是拉拉家常,問我對工作地點怎么看,讓我對比qq和微信,一面出來之后,面試官讓我留意通知,心想是過了,其實發(fā)揮的不怎么好。


      就在會學校的路上,都要到學校了,收到了騰訊二面的通知,下午3點。然后我又跑回去二面。


      騰訊實習2面: 二面是一個很嚴肅的人,看上去就比較資深那種,一直都不笑,后面才知道是手機管家T4的專家。一開始就問我項目里,心跳包是怎么設計的,我項目里并沒有用心跳,然后只能跟他說沒做,問我用json傳輸數(shù)據(jù)有什么不好(我只知道用哪想過有什么不好)。又問了http和socket的區(qū)別,兩個協(xié)議哪個更高效一點,遇到過java內(nèi)存泄露沒有,用過哪些調(diào)試java內(nèi)存工具,java四種引用。多數(shù)都是項目上的東西,基礎的東西沒問太多,然后感覺自己答的不是很好,很多都不知道,而且還答錯了。其實我感覺我應該是過不了的,但是最后我問問題的時候,我讓他評價下我的表現(xiàn),他說不好評價,我自己說了一堆,說在學校里確實見識到的東西比較少,很多東西沒考慮全面,然后他表示贊同,和我探討了一番,我覺得最后這個問題給我加了不少分。二面也面了50分鐘左右。


      回來后發(fā)現(xiàn)我的狀態(tài)一直沒變,而他們二面完了的都到了HR面了,我以為我已經(jīng)掛定了,后來在一天晚上12點的時候,驚喜的收到了第二天HR面的短信,當晚上幾乎高興得一晚上沒睡著覺。


      騰訊實習3面(HR): 就是hr面,也就面了十幾分鐘,聊聊天,問問哪的人,未來什么打算的等等,基本不怎么掛人就不詳細寫了。


      就這樣拿到了人生中第一個實習offer。


      后面找實習的心就放松了,沒有復習了。然后到了5月5號,阿里來了。對阿里也只是想去面一面的心態(tài)了,因為已經(jīng)有騰訊的offer了,就沒想太多。


      阿里實習1面: 面過騰訊之后發(fā)現(xiàn)自己已經(jīng)比較淡定了,面試得時候能夠比較好的交談了。這一面也遇到一個比較好的面試官,能很輕松的和他交流。主要的問題是android的:activity的生命周期、activity的四種啟動模式(當時忘了一些沒答全)、線性布局和相對布局、多線程請求,java GC算法與GC方法,內(nèi)存模型,有一個比較特別的問題是問我微信的朋友圈怎么設計,然后我把思路跟他說了,其他的就是問了項目相關(guān)的了。還問了我一個覺得技術(shù)深度重要還是技術(shù)寬度重要,一面感覺還是比較基礎的。


      阿里實習2面: 這一面就比較虐心,碰到一個阿里云的CTO,一上去項目看都不看,直接問我寫過多少行代碼,我說至少3、4萬行,然后他讓我寫了兩個題:一個找素數(shù),一個遞歸求階層,對我也算手下留情(他后來讓我同學寫AVL樹的插入算法,想想也是醉了)。后面就各種基礎了,java的基礎挨個問了一遍,比較關(guān)鍵多線程實現(xiàn),鎖的幾種等級等,反射的用法,wait()和sleep()(討論這個的時候他把我說暈了),Java還好,多數(shù)能應付,然后他就開始問c++的了。雖然是基礎,但是lz忘了差不多了,什么指針數(shù)組和數(shù)組指針,虛函數(shù),多態(tài)實現(xiàn)(這個我扯到java上了)等等,問了很多,很多都沒答上來,然后他說我基礎不太好(我想說我簡歷上寫的了解C++,為什么要追著我問TT)。


      就這樣出來了,本來以為掛了,后面被通知過了。同學都只有2面技術(shù)面,我居然多了一面,叫交叉面試,心想這下肯定完了。


      阿里實習3面: 這一面遇到了后面我去實習時候的部門boss,人非常好,來的時候走的時候都要和我握手,非常的平易近人。這一面還是問項目上的一些東西居多,基礎就問了個java多線程,各個排序的時間復雜度、思想。技術(shù)問了半個小時,后面半個小時就開始各種聊人生了(@_@),我家是哪的,父母干嘛的,中學怎么樣,大學怎么樣,等等,完全就不像是技術(shù)面嘛(后來才知道,我一個同學一開始來就和他聊人生,還聊過了。再次感嘆找工作是看緣分吶)。


      阿里實習4面(HR) :阿里hr比騰訊hr面專業(yè),面了一個小時,把我的生活經(jīng)歷趴了一遍,(問了類似你的優(yōu)缺點,最讓你高興的一件事,最讓你傷心的一件事,你的職業(yè)規(guī)劃,你的理想等等,這種,現(xiàn)在想不起來了)也沒什么特別好說的。


      面完后第二天去圓桌簽offer,就這樣又拿到了阿里的實習offer。


      LZ后面衡量了杭州阿里B2B和廣州騰訊MIG,最后選擇去了阿里,因為在總部,感覺大boss人比較好,發(fā)展前途可能不錯,而且留下來的幾率比較大,而騰訊是一個分部門,感覺可能不是很有前景(但是后來了解到其實廣州騰訊MIG發(fā)展前景非常好,環(huán)境也非常和諧,我同學去實習的都留下來了。哎,只能感嘆選擇是個大問題)。在阿里實習的兩個月時間也挺愉快的,學到了不少東西,也認識了很好的師兄和主管,只因最后被擁抱了變化沒有拿到正式offer。


      實習面經(jīng)就已經(jīng)寫完了,后面是正式找工作的經(jīng)歷,主要是內(nèi)推比較多:騰訊、網(wǎng)易、蘑菇街、小米,校招就面了家百度。


      在阿里實習的時候,面了網(wǎng)易和蘑菇街。


      網(wǎng)易面試是我面了這么多中,問得最專業(yè)的了。


      網(wǎng)易內(nèi)推1面: 電話面,一天在里中午休息的時候面的。這一面我面得很爛,由于在阿里實習,面試官恰好也在阿里呆過,問了我在阿里學到了哪些東西,看過哪些框架,看過源碼沒有,我支支吾吾說了一些,面試官不太滿意(我表示我都說不全啊,在阿里就來了不久,哪那么多時間看源碼)。項目各種細節(jié)問一通之后,開始問基礎,Http報文結(jié)構(gòu),Handler、Looper模型,ThreadLocal(這個LZ當時沒答上來),怎么使service不被殺死,android內(nèi)存優(yōu)化,自己實現(xiàn)線程隊列模型,問我怎么設計(這個當時被前面的問題問蒙了,直接說不知道了),面了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算法,怎么改進復制算法。然后是基礎,也像一面一樣問了一些,hashmap和concurrntHashmap的區(qū)別、泛型能否強制轉(zhuǎn)換。然后是算法,問了快排和歸并的平均時間復雜度與最差時間復雜度,出了個算法題:怎么找到一個隨機數(shù)組的前50大數(shù)、中間50大數(shù),(這個用最小堆和partition函數(shù)),復雜度是多少。


      面完之后其實感覺還不錯,基本都打答上來了,順利進入三面。


      網(wǎng)易內(nèi)推3面(HR): hr面也是現(xiàn)場,也聊了很多,問我為什么要從阿里來網(wǎng)易,有什么打算,你看中網(wǎng)易的什么(主要是針對我是在阿里實習來問的,我就講了一堆網(wǎng)易的優(yōu)勢),讓來杭州工作愿不愿意。還跟我說了,這次內(nèi)推是優(yōu)中選優(yōu),有名額限制,如果沒有通過,請繼續(xù)關(guān)注網(wǎng)易校招。


      后面讓師姐查了下狀態(tài),狀態(tài)顯示是三面已通過。但是最后沒有收到offer,還是有點小失望。


      蘑菇街面試感覺比較基礎,沒有什么技術(shù)難度。


      蘑菇街內(nèi)推1面: 電話面,也是在一個中午面的。18分鐘,問了一些項目,主要是問基礎、問得非常基礎:Arraylist與LinkedList區(qū)別,String與StringBuffer用法,HashMap與HashTable區(qū)別,Synchronized用法等等等等(非常基礎),這不一一列舉了,然后很順利的就過了。


      2面是在20天后了,也不知道蘑菇街出了什么岔子。


      蘑菇街內(nèi)推2面 :也是電話面,CTO面試,就整體聊了項目,我在項目中學到了什么,遇到什么困難怎么解決的,在阿里實習學到了哪些東西,有看過源碼么,我的優(yōu)缺點,我為什么選擇蘑菇街,我了解蘑菇街哪些東西。最后答完感覺自己答得還行但是也沒有過,不知道為什么。


      小米是投的內(nèi)推精英計劃,50個名額,解決北京戶口。


      小米內(nèi)推1面: 電話面,大概40分鐘,面試的時候那邊很吵,不過幸好面試官語速慢,而且我答完一個問題后,面試官會和我交流哪里沒有答好。沒有問項目,就問了基礎,問題也不多:HashMap刪除元素的方法,for each和正常for的用在不同數(shù)據(jù)結(jié)構(gòu)(ArrayList、set、hashmap)上的效率區(qū)別(LZ表示沒有看過源碼,不知道),static class和non-static class的區(qū)別,一個大文件幾個GB,怎么實現(xiàn)復制(這個也沒有答好)。然后問了兩個算法:之前一個出現(xiàn)過,另一個是在git里面,如果有n個分支,m次commit怎么找到任意兩個節(jié)點共同的那個父節(jié)點(這個當時我想錯了,想到二叉樹上去了,沒有答好)。然后讓兩個算法用代碼實現(xiàn),1個小時內(nèi)寫好email給他。


      小米面了以后也杳無音信,估計也是要求很高,畢竟解決北京戶口。


      其實在阿里實習的時候很早就開始投簡歷了,因為出去實習一段時間后,感覺還是很想留在成都(因為lz是四川人)。騰訊我沒有參加校招面試,直接走的內(nèi)推流程。


      騰訊1面: 電話面,7月20+號,很水,就問了項目,聊了可能有十多分鐘,然后面試官說,內(nèi)推沒有什么作用,還是要走校招面試(我覺得他可能是有其他事情,想節(jié)省時間),你在實習不能回來,還是要現(xiàn)場面一次才行,然后就留了個電話讓我校招聯(lián)系他,這樣就完了。


      2面是在我回學校后了。


      騰訊2面: 9月6號我回學校之后,下午3點接到電話,讓我晚上7點去騰訊現(xiàn)場面的(我在想為何是在晚上,lz學校到騰訊要2個小時,還讓不讓人回來了),當時緊張得要死,因為剛從阿里回來不久,都沒怎么好好準備基礎,在地鐵上看了兩本基礎書,亞歷山大。面試是在騰訊里面,微信部門,面試官是個中年人(現(xiàn)在是LZ的主管),看起來還是比較沉穩(wěn)的那種。也沒問基礎技術(shù)問題,就聊項目細節(jié)和一些可優(yōu)化的地方,然后把lz的簡歷看了翻了一遍,問了一遍,然后就是問我在阿里學到了什么,為什么當時選擇了阿里(這時候肯定要各種跪舔?。?。然后后來他說他是做ios的,我在想難怪不問我基礎。


      面完了說一周之內(nèi)通知我結(jié)果,也沒報太大希望,感覺并不太對口,因為搞不懂為什么是做ios的來面我。


      兩天之后,在阿里HRG電話通知我擁抱變化之后,幾乎同一時間,騰訊電話通知我拿到了成都offer,我只能感嘆太巧了(大概這大半輩子的運氣都花光了)。


      后來校招開始后,只面了百度一家公司,百度確實比較重視基礎與算法,看中技術(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面: 這一面應該是個技術(shù)高層,籠統(tǒng)的問了我一下項目的問題,然后問了幾個基礎:java反射機制;android動畫有哪些,什么特點?TCP/IP層次架構(gòu),每層的作用與協(xié)議;TCP擁塞控制;滑動窗口是怎么設計的,有什么好處;android的布局都有哪些。問完這些之后,然后就是有點類似于HR的聊天了:如果這次面試過了你覺得是因為什么原因,沒過呢?你覺得百度怎么樣?你對技術(shù)路線什么打算?有些和前面重復的就不寫了。然后他讓我問他問題,我就連續(xù)問了5、6個問題,最后愉快的走了。


      百度這兩天給結(jié)果。


      六、 寫在最后


      關(guān)于選擇


      LZ當時實習的時候,杭州阿里和廣州騰訊選擇去了阿里,但是卻因為擁抱變化沒有留下來,相反這邊在騰訊實習的同學卻很順利。但是也是因為沒有去廣州騰訊,最后我能留在成都騰訊。選擇是一件非常重要的事情,它決定著你的未來,但是也有一點你得知道:塞翁失馬焉知非福,現(xiàn)在看起來不太好的選擇,不一定將來就好,未來有太多未知數(shù)。


      心懷感恩


      其實一路走來,我也是在成長,從最初的不自信,到了最后面試一切都比較冷靜與沉著。我一直相信,機會是留給有準備的人,所以,請?zhí)嵩鐪蕚?,越早越好。我很感激能有那么多人幫助我和肯定我,沒有最初騰訊的肯定,我肯定不會走的這么順利,所以我很感恩哪些讓我通過的人,也感謝我們實驗室的兄弟姐妹,給了我良好的學習成長環(huán)境,心懷感恩才能好運常在。


      找工作其實就像是一場戰(zhàn)役,前面我們經(jīng)歷了高考或者考研,現(xiàn)在是找工作,你不在這個時候搏一搏,怎么對得起你之前的努力。不要擔心找不到好工作,你要相信:


      天道酬勤! 

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多