三月真是一個忙碌的季節,剛剛開學就須要準備各類面試和筆試(鄙視)。幸運的是,在長達一個月的面試內推季以後,終於同時拿到了阿里和騰訊的offer,仍是挺開心的。突而想起久未更新的博客,就冒昧學一學各路大神,分享面試過程當中的經驗總結。總的來講,本人並非什麼超級大牛,文章更多的是經歷敘述,大神可自行繞道。html
簡單亂入一下,本人主修軟件工程專業,對Web有着濃厚興趣,主攻Web前端
。前端
就在三月份剛開始的時候,各類羣裏面就有師兄說,誰要內推,趕忙發郵件。好在牛人師兄多,一開始就投了天貓
、淘寶
。騰訊SNG
和騰訊微信
四分內推簡歷。git
接到的第一個面試是天貓的,在徹底沒有準備的狀況下,就開始了長達一個多小時的電話面試。第一次不免是緊張的,在面試的一個多小時裏面,屢次處於顫抖狀態。這裏所說的顫抖是真的,緣由很簡單,對於這一次面試沒有任何準備,加上這個面試足夠有份量。掛了電話的時候,第一反應就是不斷回想剛剛面試的問題以及本身回答是否正確。因而就不斷回想剛剛面試官說過的什麼JavaScript事件委託、HTTP狀態碼、前端模塊化怎麼實現...github
和預想中的同樣,第一次面完以後,而後就沒有而後了。然而還沒來得及失落,以及作足後續準備,騰訊的SNG電話面試就來了,問的問題不多,讓你介紹一下本身的項目,爲了幾個常規問題(文章末尾附上全部面試題目),而後就讓你開QQ,遠程看你寫代碼..(從沒想過QQ竟然是面試工具)。不幸的是,寫代碼不給查資料,因此寫的時候遇到一個閉包問題,卡了好長時間。這一次的面試長達一個半小時左右,而後就進入了漫長的等待。這一次狀況不一樣的是,我有面試官的QQ啊!因而幾天以後,我問面試官,爲何我被刷了?面試官給的理由是,你有前端模塊化的思想,思路清晰,很不錯,可是你寫代碼卡的時間比較長,必須有個刷人標準..web
因而乎,在沒有經驗的狀況下,前兩輪面試就這樣光榮掛彩了。面試
在屢屢受挫以後,我開始反思面試的流程:自我介紹
->項目經歷
-> 技術問題
-> 我有何問題
。我發如今除了項目經歷以後,其餘環節都不是問題,畢竟我有着兩年的積澱,基礎仍是很紮實的。算法
因而我去請教一些師兄,面試應該要注意什麼。起初問了微信的兩位大牛師兄,結果甚是驚訝。簡單總結就是,在講項目的時候,你須要展現你本身的亮點
,能夠說一些裝逼
的詞,但裝逼也是得有真材實料的。好比我在項目中使用了WebSocket,那麼面試官極可能問你WebSocket是什麼,底層原理你知道麼?若是你當場傻掉,面試官就會以爲你只是會使用別人的東西,並不在乎實現原理,終究是碼農。那麼事先你就應當去看看WebSocket協議的官方文檔(純英文,看得累死我了!),這樣面試官一問你,你能頭頭是道,會大大加分。再好比,你在項目中使用了模塊化,那麼你就必定要知道什麼是模塊化,而不是說你會用模塊化工具。其實要求並不高,你只要能很好說清楚什麼是AMD規範,什麼是CommonJs規範,各自的優缺點是什麼就很夠了,起碼以後每次面試官問我,我都是秒回的,面試官竟無言以對,也就是對個人認同。數據庫
最後一點,也就是最重要的一點是,必定要把面試官往你熟悉的領域引導
,這真的很重要,由於若是你不引導,面試官不瞭解你的項目,看不到你的亮點,就只能一直問技術問題刁難你,人家在大公司待這麼久了,還不是輕鬆碾壓你。因此你在引導的同時,時不時說起一些事先準備好的關鍵詞,技術官一問,你一回答,怎麼都妥了~segmentfault
上述理論其實真的是很管用的,起碼我如今以爲本身是半無解了,由於在那以後的淘寶和微信面試中都順利經過了,也能夠放棄29的騰訊線下筆試了(學渣真不會C++),哈哈。後端
淘寶一輪的電話是一個慵懶的中午打來的,因爲三點有課,兩點的時候準備上去睡個午覺,還沒躺下呢,就接到面試官的電話,我說我準備睡午覺,他說兩點了還睡午覺...
不得不說,阿里的面試仍是很是專業的,一輪的時候,花了半個小時實踐我上面說的理論,而後就狂問十幾個技術細節問題!沒有必定的技術基礎真的招架不住。面完以後我的感受還不錯,口乾舌燥上課去了。後來發現阿里的面試狀態是在他的招聘網上實時更新的(這一點阿里作的最好)。因爲內心有底,看到經過淘寶一面並非很驚訝,只能說要是這樣都不過我就認了!最難的是二面,估計是技術總監什麼的,除了常規面試流程以外會一直刁難你,這個時候須要有格外良好的內心素質。像阿里巴巴這種大公司,技術牛是沒話可說的,可是咱們只是一個大學生,沒有作過併發量達到他們零頭的應用,因此這一關考驗的是思考問題的能力。有些問題是你多是真的不會的,可是也不要出現好像是
、多是
、我猜
之類的詞眼(我以前就是這樣跪掉的),而是說按照個人理解
、給過一點思考時間
、我不太懂這個問題須要我從哪一個角度解析
、我之前遇到相似的問題是怎樣這個問題應該也是這樣
...這樣給面試官的印象是,即使你不懂,可是你在全力思考,並且這樣會給本身爭取不少時間。
微信的面試就很少說了,只能說騰訊的廣州研發中心真的很漂亮,一看就是工做的好地方!裏面的設備啥的也是好的沒話說!可是仍是忍不住吐槽一下,騰訊的面試作的不夠好,去到二話不說給你六道算法題,時間一個小時,而後又狂問你一個小時,一口水都沒的喝!!好在過了,再也不贅述。
我的以爲每一次面試都是一次修煉,因此每一次都須要好好總結。這一點我仍是作的不錯的,我把大部分面試都記錄了下來,而後仔細分析研究,避免不會犯二次錯誤。這裏附上一些面試題目和我的準備過程當中的一點小筆記。而後推薦一樣面試前端的同窗好好看看《JavaScript高級程序設計》
和《HTTP權威指南》
,管用。
最後奉上我的的簡歷,供你們參考,起碼沒有在簡歷環節被刷,哈哈。個人簡歷
袁梓民的我的簡歷
姓名:袁梓民
性別:男
出生年月:1993年10月14日
學校專業:中山大學軟件學院
電話:13824421386
Email:1229084233@qq.com
blog:http://www.cnblogs.com/yuanzm
英語水平:CET-4
專一而且熱愛web開發,熟練掌握JavaScript、HTMl、CSS以及JavaScript框架來搭建web應用。瞭解原生JavaScript和JavaScript類庫的使用。
項目地址: http://www.wizland.cn/wizland/index/
項目地址: https://github.com/yuanzm/Live-Chat
Home-Cloud是基於Python的Tornado框架構的一個移動端WebApp。Home-Cloud的開發並無花費很長時間,得益於以前的Web開發經驗。Tornado自己不是一個MVC框架,因而在組織後端代碼的時候借鑑了Nodejs的Express框架,將整個後端代碼架構成由model層、router層以及view層構成的的MVC結構。好處是顯而易見的,當業務邏輯愈發複雜,這種分層架構可以保持項目代碼絲絕不會紊亂。前端得益於Tornado的模板機制,在大部分模板引擎都具備繼承等優勢的狀況下,多出了UI模塊這一點,使得每個模塊能夠擁有本身的html、CSS和js,可以很好符合Web組件化開發的特色。經過這個簡單的項目,很好展示了近兩年的Web開發經驗,從剛開始的寫一步看一步到今天的工程思想,感受收穫很大。
項目地址:https://github.com/yuanzm/project-qiuzudui
所作的第一個項目,項目致力於建立一個在校大學生競賽組隊平臺,經過這個平臺,用戶能夠在主頁查看到近期學校的比賽並可以發出組隊邀請。在這個團隊裏面,我與另一名成員進行合做負責前端開發。做爲第一個項目,主要問題是團隊協做以及項目工程經驗不足的問題。因爲沒有很好的組織好項目結構,以及版本控制意識的缺少,致使後期代碼結構混亂的問題頻頻出現。經過這個項目,領會了項目工程思惟的重要性,以及團隊協做的重要性。
項目地址:https://github.com/yuanzm/emitong.git
第一次作手機端的Web應用,整個項目用於展現與益米通公司合做商家的優惠信息。項目遇到的主要問題是移動端Web經驗缺少,不一樣設備的適配問題等。經過查閱資料以及諮詢前輩,在這個項目中掌握了Web響應式應用的開發,同時瞭解了微信公衆平臺應用開發的基本流程。
項目地址:http://pro.ss.sysu.edu.cn:8080/party_affairs/index.jsp
主要任務是部署基於Java Web的網站服務器和網站的平常維護工做。
項目地址:https://github.com/yuanzm/Snake
在閒暇的時候用JavaScript寫了一個貪吃蛇小遊戲
從大一開始瞭解web技術,大二開始正式投入學習web各類技術。正處於快速增加技能的階段,對於web有着極高的熱情,天天堅持學習web。
目前爲止對於前端技術比較瞭解,可是正在學習web後端技術,目標是成爲一名優秀的web全端工程師。
擁有較強的學習能力和溝通能力,可以比較良好的和團隊成員協同完成開發。