身邊的朋友或者公眾號(hào)的粉絲很多人都向我詢問(wèn)過(guò):“我是雙非/三本/??茖W(xué)校的,我有機(jī)會(huì)進(jìn)入大廠嗎?”、“非計(jì)算機(jī)專業(yè)的學(xué)生能學(xué)好嗎?”、“我該如何準(zhǔn)備Java面試?”等等問(wèn)題。我會(huì)根據(jù)自己的一點(diǎn)經(jīng)驗(yàn)對(duì)大部分人關(guān)心的這些熱點(diǎn)問(wèn)題進(jìn)行答疑解惑。
Question1:我是雙非/三本/??茖W(xué)校的,我有機(jī)會(huì)進(jìn)入大廠嗎?
我自己也是非985非211學(xué)校的,結(jié)合自己的經(jīng)歷以及一些朋友的經(jīng)歷,我覺(jué)得讓我回答這個(gè)問(wèn)題再好不過(guò)。
首先,我覺(jué)得學(xué)校歧視很正常,真的太正常了,如果要抱怨的話,你只能抱怨自己沒(méi)有進(jìn)入名校。但是,千萬(wàn)不要?jiǎng)硬粍?dòng)說(shuō)自己學(xué)校差,動(dòng)不動(dòng)拿自己學(xué)校當(dāng)做自己進(jìn)不了大廠的借口,學(xué)歷只是篩選簡(jiǎn)歷的很多標(biāo)準(zhǔn)中的一個(gè)而已,如果你夠優(yōu)秀,簡(jiǎn)歷夠豐富,你也一樣可以和名校同學(xué)一起同臺(tái)競(jìng)爭(zhēng)。
企業(yè)HR肯定是更喜歡高學(xué)歷的人,畢竟985,211優(yōu)秀人才比例肯定比普通學(xué)校高很多,HR團(tuán)隊(duì)肯定會(huì)優(yōu)先在這些學(xué)校里選。這就好比相親,你是愿意在很多優(yōu)秀的人中選一個(gè)優(yōu)秀的,還是愿意在很多普通的人中選一個(gè)優(yōu)秀的呢? 雙非本科甚至是二本、三本甚至是專科的同學(xué)也有很多進(jìn)入大廠的,不過(guò)比率相比于名校的低很多而已。從大廠招聘的結(jié)果上看,高學(xué)歷人才的數(shù)量占據(jù)大頭,那些成功進(jìn)入BAT、美團(tuán),京東,網(wǎng)易等大廠的雙非本科甚至是二本、三本甚至是??频耐瑢W(xué)往往是因?yàn)榫邆湄S富的項(xiàng)目經(jīng)歷或者在某個(gè)含金量比較高的競(jìng)賽比如ACM中取得了不錯(cuò)的成績(jī)。一部分學(xué)歷不突出但能力出眾的面試者能夠進(jìn)入大廠并不是說(shuō)明學(xué)歷不重要,而是學(xué)歷的軟肋能夠通過(guò)其他的優(yōu)勢(shì)來(lái)彌補(bǔ)。
所以,如果你的學(xué)校不夠好而你自己又想去大廠的話,建議你可以從這幾點(diǎn)來(lái)做:①盡量在面試前最好有一個(gè)可以拿的出手的項(xiàng)目;②有實(shí)習(xí)條件的話,盡早出去實(shí)習(xí),實(shí)習(xí)經(jīng)歷也會(huì)是你的簡(jiǎn)歷的一個(gè)亮點(diǎn)(有能力在大廠實(shí)習(xí)最佳?。虎蹍⒓右恍┖鹆勘容^高的比賽,拿不拿得到名次沒(méi)關(guān)系,重在鍛煉。
Question2:非計(jì)算機(jī)專業(yè)的學(xué)生能學(xué)好Java后臺(tái)嗎?我能進(jìn)大廠嗎?
當(dāng)然可以!現(xiàn)在非科班的程序員很多,很大一部分原因是互聯(lián)網(wǎng)行業(yè)的工資比較高。我們學(xué)校外面的培訓(xùn)班里面90%都是非科班,我覺(jué)得他們很多人學(xué)的都還不錯(cuò)。另外,我的一個(gè)朋友本科是機(jī)械專業(yè),大一開(kāi)始自學(xué)安卓,技術(shù)賊溜,在我看來(lái)他比大部分本科是計(jì)算機(jī)的同學(xué)學(xué)的還要好。參考Question1的回答,即使你是非科班程序員,如果你想進(jìn)入大廠的話,你也可以通過(guò)自己的其他優(yōu)勢(shì)來(lái)彌補(bǔ)。
我覺(jué)得我們不應(yīng)該因?yàn)樽约旱膶I(yè)給自己劃界限或者貼標(biāo)簽,說(shuō)實(shí)話,很多科班的同學(xué)可能并不如你,你以為科班的同學(xué)就會(huì)認(rèn)真聽(tīng)講嗎?還不是幾乎全靠自己課下自學(xué)!不過(guò)如果你是非科班的話,你想要學(xué)好,那么注定就要舍棄自己本專業(yè)的一些學(xué)習(xí)時(shí)間,這是無(wú)可厚非的。
建議非科班的同學(xué),首先要打好計(jì)算機(jī)基礎(chǔ)知識(shí)基礎(chǔ):①計(jì)算機(jī)網(wǎng)絡(luò)、②操作系統(tǒng)、③數(shù)據(jù)機(jī)構(gòu)與算法,我個(gè)人覺(jué)得這3個(gè)對(duì)你最重要。這些東西就像是內(nèi)功,對(duì)你以后的長(zhǎng)遠(yuǎn)發(fā)展非常有用。當(dāng)然,如果你想要進(jìn)大廠的話,這些知識(shí)也是一定會(huì)被問(wèn)到的。另外,“一定學(xué)好數(shù)據(jù)機(jī)構(gòu)與算法!一定學(xué)好數(shù)據(jù)機(jī)構(gòu)與算法!一定學(xué)好數(shù)據(jù)機(jī)構(gòu)與算法!”,重要的東西說(shuō)3遍。
Question3: 我沒(méi)有實(shí)習(xí)經(jīng)歷的話找工作是不是特別艱難?
沒(méi)有實(shí)習(xí)經(jīng)歷沒(méi)關(guān)系,只要你有拿得出手的項(xiàng)目或者大賽經(jīng)歷的話,你依然有可能拿到大廠的 offer 。筆主當(dāng)時(shí)找工作的時(shí)候就沒(méi)有實(shí)習(xí)經(jīng)歷以及大賽獲獎(jiǎng)經(jīng)歷,單純就是憑借自己的項(xiàng)目經(jīng)驗(yàn)撐起了整個(gè)面試。
如果你既沒(méi)有實(shí)習(xí)經(jīng)歷,又沒(méi)有拿得出手的項(xiàng)目或者大賽經(jīng)歷的話,我覺(jué)得在簡(jiǎn)歷關(guān),除非你有其他特別的亮點(diǎn),不然,你應(yīng)該就會(huì)被刷。
Question4: 我該如何準(zhǔn)備面試呢?面試的注意事項(xiàng)有哪些呢?
下面是我總結(jié)的一些準(zhǔn)備面試的Tips以及面試必備的注意事項(xiàng):
準(zhǔn)備一份自己的自我介紹,面試的時(shí)候根據(jù)面試對(duì)象適當(dāng)進(jìn)行修改(突出重點(diǎn),突出自己的優(yōu)勢(shì)在哪里,切忌流水賬);
注意隨身帶上自己的成績(jī)單和簡(jiǎn)歷復(fù)印件;?(有的公司在面試前都會(huì)讓你交一份成績(jī)單和簡(jiǎn)歷當(dāng)做面試中的參考。)
如果需要筆試就提前刷一些筆試題,大部分在線筆試的類型是選擇題+編程題,有的還會(huì)有簡(jiǎn)答題。(平時(shí)空閑時(shí)間多的可以刷一下筆試題目(??途W(wǎng)上有很多),但是不要只刷面試題,不動(dòng)手code,程序員不是為了考試而存在的。)另外,注意抓重點(diǎn),因?yàn)轭}目太多了,但是有很多題目幾乎次次遇到,像這樣的題目一定要搞定。
提前準(zhǔn)備技術(shù)面試。搞清楚自己面試中可能涉及哪些知識(shí)點(diǎn)、那些知識(shí)點(diǎn)是重點(diǎn)。面試中哪些問(wèn)題會(huì)被經(jīng)常問(wèn)到、自己改如何回答。(強(qiáng)烈不推薦背題,第一:通過(guò)背這種方式你能記住多少?能記住多久?第二:背題的方式的學(xué)習(xí)很難堅(jiān)持下去!)
面試之前做好定向復(fù)習(xí)。也就是專門針對(duì)你要面試的公司來(lái)復(fù)習(xí)。比如你在面試之前可以在網(wǎng)上找找有沒(méi)有你要面試的公司的面經(jīng)。
準(zhǔn)備好自己的項(xiàng)目介紹。如果有項(xiàng)目的話,技術(shù)面試第一步,面試官一般都是讓你自己介紹一下你的項(xiàng)目。你可以從下面幾個(gè)方向來(lái)考慮:①對(duì)項(xiàng)目整體設(shè)計(jì)的一個(gè)感受(面試官可能會(huì)讓你畫(huà)系統(tǒng)的架構(gòu)圖;②在這個(gè)項(xiàng)目中你負(fù)責(zé)了什么、做了什么、擔(dān)任了什么角色;③ 從這個(gè)項(xiàng)目中你學(xué)會(huì)了那些東西,使用到了那些技術(shù),學(xué)會(huì)了那些新技術(shù)的使用;④項(xiàng)目描述中,最好可以體現(xiàn)自己的綜合素質(zhì),比如你是如何協(xié)調(diào)項(xiàng)目組成員協(xié)同開(kāi)發(fā)的或者在遇到某一個(gè)棘手的問(wèn)題的時(shí)候你是如何解決的又或者說(shuō)你在這個(gè)項(xiàng)目用了什么技術(shù)實(shí)現(xiàn)了什么功能比如:用redis做緩存提高訪問(wèn)速度和并發(fā)量、使用消息隊(duì)列削峰和降流等等。
面試之后記得復(fù)盤。面試遭遇失敗是很正常的事情,所以善于總結(jié)自己的失敗原因才是最重要的。如果失敗,不要灰心;如果通過(guò),切勿狂喜。
Question5: 我該自學(xué)還是報(bào)培訓(xùn)班呢?
我本人更加贊同自學(xué)(你要知道去了公司可沒(méi)人手把手教你了,而且?guī)缀跛械墓径紝?duì)培訓(xùn)班出生的有偏見(jiàn)。為什么有偏見(jiàn),你學(xué)個(gè)東西還要去培訓(xùn)班,說(shuō)明什么,同等水平下,你的自學(xué)能力以及自律能力一定是比不上自學(xué)的人的)。但是如果,你連每天在寢室堅(jiān)持學(xué)上8個(gè)小時(shí)以上都堅(jiān)持不了,或者總是容易半途而廢的話,我還是推薦你去培訓(xùn)班。觀望身邊同學(xué)去培訓(xùn)班的,大多是非計(jì)算機(jī)專業(yè)或者是沒(méi)有自律能力以及自學(xué)能力非常差的人。
? ? ? 另外,如果自律能力不行,你也可以通過(guò)結(jié)伴學(xué)習(xí)、參加老師的項(xiàng)目等方式來(lái)督促自己學(xué)習(xí)。
Question6: 沒(méi)有項(xiàng)目經(jīng)歷/博客/Github開(kāi)源項(xiàng)目怎么辦?
從現(xiàn)在開(kāi)始做!
網(wǎng)上有很多非常不錯(cuò)的項(xiàng)目視頻,你就跟著一步一步做,不光要做,還要改進(jìn),改善。另外,如果你的老師有相關(guān) Java 后臺(tái)項(xiàng)目的話,你也可以主動(dòng)申請(qǐng)參與進(jìn)來(lái)。
如果有自己的博客,也算是簡(jiǎn)歷上的一個(gè)亮點(diǎn)。建議可以在掘金、Segmentfault、CSDN等技術(shù)交流社區(qū)寫(xiě)博客,當(dāng)然,你也可以自己搭建一個(gè)博客(采用 Hexo+Githup Pages 搭建非常簡(jiǎn)單)。寫(xiě)一些什么?學(xué)習(xí)筆記、實(shí)戰(zhàn)內(nèi)容、讀書(shū)筆記等等都可以。
多用 Github,用好 Github,上傳自己不錯(cuò)的項(xiàng)目,寫(xiě)好 readme 文檔,在其他技術(shù)社區(qū)做好宣傳。相信你也會(huì)收獲一個(gè)不錯(cuò)的開(kāi)源項(xiàng)目!
Question7: 大廠到底青睞什么樣的應(yīng)屆生?
我做開(kāi)發(fā)十多年的時(shí)間,如果大家對(duì)于學(xué)習(xí)java的學(xué)習(xí)方法,學(xué)習(xí)路線以及你不知道自己應(yīng)該是自學(xué)還是培訓(xùn)的疑問(wèn),都可以隨時(shí)來(lái)問(wèn)我,大家可以加我的java交流學(xué)習(xí)qun: 615741636。qun內(nèi)有學(xué)習(xí)教程以及開(kāi)發(fā)工具。
從阿里、騰訊等大廠招聘官網(wǎng)對(duì)于Java后端方向/后端方向的應(yīng)屆實(shí)習(xí)生的要求,我們大概可以總結(jié)歸納出下面這 4點(diǎn)能給簡(jiǎn)歷增加很多分?jǐn)?shù):
參加過(guò)競(jìng)賽(含金量超高的是ACM);
對(duì)數(shù)據(jù)結(jié)構(gòu)與算法非常熟練;
參與過(guò)實(shí)際項(xiàng)目(比如學(xué)校網(wǎng)站);
參與過(guò)某個(gè)知名的開(kāi)源項(xiàng)目或者自己的某個(gè)開(kāi)源項(xiàng)目很不錯(cuò);
除了我上面說(shuō)的這 4 點(diǎn),在面試Java工程師的時(shí)候,下面幾點(diǎn)也提升你的個(gè)人競(jìng)爭(zhēng)力:
熟悉Python、Shell、Perl等腳本語(yǔ)言;
熟悉 Java 優(yōu)化,JVM調(diào)優(yōu);
熟悉 SOA 模式;
熟悉自己所用框架的底層知識(shí)比如Spring;
了解分布式一些常見(jiàn)的理論;
具備高并發(fā)開(kāi)發(fā)經(jīng)驗(yàn);大數(shù)據(jù)開(kāi)發(fā)經(jīng)驗(yàn)等等。