記得當時大二的時候,看到實驗室的學長學姐忙於各類春招,有些收穫了大廠offer,有些還在苦苦面試,其實那時候的內心還蠻忐忑的,不知道本身大三的時候會是什麼樣的一個水平,因此從19年的寒假放完,大二下學期開始就着手準備面試了:css
當時也是沒有什麼方向,在牛客網上刷題,效果也不是特別好。後來和實驗室的一個去了阿里雲的學長,作了一次長時間的交流,逐漸摸清了些學習方法。4月份的時候,開始製做本身的我的博客網站,並按照前端的技術棧,結合牛客網上別人的面經,開始系統地梳理知識體系,定時定量地寫總結博客。記得把前端的基礎加上數據結構的知識斷斷續續直到8月-9月才所有寫完。(也挺感謝那個充實的暑假的哈哈)html
以後到了大三上學期,我開始陸續找一些平常實習,10月份的時候,運氣還行,拿到了滴滴,美團,抖音的面試,只有滴滴到了二面,其餘的全是一面掛😂。當時面試完下來,我都會問面試官我有什麼不足,怎麼去改進,就這樣一邊繼續鞏固基礎,一邊埋頭優化本身的項目,在博客也更新工程化的知識總結,一直持續到2020年的2月份。前端
如今想一想,本身的春招這麼順利,也同當時大二大三積累的多,有必定的關係。webpack
其實,面試的時候,首先,基礎必定要按照體系,反覆地去複習,造成本身的體系樹,這樣面試官換角度來問基礎的時候,你要保證能夠靈活地解決。第二,就是項目,其實我很贊成一些人的見解,不建議你們作一些什麼仿淘寶,仿餓了麼這樣的一些網站項目,由於沒有本身的思考在裏面,項目能夠是多種多樣的,但項目的亮點,我總結的就是:這個項目有沒有本身我的的思考在裏面,達到了什麼樣的技術深度,技術廣度。這個項目有沒有多人協做,協做中遇到了什麼工程化難題,如何解決,用戶的反饋如何,作沒作事後期調研。web
這些都是考察一個工程師的綜合素質的,有80%以上的能力,我我的以爲是必定能進阿里實習的。面試
阿里巴巴的盒馬部門,是我面過的場次最多,單次平均面試時間最長的一家部門了,整個流程持續了差很少1個多月,技術面試差很少有5-6輪。對校招的實習生的選拔好嚴格,一樣的,我也是花了一個月時間斷斷續續寫完了這篇面經。算法
前一天晚上投的簡歷,次日下午就接到了面試電話編程
請先作個自我介紹element-ui
場景題:提交表單,經常使用的方法有哪些?應用層,通訊層發生了哪些過程?canvas
post和get的區別,列舉一下
http常見的響應碼,拒絕服務資源是哪一個(403)
說一說這個系統是如何判斷機制的(前端鑑權)
你剛纔說了三方OAuth,講一講內在原理吧
說說https的內在原理,ssl握手過程
爲何要用非對稱密鑰,pms呢?公鑰怎麼了?
說一說響應式佈局吧?
響應式背後的瀏覽器原理你知道嗎?(不太知道)
旋轉動畫css,怎麼去作?(animation+rotate)
dom樹和cssom樹原理也說一下吧
爲何link要在前,script標籤要在後面呢?原理
場景題:保證瀏覽器不受腳本的惡意攻擊,(xss攻擊,解決方法)
假如說你的富文本編輯器內部要顯示腳本,該怎麼辦呢?(不太清楚,我就儘量說)
場景題:promise.resolve.then和setTimeout(有關事件循環event loop)
說說async和await的es5實現(我儘量地說了一點)
場景題:這裏有cat和animal子類和父類,如何進行es5繼承,至少說出5種。
說說你項目作的Vue spa首屏優化吧(按需引入,懶加載路由,gzip壓縮,關閉一些插件...)
說說webpack打包構建在實際項目中的優化
算法場景題:數型系統,包含字符串關鍵詞,如何對其做出效率很好的搜索?(balabala說了本身的一些見解,lz77算法,後來翻了翻算法書,應該結合B樹來講)
編程題:請使用js函數寫出markdown轉html的文本編輯器。(2個小時)
算法題:在一個字符串中,找到最大不連續子字符串的長度。
一面評級很好,面試官balabala...(給予我建議)
請作個自我介紹,學校裏作的項目
說說你element-ui的按需引入吧
說說webpack打包優化具體幹了什麼?爲何要這麼作呢?(Dllplugin,happypack)
prerender-spa-plugin插件你用過?具體說一說吧
SEO優化你作了?具體講一講吧
追問:你seo排名怎麼樣了?(沒有進展😂)
我記得NUXT.js也能夠作渲染和seo吧?瞭解SSR嗎
小程序有碰到過複雜一點的業務場景嗎?(說了數據列表懶加載處理setData優化問題)
小程序的框架你有了解嗎?要不說說幾個?
你瞭解過的前沿技術來講一說?(Vue3.0,Flutter,Serverless,Typescript)
說說Vue3.0和2.x的雙向數據綁定(object.definePorperty和Proxy)
說說你最感興趣的前端方向(跨端解決方案Flutter、React Native...)
一面面試官說你還能夠,那我就再也不問你基礎問題了,你還有什麼要問個人嗎?
您對個人評價:balabalabala
以前就有跟盒馬的前端leader作過微信溝通,瞭解了一些阿里巴巴新零售的願景。
先作個自我介紹
說說你的我的博客和你作的小程序吧
你剛纔只說了技術層面的,功能層面沒有什麼創新嗎?
你如今還有開展什麼新項目嗎?
我無論技術層面,仍是來到功能層面,除了這一個功能就沒有創新了嗎?(頓時語塞。。)
有這麼一個功能場景,老師隨機點名,上堂課沒來的同窗被抽到的機率會大幅增長,怎麼去作?
還有一個功能場景,你的博客系統如何分享文章?
還有一個功能場景,你可不能夠作一個在線提交做業的平臺,讓老師不只能夠收到做業,還能夠在平臺上對做業進行批改?說說具體技術實現。。。
個人問題問完了,你如今還有面其餘的部門嗎?balabala
對個人評價,balabala說了不少不少😭,其中用技術靈活地解決各類場景問題是很是要緊的素質!!!
說後面還會有P9級別的面試/(ㄒoㄒ)/~~
正式校招系統開放,選擇了盒馬的邀請。四面在3月23號的下午打電話過來了,聽口音像是個北方人。看到個人簡歷,拋出問題:
請先作個自我介紹吧,並說說你最有成就感的幾個項目
詳細地講講Vue的首屏優化,具體的技術點
優化有過量化評級嗎?說說具體爲多少?怎麼去作的?
有一個問題,你如何去肯定哪種方式是對整個首屏渲染優化起到最關鍵做用的?
咱們如今回過頭來,你可不能夠按照軟件開發的流程模塊再來詳細地說說博客的總體優化?各個方面的性能優化?(設計,編碼,打包部署,上線體驗。。。說了一部分)
預渲染prerender-spa-plugin能詳細講講?
你瞭解了原理,那麼你引入這個prerender插件對於整個項目的架構產生了什麼樣的特別影響?(講了路由衝突)
對於上線後的用戶體驗,你打算怎麼作改進?
功能層面是這樣,技術層面能夠來講說?
數據列表的懶加載這個說的好,那有這麼一個場景,你提交了新的文章,由用戶在刷你的博客,你怎麼讓用戶經過必定的事件=來查看你的新文章,不要經過頁面總體刷新,仍是以動態引入的方式?
咱們再次回到剛纔項目的性能優化這個點上?在你解決首屏的時候,在網絡通訊的每一個階段,哪一個階段是性能開銷的最大的地方,優化後有何變化?如何解決?
SEO怎麼作的,講一講技術細節
你有對你的用戶羣體作過數據的量化統計嗎?說說你有什麼樣的思路,如何去利用好這些數據?
這邊有個問題,若是單純地經過前端來分析用戶的行爲,開銷會很是大,你有什麼好辦法?說說思路
若是過了很長時間,有人問你,一個高性能的博客頁面該如何搭建,你會按照什麼樣的邏輯取來跟他分析這些零碎繁雜的性能優化?
好了,博客項目只是你我的對於技術的探索,你還有沒有學校裏真正擁有用戶的實際項目呢?說說看
功能描述的很詳細,這裏有個問題,總所周知,二維碼有必定的時效性,可傳播性,如何防範那些沒來同窗也掃到二維碼了?說說方法
沒來的學生,大家就會採起這種單一的方案嗎?還有沒有別的?
說說大家項目組的團隊,如何分工的?
在這個團隊對於項目的功能構建中,你起到了什麼做用呢?
你剛纔說到了先後端分離,講講你和後臺同窗如何落實好先後端分離的?
對於後臺的數據接口,常常會發生一些分歧,大家團隊是怎麼化解這種分歧的,有沒有一種方式增進團隊之間的溝通?
這小程序如今的用戶量怎麼樣呢?日活又如何?
一樣的,再說說這個小程序性能優化作了哪些呢?
你對於前端將來的開發?以及你之後的職業規劃?
你但願阿里能給到你什麼樣的經歷?在阿里但願能學到什麼?
這邊在杭州,以後方便過來對吧?
個人問題問完了,你這邊有什麼問題?
慣例您對於個人評價:ok,在應屆生羣體中,你已經具有了工程師的素養和必定開發經驗,但性能優化這一塊是一個永無止境的過程,應當不斷追求卓越balabala。。。。。
面下來差很少一個小時,真的少見。。。
約在了3月25日的晚上,面試官比較嚴肅,問的問題也蠻有深度的,時間不長30分鐘,但問的問題也比較廣。。。
請先作個自我介紹
說說你最有成就感的項目
你的博客網站,難道沒有分析過用戶的行爲嗎?對於用戶量很大的狀況下,難道沒有作過性能分析嗎?
詳細地講一講你作了哪些性能優化?
就這麼多嗎?對於效果你有作過量化的評測嗎?
對於首屏中的FP,FCP,FMP,TTI你又分別去作量化的考慮嗎?
對了,你如何經過代碼來分析首屏的FCP時間?
除了這些,難道就沒有進一步優化嗎?
prerender預渲染是什麼原理呀?
這樣的一種插件引入,爲整個性能提高又帶來了多少許化的參考呢?你有去研究過嗎?
說說你擁有的實際用戶量的項目吧?
這個小程序已經上線對吧?大家團隊有沒有對這個小程序作過用戶行爲的調研呢?
我想要知道的是在程序裏面有代碼去自動去分析用戶的行爲嗎?
我看你懂Vue,React有學過一些嗎?系統地說一說二者的區別
Vue如何解析template模板,diff算法二者的不一樣是什麼??
詳細地說說前端的動畫種類?
canvas有了解過嗎?它適用於什麼樣的場景?
你對於前端前沿技術的見解?
你剛剛講了flutter,Dart語言能不能說說看?
React Native作過項目嗎?
你但願在將來,你在阿里能學習成長到什麼?
個人問題問完了,你這邊有什麼問題呢?
對個人評價:評價我先不給你,我說輸送我對於你的建議,繼續探索下去,保持好奇心,用最前沿的技術嘗試去作項目,前端的知識很廣,須要去不斷深刻了解原理知識balabala。。。。(最後)我以爲你仍是不錯的,加油吧。。。。
後來,leader發了微信,交叉面順利過了,剩下的就是HR了。
這個我就不寫了哈哈哈。。。。