- 相關推薦
百度實習生web前端開發工程師的面試經歷
想不到自己這么快就開始寫面經了,這次的面試談不上失敗,也談不上成功,也就寫出來給大家一個參考和教訓吧!
我這次是通過一個學長內推到百度的“商務搜索部”的web前端開發方面的,HR部門提前通知了我什么時候面試,因為我學校不在北京,所以就只好電話電面了。提前沒日沒夜的準備了好幾天,因為百度的要求很多,比如要精通CSS和javascript,還要熟悉數據庫,熟悉一種后臺開發語言,最扯的是“對用戶體驗有深入的理解”,為什么扯呢,后邊再說。
我很久就做網站了,不過都是開源的,所以自己去有想法寫,也是最近一個學期的,所以開發經驗必須的不豐富。寫完簡歷之后,就開始復習以前看的一些書籍了,尤其是js還有web標準以及網站重構的東西,另外花了一半的時間去看了下以前看的用戶體驗以及設計方面的東西,還有GUI設計……
面試的時候,面試官是個男的,聽聲音大概不到30歲,后邊也確實證實了。說話并不是傳說中的笑瞇瞇很隨意,有些沙啞和低沉。
第一個問題是介紹自己,balala的介紹完,就問了一個讓我到現在還在無語的問題:常見的數據結構有哪些?暈死啊,前端上沒有這個要求啊,就算對算法有要求,也不至于去操作底層吧。我回答說有鏈表、堆棧、樹。面試官說,好,那你給我解釋下B樹。我了個去……直接傻過去了,我是萬萬沒有想到會問這個的,balabla解釋了一堆,最后又扯成了數據庫索引,然后這個題目就杯具了,說白了,我B樹方面的東西已經忘記完了,因為考慮自己以后要搞前端,所以數據結構和算法就沒有再去研究!所以建議大家,去這些大公司的,最好還是對常見算法和數據結構有比較好的了解!
在這個題目杯具了之后,就問cookie和session的區別……這個我知道,回答了,不過聽起來人家對我的回答并不是很滿意,中間打斷過一次。
然后問我會不會ajax,這個算是前端技術,但是我用的很少,我就照實說了,說我用不多,只知道是異步刷新,后邊又問說知道javascript的一個什么東東來著,沒聽說過,就說不知道,這個記得,一定要誠實,不然撒謊的話,最后吃虧的一定是自己!
又問我用的哪個javascript的庫,我說jquery,然后就沒有下文了~~~在這兒的時候,我差不多在心里確定了,這哥們是做后端的。!我那個囧啊,今天看來出師不利!后端和前端雖然說都是做網站的,但是相差還是太大!在一起就沒什么好聊的。
下來就問我項目經驗了,說看簡歷我做過很多項目,感覺最成功的項目是什么(看過很多面經,貌似百度都會問到這個問題), 我說有三個,然后開始說第一個,第一個是原來和同學做過的一個web方面的分析工具,叫bingker網絡安全工具包,然后他就問我說里面有個殺毒模塊算法是怎么實現的?暈掉,這個太囧了,當時算法的確是我們一起討論的,但是代碼實現我沒有參與,我就給解釋說這個算法是用特征碼對比技術實現的,不過聽起來他似乎也不是很熟悉這個,我說了半天,他只是嗯,也沒有反駁沒有去打斷,這個算是過去了~~~
下來就問說做過的網站里有沒有沒有用非開源程序實現的,我了個去,現在貌似大公司都是用的開源程序啊,雖然我們改動了很多,但是這么一問,只能說沒有了。
然后呢,就沒有然后了,前端方面的東西就都沒有問,他說你還有什么問題嗎?我問他說,那你們對GUI和用戶體驗都是怎么做的呢?他說,這個公司專門有個部門來搞,他們不管的。言外之意,你去了,也就是堆砌代碼,有想法?一邊寫代碼去。所以我前面說的,看了那么多設計方面的還有重構之類的書,都似乎是白看了,或許你去了有想法也不會被實現。恩,這個想下也是正常,公司注重的是商業,并不是你的這個想法是不是夠新穎吧!所以大家看人家的要求的時候,就好好關注下前面提到的各種技術,比如js、css、sql、數據結構之類的,后面說有啥創新精神啊之類的全部忽略好了~~~暫時是這個看法,不知道別的公司怎么樣了~~~
再后來就沒后來了,也沒有電話沒有任何通知,當時有一個和我一起面試的同學,他當天就接到電話通知二面了,據說面試他的是一個搞前端的,丫,起碼有的聊啊!
總的來說還是哥太水了…………囧,好好學習技術吧,以后好好堆砌代碼才是王道!
總結起來,這樣的大公司分工太明確,如果想著去學習各個方面的同學,要好好想清楚了!
面試前的準備
必須有牢固的基礎知識,足夠豐富的項目經歷(就我而言差不多是三個完整項目經歷,時間累計差不多接近一年)。
至少這上面的面試題你能全答出來,說得足夠清楚!
面試有幾點需注意:
面試題目: 根據你的等級和職位的變化,入門級到專家級,廣度和深度都會有所增加。
題目類型:理論知識、算法、項目細節、技術視野、開放性題、工作案例。
細節追問: 可以確保問到你開始不懂或面試官開始不懂為止,這樣可以大大延展題目的區分度和深度,知道你的實際能力。因為這種知識關聯是長時期的學習,臨時抱佛腳絕對是記不住的。
回答問題再棒,面試官(可能是你面試職位的直接領導),會考慮我要不要這個人做我的同事?所以態度很重要、除了能做事,還要會做人。)
資深的前端開發能把absolute和relative弄混,這樣的人不要也罷,因為團隊需要的是:你這個人具有可以依靠的才能。
前端開發所需掌握知識點概要:
HTML&CSS:
對Web標準的理解(結構、表現、行為)、瀏覽器內核、渲染原理、依賴管理、兼容性、CSS語法、層次關系,常用屬性、布局、選擇器、權重、盒模型、Hack、CSS預處理器、
CSS3、Flexbox、CSS Modules、Document flow、BFC、HTML5(離線 & 存儲、Histoy,多媒體、WebGLSVGCanvas);
JavaScript:
數據類型、運算、對象、Function、繼承、閉包、作用域、事件、Prototype、RegExp、JSON、Ajax、DOM、BOM、
內存泄漏、跨域、異步請求、模板引擎、模塊化、Flux、同構、算法、ECMAScript6、Nodejs、HTTP、
其他:
主流MVVM框架(ReactVueAngular)、Hybrid AppReact NativeWeex、TypeScript、RESTFul、WEB安全、前端工程化、依賴管理、性能優化、
重構、團隊協作、可維護、易用性、SEO、UED、前端技術選型、快速學習能力等;
作為一名前端工程師,無論工作年頭長短都應該掌握的知識點:
1、DOM結構 —— 兩個節點之間可能存在哪些關系以及如何在節點之間任意移動。
2、DOM操作 ——如何添加、移除、移動、復制、創建和查找節點等。
3、事件 —— 如何使用事件,以及IE和標準DOM事件模型之間存在的差別。
4、XMLHttpRequest —— 這是什么、怎樣完整地執行一次GET請求、怎樣檢測錯誤。
5、嚴格模式與混雜模式 —— 如何觸發這兩種模式,區分它們有何意義。
6、盒模型 —— 外邊距、內邊距和邊框之間的關系,及IE8以下版本的瀏覽器中的盒模型
7、塊級元素與行內元素 —— 怎么用CSS控制它們、以及如何合理的使用它們
8、浮動元素 ——怎么使用它們、它們有什么問題以及怎么解決這些問題。
9、HTML與XHTML ——二者有什么區別,你覺得應該使用哪一個并說出理由。
10、JSON —— 作用、用途、設計結構。
面試流程:
自我介紹(用最簡單的語言表明自己最大的優勢)
HTML基礎
CSS基礎
JS基礎
你有什么想問的?
就我自己面試經歷來看,各大公司都特別重視原生JS。同時一面中基本不會涉及到框架的問題。
二面問的問題就很深入了,會針對你的項目進行深入剖析,對你簡歷上的技術進行深入追問,看你是否具有真才實干。
【百度實習生web前端開發工程師的面試經歷】相關文章:
web前端實訓總結(通用6篇)05-24
web前端的自我介紹(通用9篇)03-04
web前端學習心得體會范文04-18
web前端應屆生自我介紹(精選7篇)04-30
Web數據挖掘技術探析論文04-07
web實訓總結(精選7篇)04-15
路由器怎么設置web認證04-13