1. 程式人生 > >計算機找工作攻略(offer:阿里,騰訊,百度,華為,今日頭條等)

計算機找工作攻略(offer:阿里,騰訊,百度,華為,今日頭條等)

尊重原創版權,轉載請註明原文地址

前言

寫這篇有以下幾個原因:

1.對過去一年找工作的一個詳細總結

2.自己找工作也看了許多攻略,沒有一個特別有用,特別好的,所以就自己寫一個攻略,如果能幫助到別人,當然最好了。

3.好吧,師弟師妹們總問,額。就寫一份得了。

4.個人的一些想法,如有意見和錯誤,歡迎指出和討論

內容提綱:

1.個人經歷介紹以及一些找工作誤區

2.如何寫好簡歷,做到最完美的簡歷

3.如何準備知識,做好規劃

4.如何筆試

5.如何面試

6.公司介紹

本文注重方法,不會具體說具體的題目,因為每個面試官問的不會一樣,沒有太多的意義,而且方法掌握對了,知識都是通的,具體實踐自己怎麼操作都可以。

個人經歷

阿里螞蟻金服:3月初第一個面的公司,3面過了。暑期實習3月

網易遊戲互娛:3月面,1面,通過發了offer,沒去實習

百度:9月校招,筆試+3面面試,最後拿到special offer

騰訊:9月校招,筆試+2面面試+hr面,special offer

華為:9月校招,3面+2面,special offer

今日頭條:筆試+3面,拿到offer

微軟:4月面,3面,通過,演算法偏弱,最後沒給offer

猿題庫:9月,3面過,演算法偏弱,最後沒給offer

誤區

1.以為看越多面試題越好

許多同學看許多別人的面試題,看面試是什麼題目,然而真正面試發現並沒有什麼用,本人第一次面試前看過1,2篇面試題經驗,之後就再也沒看過。因為面試可以說是一種談判和博弈,每個面試官,問到的題目肯定不一樣,許多都是順著話題而展開,而且技術發展這麼快,去年的面經的題目可能就過時了,演算法題目除外。如果花過多時間和經歷去看面試題,那麼就跑偏了。

2.盲目的投各種公司

許多同學投各種公司,然後忙的焦頭爛額,發現最後收穫的很少,又很沮喪,很累。其實選公司也是有許多策略的,不易貪多,注重質量,而且第一次面試的公司一定要慎重選擇,如果第一次面試成功,那麼有保底的,又能增加信心,在以後的面時間過程中肯定也會越來越好。如果第一次面試失敗,那麼會很打擊,很沮喪,會懷疑自己,缺乏自信,那麼之後別的公司的面試也會越來越緊張,沒有自信。所以第一次面試的公司要選好,爭取一下成功。

3.各種跑招聘會

額,本人找工作沒有去一次招聘會,個人覺得沒有特別大的作用,如果想了解,想蒐集資訊,網路完全可以蒐集的很全面,而且跑很多招聘會,看那麼多的同學,人容易焦慮,缺乏精力,又疲憊,又累,所以直接網上投就好了。

準備和規劃

規劃:學習知識-> 簡歷->內推->筆試->面試

怎麼學:

1.看書,看書,看書,記錄,記錄,記錄

2.總結和思考

3.鞏固和舉一反三

看書是最好的學習方式,書具有系統性,會涉及到各個細節,多看書能很好的打好基礎,增加廣度,其次是記錄,記錄重要的知識點,關鍵的知識點,容易忽視的知識點,重點理解和思考,增加深度。然後不斷鞏固,加深記憶。

java和android找工作之前看了如下書

java: 

java程式設計思想,java核心I,II, java虛擬機器,java特種兵,java資料結構與演算法,head first java, java特種兵,effective java,java併發程式設計藝術,java面試指南

android:

第一行程式碼,android群英傳,android權威指南,android開發藝術,android深入理解核心思想,android系統原始碼分析

這些書全部都買了,當然是二手的,一本一二十。

這麼多書,怎麼看呢?

精讀一本,例如java,看java程式設計思想,認真看完,做好筆記記錄,自己不理解的,容易忘記的,覺得重要的記下來,當然是記關鍵詞,使自己之後能看到關鍵詞想到相關知識點,之後不斷鞏固。

然後你看別的書,就發現,都是熟悉的,因為許多都是重疊的,那麼就查缺補漏,做記錄,之後看的就非常快。

獲取資訊

每天抽取一定的時間,獲取招聘資訊,然後根據時間記錄,其他時間打基礎。

做簡歷

首先要認識清楚:

1.簡歷不是說把自己所有的有的無的都放上去

2.簡歷針對不同公司,不同職位,要做相關更改,最好不要一份簡歷通用

3.把簡歷當作一個入口,和麵試官溝通的入口,每個點相當於開始,針對每個點,都做好接下來的對話。

亮點和優勢:

好的簡歷無外乎以下幾點:

1.學校獎學金(XXX獎學金)代表你的學習基礎

2.技能,簡單列一下幾點比如java:熟悉Java(多執行緒,IO, 虛擬機器)瞭解常用jar包原始碼,瞭解Java設計思想等

3.專案:xxx專案,自己做了哪些工作

4.競賽:xxx競賽xxx幾等獎

5.論文和專利:xxx論文

內容:

格式:

1.用表格來規範簡歷的格式

2.字型要清晰,統一,看起來舒服,如微軟雅黑

3.不要超過一面

4.清晰簡潔,每個模組加粗,下一橫線

5.中英文簡歷都要做,英文注意單詞用法

6.提交得提交pdf格式,內推是發現許多同學交到是word版本,word版本因為相容性問題,佈局會變的。

7.儘量填充一面,內容多的,縮小字型,縮小行距,內容少的,增大字型,增大行距,一頁滿,不留空白

個人資訊:

1.標題不要寫簡歷2個字,都知道寫簡歷沒必要多此一舉,直接寫自己名字

2.手機,郵箱,性別,出生年月,技術部落格,github。技術部落格和github很重要,是加分點,許多面試官會看,這個是最直接能瞭解一個人的技術基礎,如果沒有,那麼ok去準備,去總結,去寫,去填充這些。

校園經歷:

如果只是本科,直接寫到個人資訊裡面,如果碩士,可以寫兩行,也可以加上自己獲得的獎,xxx獎學金啥的,動態的調整內容

技能:

1.切記不要寫精通

2.列清點: 如果直接寫熟悉java語言,那麼很寬泛,面試官可以在這麼大的範圍裡面隨便問,問到很偏的東西,就完蛋,比如java8新特性,java多執行緒,java泛型。  如果改為熟悉Java語言(基礎,容器,多執行緒,IO,面向物件)這樣就很好,相當於把一個很大的集合,縮小為可控的集合,那麼只要認真準備擅長的,重點的幾點,再兼顧其他的知識點就ok。其他也是一樣 熟悉機器學習(列自己擅長的演算法)熟悉資料結構(...) 

這樣寫法一個可以豐富自己的簡歷,使每一行都佔滿,另一個縮小集合,限制在自己擅長,拿手的重要知識點上面,這樣自己準備起來有方向,當然其他的知識點也要準備。

3.java可以如下寫: 熟悉Java語言(...) 熟悉Java虛擬機器(...)瞭解JDK原始碼(ArrayList,HashMap...) 熟悉Java併發(...) ArrayList,HashMap的原始碼非常重要,必掌握知識點,而去寫到簡歷上,很大可能會被問,一旦問道,自己順手紙上寫出來,多麼完美。

4.資料結構(...)作業系統(...) 網路(...) 資料庫(...) 如果沒有精力準備,那麼不寫,問到能回答則回答,不回答,就說不會。

5.語言:CET-4:xx CET-6:xx  能熟練閱讀官方文件。

專案:

1.有專案最好,專案上標清和xxx公司,和xxx國外老師,和xxx創業團隊合作專案,這樣看上去就顯的專案重要,有底氣,比上面都沒有,讓人以為自己搗鼓的小專案好很多。

2.沒有專案,那麼自己要準備一個專案,途徑:教學視訊,帶你手打專案,語速2倍,瞭解專案整個邏輯,屬於拿來主義,站在巨人的肩膀上,加上自己的思考,改進,進行包裝,這樣也可以,但是自己要圓過去,重要的不是專案本身,是專案中,自己做了什麼,涉及到什麼知識點

3.專案寫清自己做的工作,關鍵知識點:xxxx

自我評價:

1.不要寫什麼踏實,努力,這些很虛的東西。

2.有愛好,特長可以寫 如xxx幾級,  志願者,社團工作,可以寫,xxx主席

3.有優勢的寫:如3年讀了100本專業書,寫了多少篇部落格

4.職業規劃:職業發展

注意:

1.簡歷是一個引子,上面的每一點,每一句話都是有用的,如果問到那麼必須自己能對話下去

2.為什麼技能,列點,這些就屬於自己丟擲去引導面試官問的,這樣就會化被動為主動

3.比如列了熟悉ArrayList,HashMap原始碼,這樣就丟擲去這樣一個問題給面試官問,而且屬於資料結構知識,又有語言實習,極大可能面試官看到簡歷這點就會讓你寫,你在寫這點在簡歷上的時候,就肯定準備的很周全,那麼面試的時候,順利的寫下來,這樣就很好。技能,專案都是如此,丟擲去相關點,準備周全,等著來問。 自我評價也是,丟擲去讀了多少書,那麼問到你最印象深刻的書是什麼,準備好,順利答出,這樣就會掌握面試的節奏,化被動為主動

4.簡歷的每一點都要認真準備,寫的準備好,虛的,不會的那麼就不寫。因為自己真的遇到面試官,就拿著簡歷,對著上面一點一點的問,然後擴充套件。

筆試:

一般最開始都可以走內推流程,不過現在大部分內推也是要筆試的了,筆試有以下型別:

1.線上程式設計:網易微軟的hihoCoder,沒有acm基礎的很難通過,這個時候就是發揮人脈的時候到了,當然自己要努力經常刷leetcode,等線上程式設計題目

2.選擇,程式設計,簡答之類的:涉及的知識面真的很廣,大家都懂得。不明說了,如果不懂歡迎聯絡我~

面試:

1.第一家面試的公司最重要,慎重選擇自己把握大的,可以不上來直接BAT,可以面一些小公司,使自己適應,增加自己的信心,如果一上來BAT,那麼可能直接撞死,信心將受到強烈打擊。本人一上來就是B,幸好還是通過了。

2.把握時間節點,在自己把簡歷準備好,知識點準備好,怎麼拋,怎麼把我節奏準備好後,再投簡歷,切記沒準備好,盲目的投

3.約好時間,許多面試可能在你做別的事情,比如搬磚,比如吃飯,比如睡午覺的時候打電話過來面試,這個時候正確的姿勢是:不好意思,然後約半小時後。然後在這半小時中:1.找一個安靜的空間,2.看筆記關鍵詞過一下知識點,3.清空大腦,平靜心情。 剛開始可以這樣,如果有把握,那麼隨時開始。本人剛開始幾次都是突然打電話,然後都是約了靠後的半小時到一小時,平靜好心情,清空好大腦。後面面試多了,就隨時可以開始面了。

4.面試有這幾個階段:自我介紹階段,基礎知識,擴充套件知識,專案,提問

自我介紹階段:

簡歷上有的就不需要說了,說以下幾點:

1.簡單介紹專案,重點突出一個,看面試官是不是感興趣,動態調整

2.已經有的職業技能規劃

3.未來的發展規劃

4.自己的看法,為什麼投這個公司,自己對這個公司的業務,和公司這個職位的工作情況,工作環境,使用的技術。

中間可以加入一些問句:比如說完自己的未來發展規劃,問公司的對信任的職業規劃什麼樣,或者問面試官個人,這樣使對話能繼續下去,有的說,有點聊,雙方都舒服。

基礎知識:

因為簡歷上已經丟擲引子了,自己也準備好了,那麼簡單的基礎知識很容易就能答上來,會的就說會,不會就說不會

擴充套件知識:

如設計題目,考思維,ok首先歸類到哪方面的問題,然後搜查知識點,看有沒有類似的知識點,涉及到。因為這樣的題目,大多都是從基礎知識擴展出來的,所以從對應的基礎知識搜查。

應用知識:

最新的技術,開源專案,xx語言新特性。這些需要自己平時積累的

專案:

知識點介紹專案,說清楚專案的應用場景

以上知識和專案這些完全沒有技巧可言,全部都是靠自己的功力,當然丟擲去的引子使知識點範圍可控了

提問:

1.問具體公司文化

2.問使用什麼開源技術

3.問個人發展規劃

4.問公司培養新人計劃

5.問面試官面試反饋: 最後問,如果前面談的好的話,這個時候就知道自己是不是面過了。

優缺點:

經常遇到,這是一個很難回答的題目,重點是,缺點不能是真正的缺點,如果說缺點是不喜歡加班,ok,完蛋。本人經歷後總結出以下幾點:

1.實踐能力不足,解決問題能力有待提高,隨著自己的實踐和努力,怎麼怎麼樣

2.職場專業性不足,學校學生的思維更多, 然後自己會盡快轉變從學校到職場多過度

3.心理抗壓能力不足,。。

4.任務時間規劃和細分。

公司:

阿里:

電面,內推沒有筆試,網站上有進度,面試完成後,面試狀態會變動如果掛的話,沒掛的話過幾天就下一面,最後有一個hr面,只要價值觀沒問題,基本沒事。然後優缺點問題回答好,參考上面。

基礎知識:根據個人拋什麼樣的引子,java的話常規的題目如:抽象,多型,虛擬機器雙親模型,gc,記憶體結構,多執行緒,執行緒池,自動裝箱,io, 等。  結合資料結構問的重點是容器,拋了引子,會寫原始碼,ok了。 然後併發庫, equal方法原始碼等。之後排序,各種應用場景排序,大規模排序,分桶。 偏專案,每一面都會問專案,二面,三面擴充套件知識比較多,涉及多執行緒比較多,虛擬機器比較多,或者原始碼。

阿里的氛圍是狼性文化: 適合張揚的性格,公司爭吵比較多,當然是對事不對人。彈性上班,下班部門不同,時間不一樣。基本9點後把。

百度:

現場面:3面,在賓館,問的題目難度比阿里難,有演算法題,手寫程式碼,問題偏低層居多,本人android, 問了很多底層的原理,AIDL, Binder,AMS, 啟動流程, view繪製, 訊息佇列,Binder open(), map(), JNI,當然這些自己在簡歷上也拋了引子。 前兩面一天面,之後過的話會有3面會涉及一些hr面的問題, 很少, 專案比前二面問的多, 有設計題目。  3面後無hr面

騰訊:

賓館,2面,hr面, 100000人裡選1000 貌似是這樣。  擴充套件連續深入問題居多, 比百度好一些,不是特別篇底層,有手寫演算法題目。

騰訊文化柔和

微軟:3面,手寫演算法題目,  看程式設計之美,程式設計師程式碼面試指南, 準備充分就OK了

猿題庫:3面,手寫演算法:2面遠端,線上程式設計,1面執行緒,連結串列,陣列居多,不涉及樹圖。

今日頭條:3面,2,3題演算法題,基礎知識, 隨著面試進度,越來越偏底層

最後:

1.充分的準備  資料結構, 線上程式設計刷題,看書基礎知識, 實踐專案, 兼顧計算機基礎知識,自己的知識積累最重要,其他面經,題庫,也只是景上添花。

2.心態調整好,第一公司選擇最重要,成功則一路信心倍增

3.每次面完做總結,思考,學習,提高

4.關注新技術,關注開源專案

5.多花功夫,只有比別人更努力才行

6.祝找工作的新的一年順利找到自己滿意的工作。