轉(zhuǎn)載自自己的人人,寫于校招之后,因?yàn)楦杏X這篇文章還有一點(diǎn)余熱,現(xiàn)在的小伙伴們很多也不玩人人了,所以換個(gè)地方,方便有需求的小伙伴看看
----------------分割線----------------
一直考慮要不要寫一個(gè)面試的經(jīng)驗(yàn)。作為一合格的學(xué)長,總得給學(xué)弟學(xué)妹們留下點(diǎn)寶貴的資源,一想去年東哥寫了一篇書單,影響了N多學(xué)弟學(xué)妹,那么我也擼一篇好了,希望對想找工作的學(xué)弟學(xué)妹們有幫助。我本人是學(xué)Java的,可能落到具體的某些方面比較偏向于Java,C、C++的小朋友就湊合著看吧......C++師兄做不到啊
----------------筆試篇----------------
今年秋招報(bào)名了阿里、百度、騰訊、去哪兒、華為、網(wǎng)易、美團(tuán)這幾家,其中美團(tuán)的筆試跟別的有沖突放棄了,騰訊參加了三月份實(shí)習(xí)生招聘的筆試,秋招沒接到筆試通知,估計(jì)難度上差距不會太大,當(dāng)時(shí)騰訊出的筆試題還是很有水準(zhǔn)的。剩下的除了網(wǎng)易筆試都過了??偨Y(jié)一下,網(wǎng)易的筆試難度最大,騰訊、阿里、網(wǎng)易的綜合性最強(qiáng);百度的話分基礎(chǔ)知識、算法、系統(tǒng)設(shè)計(jì)三部分,題量不大,涉及的方面也沒前三家那么多;去哪兒就是幾道大題,涉及的數(shù)據(jù)結(jié)構(gòu)算法也比較簡單,有意思的是去哪兒還問了是否了解github、stackoverflow是什么,沒聽過的請自行百度;華為的是上機(jī)考試,就是一笑話,機(jī)考分兩批,第二批的題莫名比第一批簡單,四十分鐘滿分走人。
至于會考的東西,無非就是學(xué)校安排的課程,C語言、數(shù)據(jù)結(jié)構(gòu)、算法、操作系統(tǒng)、計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫、設(shè)計(jì)模式等等,可能有人覺得操作系統(tǒng)、計(jì)算機(jī)網(wǎng)絡(luò)跟代碼的關(guān)聯(lián)不是那么強(qiáng),其實(shí)學(xué)到回來就會發(fā)現(xiàn),當(dāng)年逃的課都是那么的重要......有幾個(gè)出的頻率比較多的內(nèi)容,比如說進(jìn)程線程區(qū)別,TCP的三次握手四次揮手是什么,單例模式工程模式等等,這些基本是必會的內(nèi)容,還有一些相關(guān)的可以看看一些筆試題、面試題神馬的,就不一一贅述了。
代碼方面,讀代碼的話一定會是C,寫的話沒有特殊說明你可以用各種語言實(shí)現(xiàn)。C語言這個(gè)是基礎(chǔ)了,如果你是學(xué)Java的,至少把指針那部分看一看。
數(shù)據(jù)結(jié)構(gòu)和算法,ArrayList和LinkedList的區(qū)別,Hash是什么,這個(gè)是必會的,而且考的概率非常大,不在筆試就在面試那種的。一些高級的數(shù)據(jù)結(jié)構(gòu),AVL樹、紅黑樹、B樹、B+樹神馬的也都是會考的,不過這些面試問的就多了。
筆試部分大概就說這么多,注重平時(shí)積累的話問題不大。
----------------面試篇----------------
面試就分公司來說吧,首先是阿里,這個(gè)一面被刷了,至于原因還是基礎(chǔ)知識不過關(guān)。阿里的面試問的基礎(chǔ)知識很多,數(shù)據(jù)結(jié)構(gòu),hash這個(gè)基本必考,而且阿里的Java強(qiáng)是眾所周知的,他們會挑一些平時(shí)注意不到的點(diǎn)來問,但都是在基礎(chǔ)知識的范疇內(nèi),歸根到底還是自己沒復(fù)習(xí)周到。另補(bǔ)充一下三月份參加阿里的實(shí)習(xí)生面試,那個(gè)問的基礎(chǔ)也很多,基本把我了解的關(guān)于Java或者是編程的方方面面都問到了,Java基礎(chǔ)知識、SSH、MVC開發(fā)模式、數(shù)據(jù)結(jié)構(gòu)、算法、操作系統(tǒng)、網(wǎng)絡(luò)、Linux、數(shù)據(jù)庫、設(shè)計(jì)模式等等,個(gè)人建議盡量找學(xué)長三月份內(nèi)推一下阿里的實(shí)習(xí)生面試,也許會被刷掉,但基本之后就知道需要看哪些東西了。
去哪兒網(wǎng),拿到offer,一面面的基礎(chǔ)也比較多,不過相比之下問的問題要比阿里更常見一些,當(dāng)然ArrayList、LinkedList區(qū)別,Hash神馬的也是必考的,剩下的就是看你簡歷或者看你表現(xiàn),也會問一些深一點(diǎn)的東西,比如我就被問到了concurrent包里的一些知識,Atomic類是怎么實(shí)現(xiàn)的,當(dāng)時(shí)特別二逼的回答synchronized,后來看了看源碼,加上院里的大神告訴我其實(shí)是CAS操作......也是,synchronized實(shí)現(xiàn)的話,Doug Lea的concurrent包也不會被認(rèn)定為跨時(shí)代的產(chǎn)物了......扯得有點(diǎn)遠(yuǎn),雖說這個(gè)打錯(cuò)了,不過別的問題答得還是很好的,一面面試官給過。二面的話問項(xiàng)目為主,也問了一些平時(shí)遇到問題怎么辦,逼格一點(diǎn)的回答就是上StackOverflow上面搜一下或者提問,或者看看github上有沒有類似的項(xiàng)目,看看人家是怎么處理的。估計(jì)一面面試官對我的評價(jià)比較好,二面沒問什么東西,直接就過了。三面基本就是hr面,也不會問你啥,說白了就是直接談錢,去哪兒的工資是你自己開的,很重要的一點(diǎn)就是,往多了要,別慫,讓hr開肯定是底薪,上來就要13k,如果hr不同意再說。像我們很多人慫了只拿了底薪,而且去哪兒喜歡女生,女生的薪水都高,女生們可以考慮一下。
百度,拿到offer,去的就是這個(gè)。除了去百度的原因之外,我覺得百度是最有誠意的公司了,宣講會都會有電話通知。一面的話特直接,面試官的開場白就是“來我們先做一道題”,做了三道左右的算法題,這個(gè)就看臨場發(fā)揮了,也沒有什么具體的算法一些小地方優(yōu)化一下吧。一面半個(gè)小時(shí)結(jié)束,本來以為被刷掉了,結(jié)果神奇的接到了二面通知。二面面試官非常nice(其實(shí)一面的也很好,不過二面的這個(gè)屬于百年難遇那種),先問了一些基礎(chǔ)知識,恰好都是華為面試剛問過的,很流利的說了出來,給面試官留下了好印象,之后寫了一個(gè)單例,又被問了B樹和B+樹的區(qū)別,我說我看的那本書上只有B+樹,說了一下,結(jié)果少說了一個(gè)條件,不過他很nice的給我講了,還告訴了我B樹是什么。之后兩道算法,一道智力題,智力題我還做過了,被面試官說運(yùn)氣好,主動(dòng)問了用不用換一個(gè),面試官說就這個(gè)了......二面過的還是比較輕松的,三面Boss面,一個(gè)85分的大姐姐,主要問了一些團(tuán)隊(duì)合作之間的事,主要考驗(yàn)的還是是否會處理人際關(guān)系,遇到困難如何應(yīng)對,學(xué)習(xí)能力怎么樣。薪水上,百度會參考你其他的offer,給你一個(gè)差不多的薪水, 所以多拿點(diǎn)高新offer對于去百度很有用。
華為,一面還是面的基礎(chǔ)知識,這個(gè)很簡單,之前寫的阿里面試問的那些,會個(gè)一多半,這個(gè)輕松過。二面的話,也會問一些性格的東西,這個(gè)答得誠懇一點(diǎn)應(yīng)該都沒啥問題,面試官也問了我想去哪里工作,華為還是有很多分部的。二面結(jié)束后不知道為啥沒過,只能默默的安慰自己,他們請不起我......其實(shí)華為還是很好過的,畢竟全國招6000人,主要華為還會看成績,考試的、四六級的,這個(gè)略蛋疼,本人成績渣,大一掛了好多科......薪資方面,官方報(bào)價(jià)本科9k到13k,研究生10k到15k,不過不用多想,肯定是底薪,除非你特別牛,不過那種牛人應(yīng)該也不會去華為。
美團(tuán),霸面沒給機(jī)會......
好吧,說點(diǎn)面試技巧吧。面試就是把你自己展示給面試官看,回答出面試官的問題只是最基本的一條,重要的是把你會的都給面試官展示出來,回答面試官的問題的時(shí)候盡量多延伸出來你會的東西。要知道自己的優(yōu)勢在哪里,技術(shù)上有什么亮點(diǎn),會SSH可以自己寫網(wǎng)站?這樣的人一抓一大把為什么偏要選你?但如果你說知道Spring底層用到了那些設(shè)計(jì)模式,試著寫一個(gè)簡化的Spring,略懂JVM原理和調(diào)優(yōu),MySQL數(shù)據(jù)庫引擎如數(shù)家珍,concurrent包倒背如流,用樹莓派實(shí)做了一個(gè)掃地機(jī)器人,那么也許你有的地方答得不好,面試官還是會選你,因?yàn)槊嬖嚬俦緛砜赡懿⒉黄谕銜@些,所以也沒有問你,但是你表現(xiàn)出來了,那對他來說就是一個(gè)驚喜。這就是常說的面試的時(shí)候要主動(dòng),除了這些技術(shù)上的實(shí)力,團(tuán)隊(duì)協(xié)作能力、學(xué)習(xí)能力、創(chuàng)新能力也要多展示給面試官,這些都會有加分。
----------------書籍篇&其他----------------
之前東哥寫過一篇書單,那個(gè)就很詳細(xì)了,有需求的跟我說我發(fā)給你,說幾本哪里沒提到的吧,算法方面《編程之美》、《劍指Offer》、July博客,這些足矣,數(shù)據(jù)結(jié)構(gòu)我看的是《數(shù)據(jù)結(jié)構(gòu)與算法分析:Java語言實(shí)現(xiàn)》,對,就是上面說沒講B樹那本,不過還是值的一看,別的想到再補(bǔ)充
----------------實(shí)習(xí)經(jīng)驗(yàn)Or培訓(xùn)班----------------
很多應(yīng)屆生可能最煩惱的就是實(shí)習(xí)經(jīng)驗(yàn)了,實(shí)習(xí)經(jīng)驗(yàn)我個(gè)人覺得最好還是有,畢竟實(shí)習(xí)過的話,會學(xué)到很多在學(xué)校里面學(xué)不到的東西,但是實(shí)習(xí)免不了就要逃一部分課,這個(gè)就要看個(gè)人取舍了。而且實(shí)習(xí)的話,還可以增加自己的項(xiàng)目經(jīng)驗(yàn),這個(gè)還是很重要的。什么都沒做過,大公司基本不會考慮。至于培訓(xùn)班,現(xiàn)在學(xué)校周圍有各種各樣的培訓(xùn)班,而且我也上過其中一個(gè)(不打廣告,不透露名字),培訓(xùn)班有么有用?對我個(gè)人來說,有,我確實(shí)在里面學(xué)到了知識,而且剛開始我自制力還是比較差的(巧妙隱藏了現(xiàn)在也差的事實(shí)......),這種方式還是蠻適合我的,但是我想說的是,不能全部指望培訓(xùn)班,在這里學(xué)的東西畢竟有限,很多東西還要自己去鉆研,如果單純指望培訓(xùn)班所講的內(nèi)容,而自己不下功夫去實(shí)踐,不花時(shí)間去看更多的書,學(xué)更多的東西,至少不用想著去BAT。我始終相信,有兩樣?xùn)|西是沒有止境的,一個(gè)是人的潛力,一個(gè)是需要學(xué)的東西。永遠(yuǎn)不要低估你自己,覺得這個(gè)東西你學(xué)不會,而且多學(xué)一點(diǎn)總會有好處的。
----------------一點(diǎn)題外話----------------
說點(diǎn)題外話吧,寫這篇文章的時(shí)候我已經(jīng)在北京實(shí)習(xí)了,回想找工作的那一個(gè)月,依然會有很多感慨,兩個(gè)場景特別難忘,一個(gè)是在哈爾濱,阿里面試失敗,與準(zhǔn)備了六個(gè)月的公司擦肩而過,真的有種在風(fēng)中凌亂的感覺,感覺全世界都離我而去;一個(gè)是接到百度通過的電話,感覺付出的努力沒有白費(fèi),一悲一喜,都是經(jīng)歷。好吧,有點(diǎn)矯情了......其實(shí)我想說的就是,回顧大學(xué)之前的三年,最后悔的就是看的書不夠多,敲得代碼不夠多,上的自習(xí)不夠多,真正來工作,發(fā)現(xiàn)要學(xué)的太多,而時(shí)間總是不夠用,希望等到你們?nèi)绻胍夜ぷ鞯脑挘雷约阂沂裁礃拥墓ぷ?,知道自己在什么時(shí)候需要做什么,每天結(jié)束都不會因?yàn)榘滋斓穆德禑o為感到愧疚,大四的時(shí)候,不跟我因同樣的事情而后悔。也希望碼這么多字對你們能有所幫助。
先8這么多,想到再補(bǔ)充。