阿里實習轉正1個月了,記錄下從實習到校招的面試歷程|掘金技術徵文

lz 雙非本科,前端開發技術渣。一字一字碼出來的實習和校招經歷,但願你們都能拿到本身心儀的offer ~ ~html

找實習

戰線從寒假2月就開始了,一直持續到4月中。寒假期間2月底拿到美團實習散招offer,3月去北京美團實習,實習期間陸續拿到 網易遊戲騰訊音樂支付寶暑假實習offer,最後萬分糾結後,選擇了 支付寶前端

美團(offer)

一面(2017.2.16 10:00)

  1. 瀏覽器事件模型
  2. jQuery的delegate事件代理,寫出 polyfill
  3. iframe加載完後,將高度變爲指定的px
  4. 實現垂直水平居中
  5. 統計單詞出現次數(key => value)
  6. 二叉樹翻轉180度
  7. 閉包的內部實現
  8. 實現bind方法,寫出 polyfill(考察apply、原型鏈)

二面

  1. DOM是什麼?有哪些操做
  2. 獲取class="a"的全部div元素
  3. ==和===區別
    == 容許類型轉換,=== 不容許類型轉換複製代碼
  4. typeof null === Object , 以及undefined和null區別
  5. 判斷數組的方法,哪一個更好?
    Array.isArray(arr) 是 Object.prototype.toString.call(arg) === '[object Array]';的語法糖。instanceof 跨frame時不能共享原型鏈。複製代碼
  6. 刪除已有的html節點(考察removeChild)
    var child=document.getElementById("p1");
     child.parentNode.removeChild(child);複製代碼
  7. 字符串反轉
    const reverseString = str => str.split("").reverse().join("")複製代碼
  8. 跨域和AJAX(大概6-7種)
    CORS、JSONP、Fetch、postMessage、Node、Webpack proxyTable、...複製代碼
  9. :before和::before的區別(僞類、僞元素)
  10. 僞類nth-child和nth-of-type區別
  11. var和function定義方法的區別(調用與聲明的順序)

三面

  1. 二維圖形造成三維效果
  2. requestAnimationFrame和setTimeout
  3. 裁剪圖片,實現,矩陣變換
  4. 你畫我猜項目的畫線實現
  5. WebSocket是什麼原理,用了什麼設計模式?
  6. Socket實現
  7. TCP/IP網絡分層
  8. IP 僞造

騰訊課堂IMWeb(掛總監面,看問題就知道爲何了)

一面(2017.2.16 19:00)

  1. JS事件模型
  2. AJAX同源策略及跨域方法
  3. HTTP狀態碼
  4. XSS和CSRF
  5. Express特色
  6. nodejs內存泄露
  7. Vuejs的生命週期?
  8. gulp和webpack的區別?(模塊與流,CommonChunks抽出公共模塊)

二面(桌面共享寫代碼)

用原生JS實現一個相似百度搜索框的自動完成控件,好比候選結果集arr=['aaa','abc','acc','dda',...],用戶輸入'a',下拉列表會出現以字母 a 開頭的項'aaa', 'abc', 'acc'

要求:
1. 鼠標或鍵盤能夠選中候選結果到輸入框
2. 能作好兼容性有加分
3. 作題時間45分鐘
4. 用原生 js 實現複製代碼

這個題若是要作好還挺複雜的,兼容下IE、面向對象的設計、輸入延時、請求返回的順序、字符串保存DOM,避免重複 DOM 插入形成的性能問題。
寫的還能夠,面試官還比較滿意。vue

三面 (大概1個小時)

  1. 問了項目,對項目的技術點,細節,作的好的,作的不太好的
  2. 統計給定數組中,各數出現的次數,返回 json 對象
  3. gulp和webpack的區別?
  4. 5點15分時,時針和分針的夾角

四面 (總監面,3個問題)

  1. 最近作的項目(問最近,開始有些懵,)
  2. 瀏覽器緩存
  3. 60%喜歡足球,70%喜歡籃球,80%喜歡排球,問既喜歡足球,又喜歡籃球,還喜歡排球的有多少?

總監全程很高冷,基本不說話,我還覺得電話信號很差。回答過程當中沒有任何反饋,感受我一直在自言自語。node

網易遊戲(Offer)

一面(3月1號 14:30)

  1. jquery鏈式調用實現原理?(return this)
  2. vue 雙向綁定
  3. AJAX 原理及跨域
  4. 組件化思想
  5. 問了項目,gulp 、webpack、grunt平常使用

杭州現場面(3月3號 共三面,上午兩面、下午一面)

  1. 手寫字符串去重
  2. 問能不能正常運行,若不能正常運行,須要在a.b函數內作什麼改變?
    var a = 1;
     a.b = function(){
       alert(1);
     }
     a.b();複製代碼
    不能正常運行,a.__proto__.b 或者 Number.prototype.b ,但不建議真實環境下這樣使用。
  3. WebGL 原理
  4. 緩存優化
  5. XSS 和 CSRF
  6. threejs的性能測試
  7. 聊了聊項目、城市偏好這樣的話題。

螞蟻金服-體驗技術部(Offer)

大牛、網紅雲集,玉伯、蘇千、民工叔、死馬、承玉、偏右、阮一峯老師等,Ant Designeggjsdvag2等開源項目。react

一面電話-青桅師兄 (2017.3.5 19:00,當時面完網易還在杭州)

  1. Vue.js的雙向綁定怎樣實現的?
  2. Promise對象,嵌套try catch,內層嵌套錯誤捕獲
  3. 數組去重(寫了大概3種方法)
  4. nodejs的初衷是什麼,有哪些不同的特性
  5. node建立子進程,進程間的通訊
  6. 負載均衡
  7. 判斷數組
  8. Class類的繼承
  9. 還學過哪些編程語言?
  10. vue使用了虛擬 DOM? vuex、flex數據管理
  11. vue1.x 和 vue2 的區別

二面視頻面-承玉大神 (2017.3.7 11:00)

  1. JS數據類型有哪些
  2. ES6中的Promise,怎樣實現依次異步回調
  3. ES6有哪些新的東西?
  4. CSS3的新特性
  5. 實現居中對齊(大概3種方法)
  6. ES6模塊機制
  7. node異步非阻塞 I/O 底層實現原理
  8. JS類的繼承
  9. TCP/IP網絡分層
  10. Apache和Nginx的優缺點
  11. react diff算法(三層diff)
  12. XSS 與 CSRF 安全問題,提到了 SSRF 安全

三面HR視頻面 (2017.3.7 14:00)

省略,每一個人問題和答案都不同。但聽出阿里大概喜歡這樣類型的:從初/高中開始搞編程的、創業經歷、實習經歷、比賽經歷、掛科很少的、熱愛技術的jquery

3月10號週五開始在美團實習

美團實習期間
美團實習期間

騰訊QQ音樂(Offer,很愧對主管)

一面 (2017.3.10 19:57)

  1. js基本數據類型,傳值和傳引用的
  2. GPU加速原理,哪些用了 GPU 加速(以空間換時間)
  3. 事件模型,怎樣理解事件代理的好處
  4. 內存泄露 爲何閉包會形成內存泄露
  5. WebAR的實現,WebGL
  6. 前端安全有哪些?
  7. 這些項目中,PV 量最大的是哪一個
  8. Web 性能優化
  9. Ajax跨域
  10. 服務器渲染的好處
  11. 短時間目標和長遠目標
  12. 對前端將來的理解
  13. 用過哪些調試工具
  14. Zepto怎樣解決移動端的點擊穿透事件
  15. Vue生命週期及狀態管理

二面 (2017.3.18 11:10)

  1. 給文檔中還沒添加的 DOM 元素加事件?若是給1000個相同 DOM 加事件,有什麼問題
  2. 事件模型
  3. 常使用的調試移動端頁面
  4. AJAX跨域,其中JSONP有哪些安全問題,怎樣處理(白名單過濾)
  5. 常見的移動端事件
  6. 作的這些項目,作了哪些優化?
  7. 瀏覽器緩存
  8. 什麼是一個好的產品?
  9. 如何評價一個產品的UI設計與交互

三面 (2017.3.21 19:30)

  1. ES6中的特性
  2. Ajax過程,怎樣實現按需加載
  3. DNS 解析過程,DNS 劫持
  4. XSS和CSRF
  5. 實現居中對齊
  6. threejs原理
  7. 問了問項目

四面-面試委員會 (2017.3.27 15:00)

面試委員會:從去年2016年校招開始設立的一個委員會,若是學校不在騰訊目標院校的學生,在部門面完以後,HR面以前,會增長一個面試,可控性不強,這個能不能過,運氣成分比較大。webpack

  1. 項目中遇到了哪些坑?怎樣解決的?
  2. 常常提交什麼漏洞?
  3. react應用到哪一個程度,瞭解diff算法嗎?
  4. redux源碼看過嗎?
  5. koa怎樣實現中間件原理?
  6. 以爲騰訊雲和阿里雲有什麼區別,優點和劣勢?
  7. ...

五面HR (2017.3.27 16:00)

省略...web

騰訊實習內推面試28號結束,面完hr前,狀態是hr面試中,面完以後,次日28號,狀態變成 已報備 (不是 已報批 ),須要在後續線路面試中瞭解更多狀況。面試

六面-北京線路,主管當面聊 (2017.4.17 18:00)

  1. 開放題:一個按鈕沒法響應的錯誤上報方案(前端方案、後端方案、阿里的是spm埋點方案)
  2. 前端自動化測試,用戶熱力圖的實現原理
  3. https中公鑰和私鑰
  4. 美團實習期間遇到哪些問題,怎樣解決?
  5. 問了問城市偏好,聊了會天,主管說之因此面來面去,內推面完又讓來線下面,是由於只有1hc,因此慎重地很。(最後5月才拒的,確實內心過不去)

下午7點面完,出酒店,坐上公交後,手機打開一看,狀態由 已報備 變成了 已經完成全部面試流程 ,開心同時又糾結起來,雖然此時阿里hr面完已經1個多月了,內心知道應該能拿到阿里的實習offer,可是沒有正式的郵件又不敢輕易下結論。最後陸續收到offer郵件,算法

實習offer郵件
實習offer郵件

校招

阿里實習是從 6月底 到 8月底,轉正面試是從8月3號開始,一面蘇千大大,二面hr,在8月25號週五以前,不知道到底能不能留,心慌,因此面幾家,保險。

騰訊AlloyTeam

一面 (8月4號下午3:46 - 5:07)

  1. HTTP緩存、HTTP 1.0的HTTP 1.1的區別、HTTP2 ServerPush、HTTP狀態碼
  2. 打包工具,hash的目的
  3. HTML5的新特性
  4. React開發起來比Vue有哪些特色?
  5. CSS3媒體查詢
  6. 移動端開發中遇到的問題?
  7. 閉包、內存泄露
  8. 從大漠老師的熱點,來看怎樣選擇Vue、Angular、React?
  9. XSS和CSRF

二面 (8月8號晚上7:39 - 8:45)

  1. 作過哪些項目,FrozenUI怎樣重構成React版
  2. https中公鑰和私鑰
  3. 緩存策略
  4. 使用過哪些協議,Schema協議的原理
  5. HTTP2
  6. 使用過哪些MVV*框架,Vue和React之間的區別
  7. 移動端開發中遇到的問題?
  8. 怎樣理解前端工程化?
  9. 前端跨域

一面的面試官加了我微信,透露hc很緊張,實習轉正都不太夠用,因此就結束了面試。

網易雲音樂 (8月28號 週一 線下)

8月25號週五,向主管請下週一的假,去面試,主管回了一句:其實不必面了,留問題不大。聽到這句,開心得像個孩子。😄,因此面網易的時候,也沒有準備,也不太想面了。

  1. 手寫 deepClone
  2. 一個原型鏈繼承的題
  3. call和apply應用題
  4. 手寫實現 call
  5. ...

網易音樂面試貼紙
網易音樂面試貼紙

面完網易雲音樂,晚上7點坐地鐵從濱江區回西湖區,地鐵上接到QQ音樂 的一面電話,沒錯,是QQ音樂,主管把我簡歷一直鎖着,系統解鎖後又手動鎖上。由於當時在地鐵上,約了9點面試,結果9點沒打電話過來,後面也沒有了。其實校招再面QQ音樂是比較糾結的,萬一再向實習那樣,接了不去,我估計終身騰訊黑名單。因此說愧對QQ音樂主管

網易遊戲

一面電話經過,二面通知 9月6號 週三線下面試,結果當時阿里實習結束,買的是 9月5號 的機票,因此也就沒面了。

微信WXG事業羣 (9月7號)

一面共享寫代碼,考算法,像是一個多重揹包的動態規劃問題。

微信小程序團隊一共有 n 名成員,決定出去秋遊,在海邊遇到出租摩托艇的傑克馬,馬先生手上有 m 輛待出租的摩托艇,價格分別是 b1 、b2 ... bm;
因爲習慣了微信支付,團隊中每一個人身上的現金都有限,分別是 a1 a2 ... an,對了,一塊兒出門的老闆還帶有 S 元的團隊經費,這個經費是每一個人均可以使用的

那麼考慮如下兩個場景

場景1
團隊成員都頗有愛,都願意借錢給其餘同事。

function max( Array n, Array m, S) {
    return number
}


場景2
團隊成員都十分小氣,是不肯意借錢給別人的。

// 問題一 請判斷團隊成員是否都能租到摩托艇
function isAll(Array n, Array m, S){
  return true | false
}

// 問題二 請問給出一個策略,使得團隊成員租到最多的摩托艇,而且該策略在相同數量的摩托艇狀況下花費最少

function max( Array n, Array m, S) {

    return {
        number,
        cost
    }

}複製代碼

就一個阿里offer,謝謝阿里沒讓我失業。😂

阿里轉正offer
阿里轉正offer

徵文連接

相關文章
相關標籤/搜索