校招在我看來是一件時間特別長的戰爭,爲何這麼說呢,由於從你開始準備校招的那一刻開始,到你正式拿到offer的,而且肯定去哪一家公司時,時間差很少一年左右,這個時間其實比考研、公務員等都要長,你可能會問爲何須要這麼長的時間,固然,這也跟我的的具體狀況相關,每一個人也會不同的,可是,也差不了多少,大神級別的除外了。html
這篇文章主要仍是講講校招的整個流程,須要準備什麼,遇到問題時怎麼去解決,怎麼去調整心態,這些都是很重要的,我也是把我我的的真實經歷告訴你們,但願可以對你們有幫助。前端
在我看來,第一件事情應該就是選擇你找工做的方向,這件事情應該在你開始找工做的半年前左右肯定,好比,你2021年3月開始春招找工做,那麼,我建議你最好在如今,也就是2020年10月就肯定找工做的方向,爲何要這麼早,後面我會具體分析。java
說到工做的方向,就如今的互聯網公司來講,其實能夠選擇的方向仍是特別多的,也是看我的的選擇,固然,也是能夠有一些數據來作參考的;如今的校招的主流的方向有:算法,後端開發,前端開發,測試開發,運營開發,客戶端開發,測試等等,這些崗位一般來講是選擇最多的,對於幾個崗位,我也給一下本身的建議,能夠供參考。mysql
首先是算法,算法這個方向,在我剛剛讀研究生的時候也是有想過的,可是,隨着深刻的瞭解,以及對於市場對於這個崗位的需求分析,後來,我就慢慢的放棄了,固然這只是一方面的緣由;對於算法崗位,如今比較熱門的就是深度學習、機器學習了,因爲CV方向特別火爆,這裏的火爆並非說好找工做,而是競爭太大了,就今年的算法崗位來講,或者說從去年開始,基本上就是神仙打架了,沒有一兩篇頂刊論文,你都很差意思說你是搞算法的,因此,若是你想找算法的工做,個人建議是,第一,是否是研究生,第二,是否是211/985以上,或者更直接點是否是985以上的學校,第三,有沒有發過好的期刊的論文,我以爲這三點至少知足兩點以上才能夠考慮去找算法的工做,不然,建議轉開發。linux
接下來講一下開發,開發如今其實競爭壓力也不小,想進大廠的壓力其實也很大,由於需求就這麼多,固然,跟算法比起來就好不少了,後端畢竟方向不少,語言的選擇也是不少的,好比,Java、C++、Python、Go這些語言的方向都是能夠選擇的,以前也說過,Go如今的需求也是在慢慢變大的,能夠考慮一下這個方向,競爭可能小一些,其中,Java的競爭最大,多是由於你們都以爲Java好找工做吧,致使投遞的人數特別多,大廠就更不用說了,想找一個Java崗位的工做真的不容易,從我身邊的朋友來看,以及身邊同窗找工做的感覺來看,C++進大廠的難易程度仍是小一些的,你們能夠考慮一下,固然,這些選擇也是看你對哪一個方向更喜歡了,或者更熟悉了,這裏只是給一些建議。git
上面說了如何選擇的問題,選擇好了以後,就應該熟悉一下目前的校招流程了,剛剛開始的時候若是不瞭解的話,或者沒有了解一些經驗之類的,仍是會犯一些錯誤的,因此這裏給你們總結一下。程序員
在如今的校招的模式下,校招分爲春招和秋招,春招基本上是找實習的,仍是少許的校招補招的,補招就是上一年秋招沒有招滿,而後在春招繼續招人,而秋招基本上就是應屆生找工做的最佳時期了。github
在今年的春天,2月份開始吧,春招就開始了,不少的公司就開始招是實習生了,特別是字節跳動,在2月初就開始了提早批,2月底提早批就結束了。web
因此,春招找實習的黃金時間就是2-5月了,這個兩到三個月的時間都一直會有機會,也是拿實習offer的最佳時期。面試
接下來,6-8月這個時間段,若是你在春招找到了實習,那麼通常你就在公司實習了,實習結束後,到9月開始就是要開始秋招了。
可是,這裏其實有一個問題,在前面就講到過,如今的秋招通常都會很早,可能在7月的時候不少的公司提早批就開始了,而提早批又是很好拿offer的時候,因此,選擇去不去實習就顯得很重要了,或者,你去實習了,若是發現你所實習的公司不是你想留的公司,建議儘早離職準備秋招。從今年的狀況來看,可能由於疫情的影響,到了9月份開始秋招,發現其實已經晚了,拿個人狀況跟身邊的同窗來講,今年9月份開始秋招,通常都是投了一大堆的公司,結果最後只有可憐的5個面試機會,這個時候才發現,提早批真的很重要,再對比一些沒有實習的同窗,經過提早批的面試,通常都有幾個offer斬獲,對比之下,發現實習的優點居然沒有了,可能這就是如今互聯網公司的找工做的現實寫照吧。
前面講了校招的流程問題,這裏講一下在面試的過程當中必定會遇到的問題,那就是投遞簡歷。
你們應該都知道,如今互聯網公司找工做,基本上都是在牛客網看相關的信息,這也是給你們提供了一個渠道。
關於投遞,如今不一樣的公司也有不一樣的形式。
第一種,大公司,大公司通常都會有本身的投遞官方網站的,都是在官方網站進行投遞,這個麻煩的就是,不少的簡歷信息都是須要手動輸入的,因此,仍是比較耗時的,到時候遇到了你就會發現真的有點煩,有時候投遞個簡歷須要半天;可是,有一個好處就是,能夠比較實時的查看面試進度,直接在官網上進行查看就能夠了。
第二種,有一些公司由於沒有本身的官方網站,因此,就託管在第三方來進行這個操做,好比,在牛客網上直接進行投遞,在牛客網上填寫簡歷,而後,就能夠一鍵投遞了,這個方便一些,可是,就是感受不少時候沒有消息,我也不知道爲何。
第三種,也是依賴第三方公司,今年投遞的感受來講,通常都是依賴一個叫作https://www.mokahr.com/,這個網站通常就是公司進行內推的,這個投遞網站好處就是方便投遞,並且有些公司只須要你上傳你的電子版的簡歷就能夠,下降了投遞成本,可是,不方便的就是查詢投遞進度。
而後,說到內推,其實,方式也就那麼多。通常,若是有實驗室的師兄師姐在比較好的互聯網公司,那麼,咱們能夠經過這種渠道進行內推,通常也是比較靠譜的,成功率比較高;其次,如今不少內推也都是在牛客網進行了,我不少時候也是在牛客網看有沒有公司的內推,這種方式有一個問題就是通常內推的人不少,最終你能不能被篩選到是一個問題;最後,還有一種方式就是經過公衆號,官方的公衆號投遞,或者有一些公衆號也會提供內推碼。
最後,就算沒有內推,其實也沒關係,不少人直接在官網投遞,也是可以機會的,並且,如今的內推跟前幾年還不同,如今就算是內推了,最多也就是有個筆試的機會,不會直接給面試機會,直接給面試機會除非是簡歷特別出衆。
這一部分我以爲是這篇文章的重點了,寫這篇文章也是爲了告訴你們怎麼準備校招,而其中的專業知識部分就決定你能不能拿到offer了,因此,接下來,我重點的跟你們聊聊校招的專業知識部分的準備工做。
首先,我能夠告訴你們一點就是,校招對於技術棧的要求並不會很高,校招就是招聘應屆生,只須要你有可塑性、可培養的空間,那麼,就頗有可能給你offer,那麼,若是校招不強調技術棧的重要性,那麼注重什麼的考察呢?
沒錯,就是算法,對於計算機專業的學生來講,從大學開始接觸到計算機的必修課裏面必定是有數據結構和算法這門課程的,並且也是至關的重要,而校招,從我自身面試的經從來說,算法能夠說是十分的重要,再強調也不爲過。
在如今的招聘流程中,首先是有筆試,大公司的筆試通常就是2-4道編程題,題目的難度leetcode的hard以上,因此,筆試就是檢驗你的算法的能力;進入到面試階段後,基本上每一輪面試中,必定是會有算法題的,如今也是通常使用牛客網進行考覈,因此,你們能夠先去牛客網適應適應,那麼,在一次面試中,算法的重要性怎麼樣呢?我這麼說吧,若是一輪面試中,面試官出了一道算法題,若是你作出來了,其餘的專業知識點回答的很通常,你有可能進入到下一輪面試,若是你算法題沒有作出來,專業知識點就算回答的再好,基本上也是涼涼。所以,從個人經驗來看,面試中A出算法題,至少能夠拿到60分,A不出來,那就是0分,無一例外。
那麼算法如何準備呢,這也是我想跟你們聊的一個話題,由於我在找工做以前,算法的能力能夠說太通常了,不少的算法都是不懂的,基本的題目也是很難作出來,可是,通過這一年的訓練,如今在面試中的算法題A出來基本上是沒有問題的,除非是特別難的題目,那當我沒說,有過幾回經歷,感受被刷KPI了;所以,若是你如今也是對算法沒有任何的自信的話,不用太擔憂,由於我也是這樣過來的,只要你堅持,有方法的訓練,應對基本的面試是徹底沒有問題的。
接下來就是講講怎麼去應付校招的算法難關,拿offer。
首先,若是你離秋招還有一年多的時間,也就是明年的秋天才參加秋招,或者時間更多,同時,你的數據結構跟算法的基礎也是不太好的話,我建議你先看看數據結構與算法的書籍,關於看哪些書籍,我以前已經寫過了,能夠看這篇文章必須看的數據結構與算法書籍推薦: https://blog.ouyangsihai.cn/cong-ru-men-dao-na-da-han-offer-bi-xu-kan-de-suan-fa-shu-ji-tui-jian-bu-hao-bu-tui-jian.html。
其次,若是你的時間很是緊張,立刻就快要參加春招找實習了,這個時候其實我就不太推薦看書了,看書的效率實際上是很難保證的,我建議你看一下牛客網左神的算法教程,左神的教程我是看過的,從基礎到進階的一整套課程,我以爲講的很是的精彩,可以看得出來左神的功力,對於每一種算法的類型,每個題目的講解都是細緻入微的,推薦去看看。
而後,若是你對於基本的算法經過看視頻或者看書有了必定的瞭解的話,那麼,接下來就是校招的刷題時間了。
講到刷題,其實方法很重要,這裏我就講一下個人這一年的刷題的經驗,其中也有本身的血與淚的故事,就很少說了,這裏告訴你們,避免踩坑。
無論哪一個方向的,我都建議你刷題的第一本書是《劍指offer》,爲何這麼說呢,由於面試的時候,不少的題目都是出自這本書的,無論哪一個公司,另外我還要告訴你,特別是春招的時候,由於你們準備的都不是特別好,因此,面試官出的題目也不會很難,通常就是選自這本書,必定要好好的把每一道題目都吃透。那麼怎麼樣纔算吃透呢,可能你看了幾遍這本書,可是仍是不夠的,你還須要去牛客網找到劍指offer的專欄,進行線上的練習,只有當你本身能夠在線上把每一道題均可以A出來的時候,而且都是最優解,這個時候,這本書就是過關了,那麼,你也是能夠應付面試中的70%的算法題。
若是這一步你已經作到了,還想要提升的話,我還會推薦左神的書《程序員代碼面試指南:IT名企算法與數據結構題目最優解》,這本書的難度比劍指offer難不少,裏面有不少有難度的題目,可是各個章節都編排的很是合理,都是按照分類來的,很是適合進行刷題,訓練本身的算法思惟。
固然,若是你不想看書,想直接刷題,那麼,我推薦你去leetcode進行刷題,去leetcode刷題也須要注意一點,儘可能按照類型來刷,這樣能夠更好的進行練習,同時,我也建議你先把hot100搞定,而後再去刷其餘的,這樣能夠先把最熱門的題目搞定,其餘的有時間再去訓練。
以上就是應付算法的一些技巧,這固然只是針對大多數的人來講的,大佬能夠跳過。
這一部分接着上面的算法,能夠算是比較合理的,只有在算法的基礎上,纔有資本談論專業知識,不然,沒有任何意義。首先聲明一下,下面的這一部分主要是針對Java開發的,其餘的方向在這裏不討論。
Java你們都知道技術是很是的多的,也是比較費時間的,可是,結合校招的特色,狠毒的技術實際上是不用討論的,主要的須要複習的在這裏都會講到,主要包括下面這些。
以上的這些知識點其實都是考察的很是頻繁的,其中數據庫,數據結構,Java集合,併發,JVM,Redis這幾塊知識點,被問到的機率特別高,基本上是面試必問的。
不過,你們不用太擔憂,由於,經過這一年多的面試,我基本上把這些知識點都進行了總結,常見的面試題也都是進行了總結,只須要按照我總結的來進行復習,我以爲問題不大,互聯網前50應該是沒有任何問題的。
下面我給出一些我總結的常見面試題,都進行了分類,很是好進行復習。
上面的這些就是我整理的互聯網公司的各個知識點的常見面試題,很是高頻的面試題,這裏由於限於篇幅,不太好進行所有展現,若是想去看具體的解答或者質量高的博文解答,能夠去個人github上查看高頻面試題分類彙總: https://github.com/OUYANGSIHAI/JavaInterview/blob/master/docs/interview-experience/%E9%9D%A2%E8%AF%95%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E5%88%86%E7%B1%BB%E6%B1%87%E6%80%BB.md。
上面的這些面試題可能不是特別的全面,有一些是沒有考慮到的,考慮到這個問題,我就把一些相關的面試題整理成了思惟導圖,若是你們有須要也能夠直接去這篇文章獲取,關於思惟導圖有什麼好處我在這篇文章就很少說了,在上面這篇文章中有提到,總之,拿到這些資料,只要你好好去思考,對面試必定是大有幫助的,畢竟我就是這樣走過來的。
固然,這個github不止上面這些面試題,還有其餘的關於我這一年的全部積累和總結,看了你就知道,必定會對你面試有很大的幫助的,由於我就是靠上面的這些拿到大廠offer的。
原本這篇文章最後仍是想講講一些公司的面經的,可是,寫着寫着,發現這篇文章已經寫了幾天了,字數也快2W字了,考慮到文章篇幅太長了也很差,因此,這篇文章暫時就不分享一些公司的面經了,後面的文章再給你們分享,若是但願看到後面的公司的面經的話,好比,字節、阿里、騰訊等等,麻煩給個贊,這篇文章死磕了快一週了,原創不易,但願對你們有幫助。