1. 程式人生 > >前端新人的面試經驗

前端新人的面試經驗

怎樣 評價 依賴註入 作者 ans dia 閉包 反轉 res

雙非本科,通信工程,算是轉到IT行業這邊的了。從大二暑期正式開始學習前端,想想已經一年的時間了。期間經歷了很多,從迷惘到清晰,從艱難自學到找到實習,從備戰秋招到找到工作。能經歷的我都經歷過了。來說說那些【前端工作者】的艱辛與歡樂。

開始自學前端

電話面問題不多,但是十分考驗對相關知識熟悉程度,面試官是 P7(不理解這個就去百度吧)

大二暑期留在學校,一邊參加數學建模培訓,一邊自己學習前端的基礎。由於之前學習過一些HTML和JS的基礎,我就直接開始學習jquery了,跟著李炎恢老師的JQuery教程學習,算是入了門。學習了BootStrap框架。

暑期就跟著視頻學習,做了兩個小項目。期間出現問題怎麽辦,能怎麽辦,就各種百度解決,看博客,逛社區。在現在看來,當時就是沒有學會走就想著跑。自己之後在JS基礎這裏吃了很多虧。

跟著實驗室開始做項目

實驗室老師讓做一個物聯網平臺,於是我們就湊吧湊吧,成了一個team,有前端,後臺,移動端,嵌入式。

所以建議之後的學弟學妹,如果你們學校有實驗室,去一去,自己潛心學習,加上良好的氛圍,進步會很大的。這個項目就讓我真正開始學習到前後臺交互,數據格式處理,瀏覽器渲染和兼容性問題的處理。

春招(實習)

寒假荒廢了一個寒假,沒有想到,剛開學的開始,就是各大廠開始招聘暑期實習了,當時簡歷也沒做,知識也沒有復習,整個就是懵逼狀態。然後隨即開始趕超。

我就記得我那段時間就是待在實驗室看各種前端知識總結,然後不停的改簡歷,最起碼改了有3版。做筆試,去面試。3月4月這兩個月也時春招的黃金時期,我那段時間面了CVTE,騰訊,好未來,融360,還有一些小公司。

面經如下:

CVTE:

  • 簡述一下項目

  • js閉包及解決辦法

  • js原型,原型鏈,繼承

  • angularJS數據綁定的原理

  • 手寫代碼 字符串反轉

  • CSS中content如何自適應

  • 然後就讓我問他問題,我問了我這場面試表現怎麽樣,還有哪些知識點掌握的不好。 然後讓我好好看js權威指南和js高程

騰訊:

  • 自我介紹

  • 給string寫一個函數,如何鏈接上去

  • bind函數實現的原理(用函數寫出來)

  • 如何判斷括號匹配(寫一個函數)

  • webSocket,TCP,HTTP,websocket的首部信息有哪些,解釋一下

  • socket與HTTP的區別

  • AngularJs數據綁定的原理

  • Vue路由使用的是什麽

  • NodeJS中Express框架使用哪些中間件

  • MVC框架與MVVM框架

  • 解釋一下單頁面應用程序

  • 然後問我有什麽問題,我問她們部門用什麽框架,她說是ReactJS,server用的是KOA。然後就開始說React多麽好

好未來

(一面)

  • 基本就是基礎知識吧,有點想不起來了。

  • 還有直接上手敲代碼,我寫出來了,說我寫的不規範,最好用函數封裝起來

(二面)

  • 敲了兩段代碼,基本都寫出來了

  • 我現在回想起來,好像知道我掛在哪了,當時問我你喜歡看什麽小說,印象最深的是哪本,講了什麽。於是我沒多想就說了松本清張的《蒼白的軌跡:箱根溫泉殺人手稿》,講述的是兇手如何設計一個漫長的復仇計劃,不急不緩,絲絲入扣,在歲月的配合下,將棋局中的人,一個接一個地抹殺。就在我說的正入迷,就被面試官打斷了。然後,就沒有然後了

融360

(一面)

  • 簡述一下你的項目

  • 彈性盒模型

  • H5+C3

  • transform

  • transition

  • animate

(二面):

  • 移動端開發

  • 移動前端與PC前端的區別

  • 移動端開發的適配問題怎麽解決

  • 好的,你移動端不怎麽會,我們也就不浪費時間了。EXM???

終於,感覺找不到實習了,然後就開始自己學習,又跟著實驗室做了一個項目,還是平臺開發。不過拿著去參加互聯網+大賽了。進入孵化階段了。

都是放暑假了,然而我並沒有放棄找實習,對,就是這麽軸。然後,就找到了。

綠盟科技

(一面)

(就是我進去實習之後的導師)

  • canvas具體實現的步驟,如何繪制一個圓,有哪些參數
    來,你說說你的這個平臺怎麽實現的

  • 你會AngularJs,那你說說AngularJsDI

  • 說說CSS3的新特性,動畫要怎麽實現

  • 會使用git嗎

(二面)

(部門老大面的,15mins左右)

  • 你說說你使用git的情況

  • 你能實習多久

  • 對於項目開發的流程了解嗎

  • 家在哪

  • 會使用AngularJs吧

然後,就過了,周一報道

實習的收獲

學會團隊合作和協作開發,對於前後端數據交互的幾種方式那可是熟悉的不得了,因為出過好幾次問題,都實在不好意思再去找後臺大佬問了。

我實習的時候,突然發現的一個好習慣,就是我每天記工作筆記,每天遇到什麽問題,怎麽解決的,有沒有更好的方法。

奈何,公司沒有實習生轉正,再走校招流程呢,我又沒過。

ε=(′ο`*)))唉,心塞。然後,直接把活一交接,辭職走人了。回到學校全面備戰校招。

秋招【biubiubiu】

秋招呀,就這麽匆匆忙忙的開始了,趕緊拾起自己遺忘的知識,翻開筆記,修改簡歷,狂刷題,投簡歷,做筆試,去面試。

俗話說,金九銀十,9月份的時候,面試倒是不少,但是offer卻沒有,這一度讓我開始懷疑人生,我TM好歹也是有項目經驗,有實習經驗的人呢,怎會這麽慘。

於是,我反思了一下,前面都是大廠,對於基礎知識和算法要求高,我這歷史遺留問題估計是沒有得到解決。於是,國慶節期間狂補算法,狂刷JS基礎知識。


然後,10月基本就是另一批公司了,算法竟不怎麽問了。WTF???得虧我身經百戰,有項目經驗和實習經驗比較那得出手,我實習的時候還是做得平臺開發,難,是真的難。就公司那個平臺,看了好久,才明白整個業務邏輯。


於是,10月份終於收獲幾個offer。期間還拒了一家本地的,真是坑呀。像我這樣向往自由的人,是怎麽都想留在本地了。20多年了,沒出去過,所以,怎麽地都想去外面。

說說秋招面試吧

好未來

(一面)

  • 來,說說你的項目

  • 談一下你對前端工程師的認識

  • 算法會嗎?寫一個你熟悉的排序

  • 你實習都學到了什麽

  • 你家在哪,想去北京嗎?

  • ps:大概只能想起這麽些了,然後我就被掛了,WTF???

東方財富

(一面)

  • 兩個棧實現一個隊列(三種方式)

  • 將已排好序的數組打亂,越亂越好(多種方法)

  • 你數學建模做的是什麽,詳細講一下

  • 數據庫會嗎?

  • 瀏覽器兼容性的處理

美團

(一面)

  • http與https的區別是什麽

  • 說一說HTTP的狀態碼

  • 寫一個統計字符串中每個字符出現的次數

  • 寫一個冒泡排序

  • 實習的時候做了什麽

  • 你使用過AngularJs,你感覺它的優點和缺點是什麽

  • ps:我也不知道為什麽會掛,感覺都答上來了

綠盟

(一面)

  • 你在這實習過,那你說說你實習都做了什麽

  • 實習遇到了什麽問題,怎麽解決的

  • 你了解AngularJs指令操作的使用嗎?

  • AngularJs依賴註入的原理是什麽

  • flex布局實現兩邊固定,中間自適應怎麽實現

  • websocket

  • http的請求方法

  • RESTful這種架構模式了解嗎

貓眼

(一面)

  • jquery $()有哪些使用方法

  • HTML5了解哪些特性

  • CSS3animations和transform的區別

  • AngularJs如何實現依賴註入

  • HTTP用於cookie的字段的設置

  • 瀏覽器緩存

  • websocket具體是怎麽使用的

  • 來,這還有幾個編程題,你寫一下

推想科技

(一面)


都不用說問題了,就是網上的那些js變態題,好多,一個一個問
詳見我的一篇blog 44個 Javascript 變態題解析 (上\下)

東方國信

一面,電話面

  • 自我介紹

  • 說說你的項目

  • HTTP狀態碼(我又扯到了瀏覽器緩存,一通說,然後他就說我基礎很好)

  • flex布局

  • cookie和session的區別

  • 說一說HTML5+CSS3新特性

  • 談談事件機制

二面,視頻面

  • HTML5+CSS3新特性

  • JS淺copy與深copy

  • TCP與UDP

  • 定位

  • 閉包

  • JQuery原理


    面完就告訴我過了,然後叫了他們老大,談了薪資福利什麽的,我說我考慮考慮。(最後拒了)

蘇寧

(一面)

  • 談談項目

  • websocket

  • 寫一下代碼,實現將一段文字查到頁面最前面

  • 瀏覽器工作原理

  • 瀏覽器緩存機制

  • CDN了解嗎

  • 移動端開發會嗎

  • 你了解哪些性能優化的方法

  • ps:大家都知道蘇寧的評價吧,當時我是技術面過了的,至於為什麽沒有收到通過短信,我也不知道。其實就算我過了,也不會去的

西拓電氣(1,2,3,4,5面)offer

一面:

  • 項目挨個講一下

  • 實習做了什麽,學會了什麽,出現過什麽問題,怎麽解決的

  • 瀏覽器兼容性的處理

  • 比較一下各大框架的優缺點

  • 對於新技術學習的熱情

二面:

  • git使用熟悉嗎?

  • 實習時遇到的最大的難題是什麽,怎麽解決的?

  • 做項目的時候,遇到的難題是什麽,怎麽解決的

  • 你如果過來,會負責平臺開發,能挑戰嗎?

  • 能接受加班嗎?

三面(hr面)

  • 我們公司是做什麽的

  • 你能接受的薪資是多少

  • 你家在哪,父母做什麽的

  • 然後帶著我在公司休閑區參觀了一下

四面(副總面)

  • 我們公司是做什麽的

  • 你實習的公司好在哪裏,你感受到了什麽樣的氛圍

  • 如果你到了我們公司,你願意把你在實習公司學到的技術氛圍

    在這裏營造嗎?怎麽去做

  • 你的職業規劃呢?

  • 如果公司有待改善的地方,你怎麽提出來

五面(總裁面)

  • 我們公司是做什麽的,

  • 然後我就扯了一下新技術現在的發展,如果我入職,我將會從那幾個方面進行技術研發

途家

(一面)

  • 很隨意,先做筆試題
    一個算法題,Dijkstra算法

  • ajax

  • 服務器端開發了解嗎?

  • HTTP請求過程

  • 實習遇到的問題,怎麽解決的,學到了什麽

融360

(一面)


無力吐槽,視頻面,面了一個半小時,面試官拿了一份題,一個一個的往下問
好多是布局問題
還有編寫個函數
都是網上那種面經,實在回憶不起來了

teambition

(一面)

算是我面的比較有水準的一家公司

  • 項目簡介一下

  • AngularJS的依賴註入

  • 前端安全

  • JS的執行機制

  • AngularJS的工作原理,服務的幾種方法

  • NodeJs了解多少

  • AngularJs與Vue有什麽區別,每個的側重點在哪裏

  • ps:其實全程都是在技術討論,因為我使用AngularJs比較多,所以就談了很多AngularJs的技術,讓我好好看一看面向契約編程,還有JS需要往深挖掘,不能停留在表面

微盟(一,二面+HR)offer

一面:

  • 數組的方法

  • 創建對象的幾種方法

  • 如何實現繼承

  • websocket

  • HTTP的狀態碼,請求方法

  • 會微信小程序開發嗎

  • 移動端開發了解嗎

  • 問了兩個筆試題

二面:

  • 項目簡述一下

  • 實習遇到的問題,怎麽解決的

  • 說說數組有哪些方法

  • git使用

  • 事件機制

  • 瀏覽器存儲

hr面:

  • 去過上海嗎?

  • 說一下你最驕傲的事情

  • 在學校都有什麽成就

  • 你數學建模是什麽做的

  • ps:hr說感覺我的思維很活躍,很有深度

然後,我就結束秋招了,不管怎樣,也算是找到一份比較滿意的工作。


浩浩蕩蕩的這幾個月,經歷了很多。也看懂了很多事情,覺得吧,人嘛,還是要遵從自己的內心去活著,因為你永遠不知道下一刻會有多糟糕。也就是活在當下,過好每一天。


學習技術,你就踏踏實實的,基礎是關鍵。


對於前端這方面的學習,我也算是身經百戰了,雖不能從成功的方面給予建議,但能從我走的彎路告訴你們,怎麽避免走一些愚蠢的彎路,因為彎路都是要走的,不能一帆風順的。


基礎很關鍵,如今三百六十行,行行轉IT,怎麽拼得過千軍萬馬呢,當然是牢固的基礎知識,如今我就在狂補計算機操作系統,網絡知識,數據結構與算法。


前端基礎,HTML+CSS+JavaScript
基礎知識見這篇博客前端面試題之匯總

HTML&CSS:


對Web標準的理解、瀏覽器內核差異、兼容性、hack、CSS基本功:布局、盒子模型、選擇器優先級、
HTML5、CSS3、Flexbox

JavaScript:


數據類型、運算、對象、Function、繼承、閉包、作用域、原型鏈、事件、RegExp、JSON、Ajax、
DOM、BOM、內存泄漏、跨域、異步裝載、模板引擎、前端MVC、路由、模塊化、Canvas、ECMAScript 6、Nodejs

其他:
移動端、響應式、自動化構建、HTTP、離線存儲、WEB安全、優化、重構、團隊協作、可維護、易用性、SEO、UED、架構、職業生涯、快速學習能力

前端摩爾定律不造大家聽過沒有,前端每18個月難度增加一倍。


對,是的,據Angular官方說法,每半年新出一個版本,是的,我1.0還沒有學會,5已經出來了,據說Vue3.0也出來了。很棒棒哦!

少年,前端路漫漫,如果想好要走,那就加油吧!

前端新人的面試經驗