2017web前端面試總結
從今年3月份開始面試筆試找實習找校招到現在也半年多了,拿到了不少offer,也有了自己的一點心得體會,這里寫出來分享一下,拙見勿噴。
注意一下,以下的觀點僅代表我個人的體會不代表任何人任何組織和任何公司。
關於流程
一般的實習&校招招聘大體有這么一個流程:(這里我個人都是走的官網投遞的渠道,沒有經歷過宣講會的環節,這一部分我沒啥經驗)
筆試
筆試作為招聘的第一個環節,一般考察的都是專業基礎知識,這里會着重考察你在學校的計算機相關基礎,也就是很多人會發現,我明明考的是前端的卷子為啥前端的知識點考的這么少,而且有時候也會發現,前端的卷子考的沒有前端的知識點。
筆試也是有種類之分的,像我參加的360和阿里的校招,筆試都是分為能力測試和技術筆試的,這里的能力測試也就是我們以前經常無視的邏輯思維題或者是分析題之類的;而技術筆試呢,顧名思義就是考察計算機基礎和專業基礎了,這里不廢話了(提一點:可能你會遇到有的筆試編程題選不了js,這里就自己斟酌了)。
關於基礎知識,這里就是計算機網絡、操作系統、數據結構、數據庫等。
關於筆試的建議就是多刷題(超級學霸請無視我),這里推薦幾個網站:牛客網,leetCode,賽碼網。
注意:像牛客和賽碼這里要注意一下,很多公司的筆試都是用的這兩個平台,建議多熟悉下這里的編程題的在線環境。
一面
恭喜你,如果如果筆試過了那你就邁過了一個大坎,要知道很多同學都是連面試的資格都沒有的。到了面試階段,考察的大多是專業知識了,當然也不排除考計算機基礎知識的。
一面這里考察的知識點比較基礎,這里你的面試官會分析你的技術基礎能力扎不扎實,你這個人的性格如何如何然后匯報個組里的老大決定你是否有機會參加下一輪的面試。
注意我提到的性格,大家都不願意和一個怪異的人一起工作,一定要有熱情樂觀積極上進,這點真的很重要!
這里我的建議就是,基礎我就不用說了一定要很扎實,面試官一下子就能看出你到底是會不會了,不要不懂裝懂。但基本上一面要是被問住太多了的話那確實很不樂觀了,但是也不排除一種情況,你的基礎非常的扎實,面試官覺得這些基礎知識點問了也是浪費時間於是開始深入問你,這個時候要注意,確實會聞到很多你不會的知識點,不要放棄盡可能的嘗試,但也不要過於自大,面試官希望看到的是你的潛能和面對未知問題的解決能力。
二面
恭喜你通過了一面,你的基礎還不錯,接下來你將遇到的是組里的高T或者是業務方向的老大了(和大牛面對面)。
二面也會考察基礎知識,這里基本都是匆匆過一遍了。注意了我可以很負責任的說,二面你會遇到很多的困難,二面會考察你的項目,面試官會根據你簡歷上的項目經歷找一些他感興趣的來問你,簡要的說並且說重點,從使用技術棧到項目架構的設計到技術難點的實現,分點說。
面試官也是人,他也會好奇一些神奇的項目是怎么實現的,所以我的建議也就是平時多做一些有水平的項目,不要把todolist、圖書館管理系統這種爛大街的項目寫在自己的簡歷上。
這里透露一下,你的二面面試官,很有可能是你未來的leader,它們問的問題很多都是平時遇到的技術難點啊,自己踩過的小坑啊啥的,有心的同學自己默默記住這些問題回去多看看,對自己的提升會有很大的幫助(畢竟你能網上搜到的問題都是些爛大街的問題,這時候大牛遇到過的問題和你探討這種機會不用說都知道很難得吧)。
這里還要廢話一下,不要遇到難題就放棄說不會,多嘗試一下,還是那句話,面試官想看到你對未知問題的解決能力,我一般都是先說出我的想法把我的實現方法說一遍,這時候可能會遇到直接懟對了的情況那么只能說恭喜啦,但是大多數情況下你的解決辦法都不是最優的,這時候面試官會一點點把你往正確的方向引導,這一探索的過程才是面試官看出你這個人的軟硬實力的關鍵。
三面
恭喜你到最后一步了,這里是HR或者技術經理面啦,這里表現最真實的你就好,和hr或者老大聊聊天,說說自己的基本情況啥的,這里就不多說了。
注意:其實還是要注意一點,很多同學都說我三面都過了為啥最后還是被拒了呢,這里其實不是你的第三面被拒了(當然你如果人品有問題啥的我就不多說了),這里據我所知有這么幾種情況:
- 雖然真的面的很不錯,但是公司的hc有限,只能說很遺憾;
- 還是hc有限這個點,但是這家公司是根據筆試+一面+二面+三面的綜合評分決定的,只能說你很厲害但是有比你更厲害的人;
- 其實你的二面一面就不怎么樣了只是說技術面試官不忍心拒絕你,往往hr更懂得拒絕別人;
總結
這里就簡單總結一下吧:
- 自我介紹言簡意賅,體現自己的個性和亮點,會什么着重說一下;
- 基礎知識(計算機基礎 + 專業技能基礎);
- 對待問題的解決能力;
- 不要表現自己的負面情緒,積極樂觀;
- 溝通技巧;
注意:你的暑期實習經歷對你的校招面試很有用,一定要爭取找個暑期實習。我當時面暑期實習時候也是沒有啥經驗處處碰壁,后來實習了幾個月后校招基本上是橫掃,面一家過一家。
(web前端學習交流群:328058344 禁止閑聊,非喜勿進!)
關於技術知識點
這里就羅列一下我之前遇到的知識點,我的其他文章也寫到過詳情可以去看看(有些公司面試完可能忘了就沒寫)。博主上一次面試距今也有幾個月了,忘的差不多了,這里就羅列一點我突然想到的哈,請諒解。
html + css基礎
- 基本的布局(中間自適應旁邊固定啥的)的幾種實現方法;
- 垂直居中的幾種實現方法;
- 盒模型;
- position;
- 行內元素和塊元素;
- BFC(塊級格式化上線文,和浮動一起考);
- animation;
- 偽元素偽類;
- less、sass、stylus這種預處理器;
- ......
js基礎
- 原型鏈;
- 閉包;
- 類和繼承(es5實現方法 + es6實現方法);
- let、const、var;
- promise;
- 異步處理方法;
- 寫一個方法遍歷所有文檔樹所有節點(考察遞歸);
- cookie和webstorege;
- jsonp和跨域;
- sort排序相關(注意ascll這個坑)
- 數組和對象的深淺拷貝;
- String + Array的一些基本操作;
- 寫一個數組去重的方法;
- 冒泡和捕獲;
- 事件代理;
- this相關(注意箭頭函數的this指向問題);
- call、apply、bind;
- 變量提升;
- 高階函數;
- 動畫;
- setTimeout、setInterval和requestAnimationFrame;
- 模塊化開發;
- 引起內存泄漏的原因;
- ajax;
- map、filter、reduce相關;
- Map和Set;
- 移動端開發相關;
- ......
框架和工具相關
- vue數據綁定原理;
- vue父子組件和兄弟組件的通信問題;
- vuex的原理;
- vuex的action和mutation的異步操作和同步操作問題;
- vue的事件監聽;
- vue-router獲取自定義參數;
- vue-router的go相關;
- vue組件設計相關;
- 模塊化的工具;
- webpack打包優化;
- 設計一個自己的打包工具需要設計哪些主要功能;
- babel相關;
- mvvm的好處;
- jquery的一些基本用法;
- lodash相關;
- vue和react的對比;
- vue和jquery的對比;
- ......
技術拓展
- 設計模式相關(單例、發布訂閱等);
- 瀏覽器渲染過程;
- 性能優化相關(這個點很大,設計很多方面,不要自以為優化就是網上經常看到的那一套);
- 設計一個模版引擎;
- 設計一個打包工具;
- 設計一個mvvm框架需要注意的case;
- 源碼閱讀相關;
- ......
項目相關
這里說幾個我面試經常問到的項目。 - 仿餓了么購物車(本地購物車和全局購物車和本地存儲,不是網上一艘就能搜到的哪些哦);
- Chrome插件開發lettalk;
- rn開發的一個簡單的社交app;
- 仿vue mvvm框架(閱讀vue源碼時候仿的);
- 仿Jquery類庫(閱讀jquery源碼時候仿的);
總結
我能想到的也就這么多了,還是差很多東西的,請大家諒解。希望大家都能拿到自己滿意的offer。