向那些年咱們經歷的一面N面致敬

寫在前面的一點我的感覺php

忐忑了長達一個月的心在這拿到騰訊sng的offer之際終於平靜下來,趁如今感受和記憶尚未淡去,記錄下面試一路經歷的點滴。css

感受本身也算是個挺幸運的人吧,像是一切安排好了通常。高中經過學校的第二興趣培養接觸到ps,接觸了編程。雖然高考踩了個坑,但也被補錄了個二本院校的一本專業。挺巧合的,也算是個偏技術型的專業。其實當時補錄的時候根本不知道這專業是啥哈(信息管理與信息系統)。可是名字那麼長仍是讓人感受比較霸氣的。html

嗯,真正學習下來發現是個神奇的專業=-=學科從java到會計,從數據庫到國際貿易。文理商管各有涉獵。但基本都是淺嘗輒止,沒有一門是能讓人學到精那種。因而也迷茫過,當時正處於js的初學階段。那時候寫網頁動效所有都是從網上直接下代碼。那冗長的沒有註釋的代碼特別坑啊有木有。發現我扯得有點遠了,那麼回到面試這個話題上來。前端


從內推處處女面

其實一開始就奔着騰訊UI開發(前端的重構方向)去的。我的興趣吧,由於是女生,因此喜歡偏向展現層面的東西而沒有那麼接近底層。大概二月底的時候吧,就收到一封郵件說「同窗,你已被伯樂推薦提早進入2016校園招聘……巴拉巴拉的」特別忽然,當時還不知道是哪一個騰訊師兄內推的。懷着感激和緊張的心情就去填了相關資料。html5

以後3月份師兄又不厭其煩地幫我各類內推騰訊,wxg,sng的。大神師兄多真是棒棒的^^java

然而——
騰訊這邊的音訊就像是斷了同樣,小喇叭和小電話一直沒有響起過。
卻是因爲項目組導師的關係,讓我經歷了阿里巴巴的一面和二面。jquery

阿里一面 50min

3月初,很忽然地接到杭州的電話,果真是阿里巴巴的。有些意外吧,由於進阿里真的沒什麼把握,不得不認可偏底層東西真的學得不行,但既然機會來了,那麼就讓本身漲漲經驗和見識吧。
一面問的內容很是的泛。但基本都是點到即止。因此這也要求咱們瞭解的前端相關知識廣度要足夠大。不要僅僅侷限於html+css+js這幾個領域。css3

首先是最基本的問題啦:自我介紹。哈哈=-=當時我好緊張,聲音都在抖,像在背書同樣,把本身的一些相關信息說了一遍。感受過多地強調了本身的項目經歷而沒有突出本身的個性。
第二個問題:爲何選擇前端呀。好久以前,一個師兄也問過我一樣的問題,當時說的是由於不喜歡後臺。雖然是實話,但這是面試呀,固然要說點有水平的。我說感受前端開發能將射擊之美和邏輯之美結合在一塊兒,前端開發人員能運用自身的審美和邏輯思惟把網站前端完美地構建出來,是一項能切實被感知和體驗的職業。
接下來問了項目,看了什麼書。其實看的書很多,可是好像一下什麼書名都想不起來似的。只說了,web標準設計,css禪意花園,圖解css3和js高級程序設計。
接下來就是html,css,js這三大方向的基本問題。期間也穿插一些數據結構和數據庫的問題。都不算難,好比數據結構的排序,時間複雜度的問題。數據庫的話就只問了會用哪一種。web

html基礎:常見兼容問題。回答分了三個層面,各列舉了html,css,js上的兼容性。
爲何要有doctype聲明。doctype有幾種。html5的與之前版本有什麼不一樣(html5不基於三顧茅廬//sgml =-=了,因此不須要引用dtd哈)。面試

css基礎:面試官好像最後才問的css相關問題。聽到的時候鬆一口氣,總算到本身比較熟悉的啦,哈哈。position有幾個值,相互有什麼區別。這題說了sticky也許會加分哦。貌似沒其餘問題啦。

js基礎:nullunderfined區別。null==undefined返回什麼?我說true。又問爲何?我說存在自動轉換(不對哈)

應該是underfined是派生至null的,因此underfined==null,要比較相等性以前,不能將nullunderfined轉換成其餘任何值。

他說既然說到自動轉換,那麼0=='0'返回啥?固然仍是true啦。數值跟字符串比較會先將字符串轉換爲數值。
有沒有看過jquery源碼?看過一點。能說說原生「阿賈克斯」是怎麼實現的嗎?balabala,狂說一通。幸虧是電面,要我直接寫的話還不必定寫得出~
這裏作個總結:建立XMLHttpRequest對象(處理兼容問題)>建立一個新的請求,即調用open方法,指定請求的類型,地址>設置相應HTTP請求狀態變化的函數>發送HTTP請求>獲取異步調用返回的數據>使用js操做dom進行局部刷新。

getpost安全性?爲何?如何實現跨域。騰訊也問了這個問題,可是我兩次都漏了CORS QAQ。jsonp原理。我說主要是經過利用src這一屬性能夠引用非同域資源這一特色實現的。而後問jsonp用的是get仍是post。二分之一的機率然而我仍是答錯了。=-=總是想着post安全性更好,就說post。可是面試官引導我而後把我糾正過來啦~

require.js和sea.js的區別。

HTTP狀態碼:200204的區別。對不起不知道。301302的區別。對不起不知道。有點偏啦。
又問我304,什麼狀況下會出現304的狀況。
我說這是告訴瀏覽器從緩存中獲取資源。

這裏順帶提一下哦,from cache也是從緩存中獲取資源。可是304的狀況須要先將本地資源的If-Modified-SinceIf-None-Match跟服務器返回的DateETag進行比較。若是相同才用瀏覽器緩存資源。而from cache通常與expirse相關啦。也就是說304這種狀況仍是會向服務器發一次請求的。那麼什麼設置了什麼纔能有304這種狀況出現呢?是cache-control:no-cache。而cache-control:no-store是不管在任何狀況下都不進行緩存。

當時感受這道題答得還行~

其餘:當你在瀏覽器地址欄輸入www.taobao.com到瀏覽器展現出一個完整的頁面間發生了什麼?哈哈哈,好像各面經寶典上都有哦,這問題。

最後問了問前端新技術。大概50分鐘,這樣就結束了我不太愉快的處女面~面試完晚上就把這些記錄下來啦~


阿里二面 25min

等了很久呀,一個星期。我第六感可能比較強,也由於感受一面每一個問題都能答到,應該沒有被刷。因而在一個班會課上就接到了二面電話。

感受面試官好強(後來經過聊了下知道他好像是支付寶部門噠)。
//並且聲音超!級!好!聽!也許是蘇浙那帶的本地人,感受那邊的普通話說得好標準啊。並且好親切呀。稱呼我是直接去掉姓稱呼名字的^^。
一上來就問我,以爲你哪些方面沒有答好。後來纔想到這是主動讓面試者把不足點爆出,好找缺口趁虛而入,把你幹掉~

哈哈,然而我當時就傻傻地說了。說了require.js和sea.js的區別沒說好。可是再說一遍感受也沒說好啊~他還特地地用他的意思總結了一遍。而後就提到了MVC=-=真心不應說這個,由於本身對它的瞭解程度僅在於會用而已。深一層就徹底不會了。因此由這個衍生的問題果真就答不出來了。還問了二叉樹原理。啊~對不起,這個真心不會。

其餘問題就較輕鬆啦,團隊合做呀,看大家的配合程度。主要經過什麼途徑學習啊,看你對知識的攝取能力強度。喜歡什麼學科,我說java=-=。其實僅限於第一次敲出hello world的興奮而已。你認爲你非編程類學科學得比較好的是什麼?我說計算機網絡。其實他想聽的是數據結構。

最後你有什麼問題想問我。。。由於感受本身表現特差,就問面試官您以爲我表現咋樣=-=如今回想起來以爲本身傻傻的,不該該問這些有關我的評價的問題,不只讓面試官很差回答也讓他感受你的關注點所在方向沒什麼養分。果真,他說:這個…很差回答~ 應該是笑着說的,語氣溫柔。可能看我是個鋁孩子,哈哈。而後我又補充了個大家日常都是使用kissy這個框架咩?他說只有淘寶用哦~

這樣就結束了還算愉快的二面^^而後個人神奇的第六感就告訴我二面掛啦=-=因此噢,二面必定不能爲了避免失逼格而說一些本身不太深刻的,可是比較高端的知識點。由於怎麼說面試官經驗確定比你豐富,你能說的那些別人必定懂得比你多。這樣他會以爲你連只知其一;不知其二都不算,只是會搬磚而已。相反,若是想說點高端的,必定要事先深刻了解而且有必定的實踐,這樣就不但不會被問倒,也能獲得面試官的承認,得到必定加分哦。


騰訊UI開發崗面

沒記錯的話是3月21號,上完課回來發現騰訊ui開發的面試官(如今應該是我組長了^^)添加了我。對=-=直接加QQ的。當時挺開心的,終於等來騰訊的消息了~簡單問好後我問是否是面試,面試官說不是,就是了解下,叫我別緊張。沒遇過這種狀況,阿里都是上來就直接面的…
而後就跟面試官在QQ上用文字聊了聊。我記得是從下午4點聊到晚上9點,固然有期間雙方交流和回覆不太及時的緣由在。

挺特殊的一種方式,不過也像面試官說的,只是簡單瞭解,還不能算是面試。這種文字考查的方式仍是挺容易讓面試者抓空子的。不過我也沒有上網查問題的答案=-=由於那天正好電腦壞了,又想着及時回覆和儘量表現得真實點吧。

記得第一個問題是:爲何須要w3c標準。我說爲了規範瀏覽器對網頁的渲染。特別簡潔。而後面試官就引導我,若是沒有會怎樣。我說到兼容問題那方面了——詳細說就是每款瀏覽器有本身的標準,因此若是開發者和瀏覽器廠商若是不遵循同一個規範的話會有不少意想不到的問題出現。如今以爲答得不太全面,應該回到何爲w3c標準進而將答案引伸。

w3c標準包含了3方面:(x)html、css、ecmascript+dom。目的簡單地說是爲了使網站的受衆在不一樣瀏覽器下都能得到網站信息,獲得相同的,儘量好的用戶體驗。而從開發者角度說,是爲了節約開發成本,提升效率。瀏覽器廠商角度:更好地盈利。

貌似只有這一個特別基礎的問題,而後大部分的都集中在移動web開發上了。(也多是我簡歷上寫了有web app開發經歷的緣故)映像比較深的問題是問我zepto和jq的區別,由於看我web app用的js框架都是jq,而我面的那個部門移動端js框架用的是zepto。

其實我以爲Zepto不怎麼好用,由於不少模塊的沒有包含在它的核心模塊裏面(好比動畫,touch模塊),這麼設計的目的以前據說是由於Zepto某些模塊含有沒解決的bug。(好比點透)固然還有一個緣由是減少體積。

我就說Zepto感受不少事件處理方面沒有jq封裝的那麼好,挺多事件不支持的=-=固然漏了最重要的那個——它體積小。其實當時使用Zepto只是爲了用tap而已(解決傳統click 300ms延遲的問題,但產生了點透的問題),可是發現核心Zepto這麼事件多不支持,jq本身用得又比較熟,就用回jq了。而後我說針對tap這個,我用了fastclick。面試官說,這麼說移動端用jq+fastclick而不用Zepto

當時就有點慌了,說實話挺怕面試官下這樣的總結。由於本身的經驗淺薄,僅僅只是某個項目用的方式固然不具有專業性,不能表明業界的使用方向。因此我趕忙說,固然不是,只是我我的對jq的熟練程度比Zepto好,其實如今回想起來,仍是由於本身沒答到最重要的那點。//這裏補充下,其實以前有想過用淘寶的kissy mini,但仍是因爲不熟悉放棄了使用。

還有就是問圖片格式(若是想說webpapng最好要有必定的實踐和研究),性能優化(這個後來面試盡然沒再問到!吃驚。),3d動畫(說了webgl有加分哦),移動端ui框架。還有的就是針對我作過的項目問的了。聊完的感受是,我的移動端的項目經驗仍是比較缺少的~

又是一輪漫長的等待……由於面試官都說了不是面試=-=又很差問他如今是啥狀況。因此就只能各類猜。快一個星期了,忍不住問了師兄,他正好跟面試官同組哈哈。後來告訴我,如今加我有N個候選人,面試官說近期還會找我聊聊。^^hha,感受豁然開朗。貌似幾十分鐘後,面試官就約了我次日視頻一面…
圖片描述


視頻一面 1h

仍是那句話一面問的內容很是的泛。但基本都是點到即止。

比較基礎的是盒子模型,怎麼去改變盒子模型。ie怪異模式。position有哪些值(阿里也問了)display有哪些值,css單位。自動繼承的css屬性。link@import引用樣式表的區別。這些題目怎麼說呢看似基礎其實暗藏殺機=-=就是由於問題太過簡單基礎,而咱們日常的關注點也比較表面,沒有深刻地去研究這些基礎的東西的由來,也沒有去了解那些不怎麼經常使用的css屬性值。因此當面試官往較偏的地方引導你,你就極可能答不上來了。我就是這樣…

好比問了,positionstickyabsolute的區別,我就不知道了。也是缺少實踐的緣由。不過單位那個感受還行,由於提到了vwvh這兩個單位uc下不支持的問題(固然這個是由於實踐過)。html5的新標籤,這個沒答全。新增表單屬性。如何控制一個typetext的文本框只能輸入數字,除了使用js。我說,爲啥不用typenumber或者tel,面試官說還會有其餘問題。噢,而後我就在思考。。。略久,他就說知道可使用pattern寫正則吧~當時恍然,也懵逼了,由於我……不會……正則。不是說徹底不會,但忘了不少。也果真寫錯了。

這裏是後來查到的number tel不適用的緣由和使用pattern解決的辦法

偏移動端的問題有好比如何開啓硬件加速。微信瀏覽器內核,我說我知道手Q是X5…那微信也是吧。面試官說恩,但它又是基於什麼的呢?我說是基於webkit二次開發的。又問ip6,ip6+的dpr,nexus5的dpr,nexus5我忘了。後來有補充了針對ipone的web app定義meta解決方案的相關問題。這些都能回答到啦^^

當面試官問我js問題時有點驚訝,由於面經上說重構不問js的呀=-=不過,還有點鬆口氣的感受,前面html,css的問題一問偏我回答得就比較吃力了,因此問問js也是好事~一開始果真特基礎,好比js數據類型,啥是閉包,如何跨域,jq deferreds特性。但仍是慢慢深刻了,好比硬件傳感器api,RequestAnimationFrame

還有的就是狀態碼和如何獲取前端知識的問題了。

一面的問題是難易穿插,不是按部就班的,而且也不會一直集中在某個領域問問題。最後的就是你有啥問題問我,吸收了阿里教訓就因此問了點有深度的問題啦~。//後來跟師兄聊的時候,他又告訴我一個小竅門。

若是一二面是同一個面試官,記得把一面他問過的你不懂的內容回去實踐一遍,而後發現新的問題,在二面時反問他~這樣面試官能知道你有針對上一次的面試經歷去反思,而且轉化爲行動力

結束視頻聊天時顯示時長有1小時幾分鐘,後來我又問了問面試官若是經過啥時候有消息,他說這幾天。這樣又進入了等待。

一面雖然有些偏難或者偏門的知識點也能答道,但仍是暴露出本身基礎不夠紮實的弊端。說實話我也不是特別有底,但第六感告訴我還有下一輪。


視頻二面 17min

一面是週四,週二中午的時候收到消息說下午視頻複試。此次沒有提早一天通知,可能面試官也比較忙吧。因此我準備的時間也比較短了。匆匆地吃了午飯又抓緊時間看了看本身還不太熟悉的知識點。

跟一面同樣,也是下午4點時面試開始。此次是團隊的leader面,挺親切噠~其實幾回下來感受面試官都很nice,壓根不會讓你感受到有壓力。

問了我作過項目的有什麼亮點,有沒有寫過插件,也問了閉包,閉包使用的場景,比較傾向於前端表現層開發仍是邏輯層,想要深刻學習的面相對象語言是什麼。開放性問題,較考察面試者的邏輯思惟

也問了我有沒有本身寫過php,jsp。有沒有開源項目=-=我一聽感受很差,先後端對接沒問題,但寫代碼我不太會啊。jsp雖然寫過幾個頁面,但都是小打小鬧的。因此就只能老實地說——沒有:(
以後就問我有沒有什麼問題,我問在騰訊,對於ui開發人員去學習設計或者後臺相關知識是持着一種鼓勵的態度嗎?仍是說leader更喜歡咱們精通html+css。面試官說,問題很好^^而後也特別仔細地回答了我。簡單地說是持鼓勵的態度的,更傾向開發人員往全棧發展。面試就這樣結束了,面試官說咱們會在今天內給你答覆的~以後就愉快地說拜拜了。

面完感受更沒底了,由於真是太快了啊!後來跟我媽說到,她說可能剛開始面的時候面試官已經有答案了,只是再簡單瞭解下證明他心中的想法。因此你必定要陽光點,面試不要畏畏縮縮的=-=我說我陽光燦爛啊~


隨意聊聊的hr面 10min(又名直接發offer的hr面)

吃過晚飯無所事事地刷着微博,有些失神。真的怕等待會讓本身的期待變成失落。實在太困了就趴在實驗室桌子上睡了半小時的覺。大概八點鐘,接到了hr姐姐深圳打來的電話^^瞬間滿血復活。hr姐姐聲音好好聽,萌萌的。就跟我說簡單瞭解下狀況。噢,先是問了我Q號和身份證號,(後來才知道hr姐姐原本就打算髮offer纔打我電話噠)又問是哪裏人啊,興趣是什麼,作項目時遇到啥困難怎麼解決~不過木有問我又木有男票=-=而後就說沒什麼問題offer幾天後就能發到郵箱了。當時特激動,跟她再確認了一遍能夠發offer的事。以後就連聲感謝着掛了電話。


後記

hr面完立刻就給我媽打過去了……謝謝媽媽,在我面試低落時不斷安慰我,沒一句怨言地吸取個人負能量。在二面的時候跟我一塊兒緊張,在hr姐姐電話打來前當心翼翼地問我如今還沒消息是否是就沒有了呢?T^T如今終於成功邁出第一步,喜悅固然要跟分擔了我太多憂愁的媽媽分享。

而後我媽掛了我電話=-=發了條微信語音——點解打電話比我噶?我微信打過去,跟她說拿到offer了~能夠去深圳了。她也鬆了口氣,轉而又起了微微擔心——深圳離家比廣州遠了。其實那時候面阿里的時候她也問過我,若是真的進了,是否是就要去杭州了?我說固然,她說捨不得,捨不得你離開省,一我的走這麼遠。也許仍未體味到什麼是兒行千里母擔心,但我固然也但願我媽能放心地看着我成家立業,因此目前拿到深圳的offer於我於她都算是好的吧~

以上就是我一個月來的各類面試經歷了。如今也算是以回憶錄的方式寫完了。以前不造在哪一個面經上看到過,拿到不少offer的人胃必定很好,由於能承受如此強大的來自未知的壓力。但必定不是我,哈哈。

以上我的經歷僅供參考。面試下來感受各單位招聘前端的針對性仍是很強的。因此若是沒成功不必定是本身能力問題,也許對手太過強大又或者是本身的能力模型與面試的崗位不相符。但有一點要知道,掌握基礎是真理,多實踐是王道。最後祝奔波於大大小小面試的同行們都能成功拿到本身心儀企業的offer!

相關文章
相關標籤/搜索