<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          雙非二本,畢業(yè)半年沖進(jìn)字節(jié)抖音架構(gòu)組,他經(jīng)歷了什么?

          共 16069字,需瀏覽 33分鐘

           ·

          2021-03-29 13:27



          自我介紹

          雙非二本,軟件工程,自學(xué)前端,今年畢業(yè)。

          喜歡編程,古風(fēng),日語和英語。

          常以冷月心之名混跡前端江湖,也曾在混跡網(wǎng)文圈時用冷月心做筆名簽約掌閱,作品《清起風(fēng)云》,百度可查。

          求職期間寫了一個小博客,感興趣的可以看看 https://lengyuexin.github.io/gatsby

          為什么離職

          這個問題,幾乎我參加的每一場面試都會問到。我是2020.7.1畢業(yè),最后離職日期是2020.12.18。這段工作經(jīng)歷很短,被問到也很正常。最主要原因還是追求更大的發(fā)展空間和技術(shù)突破。

          在我導(dǎo)師跳槽去美團(tuán)后,團(tuán)隊內(nèi)就出現(xiàn)了明顯的技術(shù)斷層。我遇到的某些問題,能夠與之商量的同事也越來越少。至于源碼,數(shù)據(jù)結(jié)構(gòu)和算法層面的交流就更少了。

          而這些深層次的東西,才是真正意義上的技術(shù)棧,是真真正正能提高個人技術(shù)能力和核心競爭力的東西。

          跳槽前該考慮的事

          在我看來,決定是否跳槽成功的核心因素有兩個:個人技術(shù)能力和當(dāng)前招聘市場的大環(huán)境。建議先將自身技術(shù)能力和招聘要求做一個比對,如果覺得可以勝任,再去投遞也不遲。至于市場環(huán)境,大概是金三銀四,金九銀十和年末擴(kuò)招三大階段吧。

          如果技術(shù)已經(jīng)準(zhǔn)備ok,簡歷也完善過,那就可以開始投遞了。內(nèi)推也好,其他招聘軟件也好,自行選擇即可。

          最最最重要的一件事,不建議裸辭。如果裸辭,做好心理準(zhǔn)備。大多數(shù)情況下,換一份滿意的工作,整個面試流程加offer審核到offer call再到最終郵件offer,耗時一個月是很正常的。在職面試都會有焦慮感,更何況是裸辭。

          如果工作年限很短,又是裸辭,那我只能說在簡歷篩選上會很吃虧。比如我,投字節(jié)15個崗位,都被干掉,到第16個才約上面試。投快手4次內(nèi)推,被干掉4次,最快的一次一小時左右就把我干掉了。不得不說,快手效率還是到位的。不死心的我又投了第五次,成功約上了面試。至于后來為什么能再約上猿輔導(dǎo),百度,58同城,去哪兒網(wǎng),美團(tuán)的面試,我猜應(yīng)該都是因為運氣...又或者,實在很缺人?

          技術(shù)方面該如何準(zhǔn)備

          結(jié)合我20多次的面試經(jīng)驗,總結(jié)出一個核心:基礎(chǔ)。即便是大廠,也不會忽略問基礎(chǔ),反而更重視這個。基礎(chǔ)不穩(wěn),地動山搖。基礎(chǔ)穩(wěn)如狗,大廠隨便走。以下我提到的資料都會在文末給出鏈接,大家可自行查看。

          js方向

          對于js而言,我覺得基礎(chǔ)應(yīng)該是基本語法,數(shù)據(jù)類型,異步,各種常用api,this,es6+,原型和原型鏈,繼承,作用域和作用域鏈,閉包...等等。建議閱讀紅寶書第四版并結(jié)合神三元的js靈魂之問系列按需完善。

          css方向

          對于css而言,我覺得基礎(chǔ)應(yīng)該是常用選擇器,權(quán)重,垂直居中方案,rem和em,flex,動畫...等等。對于這方面的準(zhǔn)備,網(wǎng)上很多博客就能解決。如果想系統(tǒng)了解一下,推薦張鑫旭的《css世界》。flex的話,推薦小青蛙網(wǎng)站和阮一峰的博客。

          源碼方向

          react技術(shù)棧,推薦閱讀的源碼是react,react-router,redux,react-redux,axios。

          vue的話,推薦閱讀的源碼是vue,vue-router,axios,vuex。

          如果涉及nodejs,那koa2,koa-router,express,也都可以安排下。

          至于源碼方向的推薦有三個:

          • 卡頌的react技術(shù)揭秘
          • 若川的源碼系列(很多,文末直接貼作者主頁了)
          • 難涼熱血的vue源碼分析

          數(shù)據(jù)結(jié)構(gòu)和算法方向

          面試過程中問到算法很正常,這個時候就要注重平時的積累了。

          算法方向推薦的有四個:

          • 極客時間王爭的數(shù)據(jù)結(jié)構(gòu)與算法之美
          • 政采云團(tuán)隊的博客--算法篇
          • 天天的前端算法總結(jié)
          • ssh的前端算法進(jìn)階指南
          • 修言算法小冊

          計算機(jī)網(wǎng)絡(luò)方向

          無論是前端還是后端,通信都是極為重要的概念,最起碼應(yīng)用層http和https要有一定的了解。

          如果想全面了解一下,推薦謝希仁那本特別厚的《計算機(jī)網(wǎng)絡(luò)》,看前六章就可以了。

          如果覺得特別多,可以看一下神三元的http靈魂之問。

          瀏覽器方向

          這部分只推薦一個,極客時間李兵老師的瀏覽器專欄

          其他方向

          我這邊因為項目中會兼顧一些運維的工作,所以對nginx常用配置和linux常用命令有一定的了解, 這部分可參考我之前寫的筆記。當(dāng)然這個不算必須項,大概可以算個加分項吧。

          面經(jīng)

          接下來我會分享我面試的七家公司的面經(jīng),可作為面試參考。

          58同城一面

          1. 自我介紹
          2. 諸多業(yè)務(wù)問題
          3. 項目中主要負(fù)責(zé)什么
          4. 原生js怎么實現(xiàn)拖放
          5. react-dnd拖放的核心API
          6. react diff 算法復(fù)雜度是多少
          7. diff造成的非預(yù)期更新如何解決
          8. 如何實現(xiàn)路由監(jiān)聽
          9. 頁面適配方案:百分比,flex,vh,vw
          10. 平時對js和css基礎(chǔ)有過了解嗎
          11. 從地址欄輸入地址到頁面回顯,都發(fā)生了什么
          12. 解釋下重繪和回流
          13. 說一下js中的類和java中的類的區(qū)別
          14. 說一下js中如何實現(xiàn)函數(shù)重載
          15. webpack動態(tài)加載

          面試感受:

          58同城是我面的最早的一家,一面是電話面,大概聊了有一個小時。整個面試過程很nice,最后讓面試官給我一個評價。講真,面試官很真誠,說我的表現(xiàn)是超預(yù)期,但是在年限和經(jīng)驗上有所欠缺,hr那邊可能會影響定級。我表示理解,畢竟確實年限短。

          58同城二面

          1. 自我介紹
          2. 為什么剛工作不久離職了
          3. 業(yè)務(wù)中負(fù)責(zé)什么
          4. node偏運維方向的有沒有了解過(docker k8s)
          5. 業(yè)務(wù)中主要用node干了什么
          6. react生命周期有了解嗎
          7. 說下react-router源碼你看完后印象深刻的部分
          8. 數(shù)組去重怎么實現(xiàn),不用set怎么實現(xiàn)
          9. 實現(xiàn)一下es6的extends
          10. 有沒有接觸過移動端,小程序,h5等方向

          面試感受:

          二面是視頻面,面試官和我聊了一下接下來的發(fā)展方向,描繪了一張美好的藍(lán)圖。聽起來還不錯,雖然沒聽懂。某些不可說的原因,58同城結(jié)束在二面,后續(xù)沒有再進(jìn)行。

          百度一面

          1. 自我介紹
          2. js數(shù)據(jù)類型和存儲方式,如何判斷
          3. typeof [] 返回什么
          4. new操作符 做了什么
          5. 數(shù)組中一萬個數(shù)據(jù),訪問第一個和最后一個效率會有什么差異,為什么
          6. forEach for in for of 的差異
          7. 如何改變this指向
          8. js中函數(shù)是如何調(diào)用的
          9. 說下原型和繼承
          10. 瀏覽器緩存
          11. 說下瀏覽器事件循環(huán)
          12. js是單線程還是多線程,為什么這么設(shè)計
          13. css弧形永動動畫實現(xiàn)
          14. css 1px像素適配
          15. css設(shè)置div寬高比3:4 padding-bottom:75%
          16. 說下transform 和transition
          17. 類數(shù)組怎么轉(zhuǎn)換成數(shù)組
          18. new Array()接收的參數(shù)是什么
          19. get和post的區(qū)別
          20. http狀態(tài)碼
          21. react生命周期
          22. setState更新是同步還是異步
          23. axios源碼整體架構(gòu)
          24. 手寫Promise.all
          25. Promise中用了什么設(shè)計模式
          26. Promise都有哪些狀態(tài)
          27. 算法12345678.01 =>123,456,78.01
          28. 算法12345678.01=>12,345,678.01
          29. 從地址欄輸入地址到頁面回顯,都發(fā)生了什么

          面試感受:

          女面試官,題是有點多,但感覺還好,都是偏基礎(chǔ)。印象最深的是算法部分,面試官出了題,我直接說了思路,好像還巴拉巴拉說了一下其他的。面試官說:哎呀,我只是想讓你做個題...(撒嬌語氣??) 好的,做題。

          百度二面

          1. 自我介紹
          2. 業(yè)務(wù)中你用node都做了什么
          3. 你對node還有什么想分享的嗎,覺得用起來爽的部分(gzip pipe)
          4. 業(yè)務(wù)中數(shù)據(jù)是怎么存儲的,node為什么沒有接入數(shù)據(jù)庫
          5. node單線程容易崩潰,怎么維護(hù)服務(wù)的
          6. pm2內(nèi)部機(jī)制了解嗎
          7. cluster了解多少
          8. 業(yè)務(wù)線如何用端口號區(qū)分(nginx http-proxy)
          9. 業(yè)務(wù)上有什么坑嘛 (環(huán)境多)
          10. webpack常用配置
          11. webpack插件寫過嗎
          12. webpack常用插件
          13. 關(guān)于webpack你還有什么想分享的嗎 (同步加載異步加載的實現(xiàn))
          14. 瀏覽器地址欄輸入請求地址到頁面回顯發(fā)生了什么
          15. 重繪和重排了解嗎
          16. 重繪和重排如何做取舍
          17. 如何將css內(nèi)容插入到頁面上(style-loader)
          18. 如果讓你實現(xiàn)style-loader,你打算怎么做
          19. 算法題-手寫快排
          20. 算法題-查找一個字符串中出現(xiàn)次數(shù)最多的字符
          21. 算法復(fù)雜度層面比較一下快排和其他排序
          22. 項目是內(nèi)部使用嗎 (是,未開源)
          23. 有沒有考慮過高并發(fā)場景,如何解決(緩存,壓縮,負(fù)載均衡,集群)
          24. 現(xiàn)在是在職狀態(tài)嗎
          25. 最后離職日期是多少
          26. 手上有沒有其他offer
          27. 如果今晚三面是否有時間(說有上線,推遲了)
          28. 反問一:百度App部門有沒有使用node的場景
          29. 反問二:App部門是不是只有移動端場景,有沒有其他的,比如pc
          30. 反問三:百度怎么做容災(zāi)的
          31. 反問四:百度App是分工明確還是也會出現(xiàn)身兼多職的情況
          32. 反問五:給我一個今后學(xué)習(xí)發(fā)展的建議和這次面試的簡單評價

          面試感受:

          不得不說,和二面面試官聊的很是帶勁,給我很多鼓勵,完事大概是晚上十點多了,意猶未盡。當(dāng)場要整三面,當(dāng)時也恰好11點要上線,就改時間了,三面約到了一周后。

          百度三面

          三面面試官是手機(jī)百度部門的leader,電話面的,主要是問了我一下期望薪資和來百度的意愿。然后又是一波鼓勵,還教我怎么談薪資,感動到爆炸。說實話當(dāng)時我已經(jīng)決定同等薪資必去百度,奈何后續(xù)流程太長了,我已經(jīng)接到抖音正式offer郵件那邊還沒反饋。

          抖音一面

          1. 自我介紹
          2. 說一下業(yè)務(wù)中你負(fù)責(zé)的部分
          3. 業(yè)務(wù)中數(shù)據(jù)是怎么存儲的
          4. 業(yè)務(wù)中拖拽如何控制位置的,適配怎么處理,全屏怎么控制
          5. 你用nodejs和java分別做了哪些業(yè)務(wù)
          6. 業(yè)務(wù)中的縮略圖是什么,實現(xiàn)方案
          7. 說下jwt
          8. 說下js中數(shù)據(jù)存儲方式
          9. 知道內(nèi)存碎片怎么產(chǎn)生的嗎 v8
          10. post請求有幾種方式觸發(fā)
          11. post的ContentType類型有哪些(application/x-www-form-urlencoded/multipart/form-data/text/plain)
          12. 知道jwt有哪些缺點嗎
          13. 說一下http和https的區(qū)別
          14. https的tls了解嗎
          15. 說一下鎖(懵逼),舉例是讀鎖和寫鎖
          16. 為什么要去看axios的源碼,大體實現(xiàn)
          17. 業(yè)務(wù)中權(quán)限是怎么接入的,數(shù)據(jù)表怎么劃分的
          18. 能說一下css盒模型嗎
          19. 說下box-sizing中border-box 和content-box的區(qū)別
          20. this指向
          var fullname = '1';
          var obj = {
             fullname'2',
             prop: {
                fullname'3',
                //如果改成普通函數(shù)呢?
                getFullname:()=> {
                   return this.fullname;
                }
             }
          };
          console.log(obj.prop.getFullname());
          var test = obj.prop.getFullname;
          console.log(test());



          1. 算法題1:節(jié)點渲染

          const el = require('./element.js');
          const ul = el('ul', {id'list'}, [
            el('li', {class'item'}, ['Item 1']),
            el('li', {class'item'}, ['Item 2']),
            el('li', {class'item'}, ['Item 3'])
          ])
          const ulRoot = ul.render();
          document.body.appendChild(ulRoot);

          <ul id='list'>
            <li class='item'>Item 1</li>
            <li class='item'>Item 2</li>
            <li class='item'>Item 3</li>
          </ul>


          1. 算法題2:屬性獲取
          {
              a:{
                b:{
                  c:{f:"aa"}
                },
                d:{
                  e:{g:"bb"},
                  h:{i:"cc"}
                },
                j:{
                  k:"dd"
                }
              }
          }
          // [f,g,i,c,e,h,k,b,d,j,a]


          面試感受:

          面了百度和58同城,有點膨脹,字節(jié)讓我清醒。算法被吊打,只寫了個大概和思路。感覺要涼了,最后反問環(huán)節(jié)我已經(jīng)沒什么想問的了。如果說有,我想問一下我還有機(jī)會嗎?最后說了一下我的遺憾,表示我擅長的沒有完全體現(xiàn)出來,命中的很多盲區(qū)。好家伙,峰回路轉(zhuǎn),面試官說我還是有其他亮點的,再給我一次機(jī)會,就到了二面,感動到冒泡泡...

          抖音二面

          1. 看你簡歷有提到nginx配置,主要配置了什么
          2. 說下上線部署流程中常用的linux命令
          3. node的進(jìn)程守護(hù)怎么做的,發(fā)現(xiàn)非預(yù)期故障怎么排查
          4. 項目中為什么選擇用nodejs
          5. 業(yè)務(wù)中負(fù)責(zé)哪些部分
          6. 手寫一個koa2的compose
          7. 手寫一個Scheduler類,實現(xiàn)并發(fā)控制

          //JS實現(xiàn)一個帶并發(fā)限制的異步調(diào)度器Scheduler,
          //保證同時運行的任務(wù)最多有兩個。
          //完善代碼中Scheduler類,使得以下程序能正確輸出:
          //Scheduler內(nèi)部可以寫其他的方法
          class Scheduler {
            add(promiseCreator) { ... }

            // ...
          }

          const timeout = (time) => new Promise(resolve => {
            setTimeout(resolve, time)
          })

          const scheduler = new Scheduler()
          const addTask = (time, order) => {
            scheduler.add(() => timeout(time))
              .then(() => console.log(order))
          }

          addTask(1000'1')
          addTask(500'2')
          addTask(300'3')
          addTask(400'4')
          // output: 2 3 1 4

          // 一開始,1、2兩個任務(wù)進(jìn)入隊列
          // 500ms時,2完成,輸出2,任務(wù)3進(jìn)隊
          // 800ms時,3完成,輸出3,任務(wù)4進(jìn)隊
          // 1000ms時,1完成,輸出1
          // 1200ms時,4完成,輸出4


          面試感受:

          二面問的不多,主要是寫代碼吧。Scheduler沒有完整寫出來,koa2的compose寫出來了,其他的回答還行,完事約了三面。抖音二面時快手hr打電話告訴我二面過了,當(dāng)場愣住,我不是正在二面嗎?怎么就過了?

          抖音三面

          1. 為什么工作不久離職
          2. 你覺得你擅長哪些技術(shù)(react+node+計算機(jī)網(wǎng)絡(luò))
          3. 說一下進(jìn)程線程,如何通信?
          4. 兩個線程可以直接通信嗎
          5. 你覺得node的適用場景是什么
          6. 相比其他后臺語言,為什么你更傾向node?
          7. 在業(yè)務(wù)開發(fā)上,你覺得node和java的區(qū)別是什么?
          8. node服務(wù)的性能監(jiān)測有沒有了解過?
          9. http中間人劫持了解嗎?如何解決呢?(說了https)
          10. 為什么https可以做到避免中間人劫持?(說了加密層tls)
          11. 展開說一下tls握手(對稱,非對稱,對稱+非對稱的組合)
          12. 加密套件指的是?(舉例了AES)
          13. 業(yè)務(wù)中的安全問題有沒有遇到過?怎么解決的?(說了base64,cors,xss,csrf,cookie的httponly和samesite屬性)
          14. 你傾向的技術(shù)領(lǐng)域和業(yè)務(wù)場景是怎樣的?
          15. 算法1:二叉樹層序遍歷和s形的層序遍歷
          16. 算法2:如何在從左到右升序,從上到下升序,每一行第一個元素大于上一行最后一個元素的二維數(shù)組中查找某個數(shù)字的索引?如果是一維數(shù)組呢?
          17. 算法3:二分法的實現(xiàn)
          18. 算法4:單鏈表反轉(zhuǎn)
          19. 反問:抖音安全部門主要的業(yè)務(wù)范圍是什么?

          面試感受:

          三面問的更全一點,理論和代碼層面的都有,算法2沒寫出來,其他的應(yīng)該都抗住了。后續(xù)流程很順利,已拿offer。

          猿輔導(dǎo)一面

          猿輔導(dǎo)那天是招聘專場,一面到底,直通hr面。因為某些非預(yù)期情況,不再考慮這邊,選了抖音。

          1. 自我介紹
          2. 業(yè)務(wù)中負(fù)責(zé)的部分
          3. 業(yè)務(wù)中數(shù)據(jù)怎么存儲的
          4. 為什么堅持用node
          5. 算法1:promise并發(fā)控制
          6. 算法2:前k個元素
          7. js中遍歷數(shù)組的方式
          8. react中遇到的坑,怎么解決的
          9. 說一下類組件和函數(shù)組件
          10. 選擇hooks的優(yōu)點
          11. 什么時候用類組件
          12. 說下http緩存,如何實現(xiàn)
          13. 反問一:這邊有沒有使用node的場景
          14. 反問二 :業(yè)務(wù)線中使用的技術(shù)棧是什么
          15. 反問三:有沒有jq那種老項目
          16. 反問四:面試評價和今后發(fā)展的建議

          面試感受:

          和面試官聊的很開心,從技術(shù)到業(yè)務(wù)到技術(shù)選型,巴拉巴拉聊了很多。那邊是用的angular11,還有vue2.x,后續(xù)打算遷移到react技術(shù)棧上。

          猿輔導(dǎo)二面

          1. 自我介紹
          2. 諸多業(yè)務(wù)問題
          3. react diff算法如何實現(xiàn)的,比對復(fù)雜度是多少
          4. 如何使用react-dnd完成拖放的,說下主要API
          5. 大數(shù)據(jù)量場景前端怎么處理,讓頁面展示盡可能流暢
          6. 業(yè)務(wù)中看你有涉及到node的文件讀寫操作,有沒有想過如果某個文件被鎖怎么處理?
          7. 前端縮略圖(截圖)方案是什么
          8. 業(yè)務(wù)中的實時保存會有性能開銷,又沒有做什么優(yōu)化?
          9. node轉(zhuǎn)buffer輸出字符串會比直接string輸出快,你的依據(jù)是什么?
          10. 算法一:給定一串?dāng)?shù)字,求它全排列結(jié)果
          11. 算法二:實現(xiàn)類似百度那種聯(lián)想搜索(模糊匹配)
          12. 收尾閑聊:你覺得一面難還是二面難?我說二面吧,數(shù)學(xué)不太好,全排列沒屢清楚。

          面試感受:

          和面試官聊的依舊很開心,二面聊了很多業(yè)務(wù)。好家伙,我和面試官開始在白板上畫圖交流了。咱數(shù)學(xué)確實菜,全排列也沒整清楚,和邏輯混一起更想不明白。面試官表示理解,然后約了三面,部門大leader。

          猿輔導(dǎo)三面

          1. 根據(jù)簡歷確認(rèn)了一下基本信息
          2. 為什么剛工作幾個月就離職
          3. 看你大學(xué)學(xué)的挺多的,高中是不是沒好好學(xué)習(xí)呀(笑,解釋說高中是為了高考被動式學(xué)習(xí),大學(xué)是為了工作主動學(xué)習(xí))
          4. 日語N2是指?(解釋了下等級,日企門檻)
          5. 看你對前端熱情挺高的,為什么選擇了前端呢?
          6. 然后面試官直接給我安排了研發(fā)方向,前期ng,后期react,說是在組建一個復(fù)雜架構(gòu)小組,目前兩人,預(yù)計4-6人。(說實話,有點慌)
          7. 做個題吧,給定學(xué)生id和分?jǐn)?shù)組成的列表,寫一個函數(shù),通過id獲取排名,注意分?jǐn)?shù)相同并列名次的處理(寫了七七八八,后邊面試官說思路可以,就這樣吧)
          8. 然后讓我等下hr,面試官去下一場面試了(面試專場,一下午來了大概20+,每個面試官都很忙,后續(xù)基本沒有反問時間)

          面試感受:

          親切,看面試官第一眼就覺得很親切。整體聊的也很順利,過往經(jīng)歷和一道算法題,完事??吹某鰜?是想要我的。之后hr面結(jié)束,打道回府。

          猿輔導(dǎo)hr面

          1. 之前有了解過猿輔導(dǎo)嗎
          2. 確認(rèn)了一下簡歷基本信息
          3. 還有其他公司在面試嗎,進(jìn)展如何?
          4. 說了下福利,餐補(bǔ)800,六險一金,不限量零食下午茶,健身房,晚下班打車企業(yè)報銷,巴拉巴拉……說了好多福利
          5. 聊了下薪資,之前的,預(yù)期的。
          6. hr表示不會因為工作經(jīng)驗而刻意壓薪資,扁平化管理,會根據(jù)每一輪面試官評價來定(給我的預(yù)期是校招生水平,實際是超預(yù)期)
          7. 你是97年的嘛?(驚訝) 感覺你表現(xiàn)上更成熟一些(我說和個人經(jīng)歷和讀的書有關(guān)吧)
          8. 個人經(jīng)歷,比如呢?(笑,愛情算嗎?)
          9. 然后和hr聊起了愛情觀
          10. 所以你現(xiàn)在狀態(tài)是?(單身)
          11. 大學(xué)讀了哪些類型的書?
          12. 我問了下工作時間,早10晚7,雙休不打卡
          13. hr表示offer流程會根據(jù)我這邊其他公司面試進(jìn)展隨時同步,很熱情的送我到電梯門口

          面試感受:

          面試體驗確實不錯,后期就有點遺憾了。也難怪,我的年限和期望偏差確實有點大,這邊流程上多加考慮也可以理解。

          快手一面

          1. 自我介紹
          2. 項目應(yīng)用場景和優(yōu)勢
          3. 寫個繼承案例
          4. Object.create實現(xiàn)
          5. Object.create傳null和{} 有啥區(qū)別嗎
          6. 手寫promise(寫完then后面試官說可以了)
          7. 實現(xiàn)一個數(shù)組扁平化方法flat
          8. js為什么設(shè)計成單線程
          9. 事件循環(huán)說一下
          10. Promise里都是微任務(wù)嗎
          11. 平時怎么學(xué)習(xí)的
          12. koa2中間件和redux中間件比較,原理
          13. koa2的洋蔥模型和redux中間件的洋蔥模型一樣嗎
          14. 兩個compose的大概實現(xiàn),reduce的妙用
          15. 對比一下express,koa2(我連同比較了egg)
          16. 為什么不要在循環(huán)、條件語句或者嵌套方法中調(diào)用Hooks
          17. new Promise返回的實例和實例then方法執(zhí)行后返回的promise是一個嗎
          18. 平時有瀏覽過哪些國外的網(wǎng)站嗎

          面試感受:

          女面試官,聊了很多,感覺想早點下班。hh,我要寫代碼,剛寫了大概,面試官說可以了,可以了,之后約了二面。

          快手二面

          1. 說一下為什么要用hooks,解決了什么問題
          2. react函數(shù)組件和類組件觸發(fā)更新的方式有哪些
          3. react的強(qiáng)制更新有了解嗎
          4. react在一秒內(nèi)點擊按鈕多次(+1),如何獲取最后一次的新狀態(tài)
          5. react-router權(quán)限路由寫一下
          6. 實現(xiàn)一個帶緩存的求階乘函數(shù)
          7. 說說你對koa2中間件的理解
          8. 某些接口允許跨域,某些不允許,如何實現(xiàn)?能不能使用koa2中間件的方式實現(xiàn)一下?
          9. koa2中ctx.set的等價寫法
          10. 用node如何實現(xiàn)一個帶壓縮和緩存的http-server?

          面試感受:

          面試官給我一種道法自然,萬法皆通的感覺,某些想法秀到我了,很強(qiáng)。問的基本都答上了,很快約了三面。

          快手三面

          1. 自我介紹(側(cè)重說下個人優(yōu)勢和項目亮點)
          2. 為什么剛工作不久離職
          3. 如果有成熟穩(wěn)定的A團(tuán)隊和從0到1的B團(tuán)隊,你傾向哪種
          4. 如果B團(tuán)隊做不好有可能會因為業(yè)績不達(dá)標(biāo)被砍掉,做的好會有高收益,A團(tuán)隊一直是穩(wěn)定的,你傾向哪種
          5. A團(tuán)隊業(yè)務(wù)線偏向底層功能開發(fā),為B團(tuán)隊服務(wù)。B團(tuán)隊在A團(tuán)隊產(chǎn)出基礎(chǔ)上,會面對更多復(fù)雜業(yè)務(wù),你傾向哪種
          6. 反問1:剛才提到的AB部門的業(yè)務(wù)覆蓋場景是只有pc端嗎?還是也有其他端?
          7. 反問2:工作模式是否為導(dǎo)師制?

          面試感受:

          無關(guān)技術(shù),只談選擇。我選了BBB。之后約了hr面,然后又加面,其實也沒問太多技術(shù)問題。流程和字節(jié)基本同步,薪資待遇持平,只是多了一個背調(diào)。我比較想早點入職,選了更快的抖音。說實話,有點舍不得負(fù)責(zé)招聘的hr小姐姐,hh,給了我很多祝福。

          美團(tuán)一面(部門A)

          我懷疑美團(tuán)有毒,二面必掛。第一次面到2面,題基本都答上了,莫名掛掉。然后又被打撈,依舊面的很順利,二面掛掉... 好家伙,分手都沒個預(yù)兆。遺憾是有,但也無能為力。美團(tuán)到店,我可能到不了店了。

          1. 自我介紹
          2. 為什么剛工作不久就離職了
          3. 項目中常用的linux命令
          4. 業(yè)務(wù)中打包怎么做的
          5. 如何查詢某個進(jìn)程占用的端口號(linux中) netstat -tunlp|grep 80 lsof -i:80
          6. 實現(xiàn)一個new操作符
          7. git reset 和git rebase了解嗎
          8. 實現(xiàn)Object.create
          9. 實現(xiàn)數(shù)組扁平化函數(shù)flat
          10. webpack有哪些優(yōu)化方案
          11. loader和plugin有寫過嗎
          12. react合成事件了解嗎?
          13. 這些事件處理函數(shù)最終掛載到了哪?
          14. react中如何阻止冒泡
          15. react中setState同步還是異步
          16. react15和react16更新機(jī)制的差異
          17. 為什么react16架構(gòu)升級后就能中斷更新,根據(jù)什么決定是否中斷
          18. react源碼看過哪些?
          19. react中調(diào)和的部分是在哪個包?有看過實現(xiàn)嗎
          20. hooks為什么不能在條件或循環(huán)中使用,原理清楚嗎?
          21. react為什么要引入hooks,解決了哪些問題
          22. 類組件如何實現(xiàn)邏輯復(fù)用?
          23. 打印題
          const o1 = {
           text'o1',
            fnfunction() 
             return this.text
            }
          }

          const o2 = {
           text'o2',
            fnfunction() {
             return o1.fn()
            }
          }

          const o3 = {
           text'o3',
            fnfunction() {
             var fn = o1.fn
              return fn()
            }
          }
          console.log(o1.fn())
          console.log(o2.fn())
          console.log(o3.fn())




          面試感受:

          美團(tuán)的面試還是有點東西的,問的很全。linux那個和git rebase不太清楚,其他的基本都o(jì)k,然后約了二面。

          美團(tuán)二面(部門A)

          1. 自我介紹
          2. 諸多業(yè)務(wù)問題
          3. 你期望的業(yè)務(wù)場景或者工作環(huán)境
          4. js為什么會有回調(diào)地獄呢
          5. 為什么java沒有回調(diào)地獄
          6. promise.all返回的是什么
          7. promise和async你覺得差異點是什么
          8. 算法1:rgb轉(zhuǎn)16進(jìn)制函數(shù)
          9. 算法2:
          //實現(xiàn)一個retry函數(shù)
          //如果fn返回成功,則打印一下,最終結(jié)果成功
          //如果fn返回失敗,則打印times下,最終結(jié)果失敗
          retry(fn,times)
          retry(() => {
            console.log('doing')
            return Promise.reject(Error('done'))
          }, 3)

          retry(() => {
            console.log('doing')
            return Promise.resolve('done')
          }, 3)

          1. 打印題
          var a = 20;
          var test = {
            a40,
            init() => {
              console.log(this.a);
              function go() {
                console.log(this.a);
              }
              go.prototype.a = 50;
              return go;
            }
          };

          var p = test.init();
          p();
          new p()

          面試感受:

          題基本都答上來了,莫名掛。被打撈的時候問了一下一面面試官,他表示也很迷,說確實有二面面試記錄,但是沒評價??

          美團(tuán)一面(部門B)

          1. 自我介紹
          2. koa-compose實現(xiàn)
          3. react權(quán)限路由實現(xiàn)
          4. 前端路由實現(xiàn)原理(對比react,vue)
          5. 單頁面應(yīng)用和傳統(tǒng)服務(wù)端渲染的差異比較
          6. 前端頁面性能優(yōu)化
          7. nginx 負(fù)載均衡配置
          8. node端處理大文件上傳
          9. react hooks用過哪些
          10. react使用心得
          11. redux模板語法的改良(使用裝飾器)
          12. 聊一下代碼檢查(eslint,ts)
          13. 防抖節(jié)流區(qū)分,手寫
          14. 實現(xiàn)map,reduce
          15. 統(tǒng)計字符串中次數(shù)最多字母

          面試感受:

          和面試官聊的很帶勁,好家伙,相見恨晚。面試結(jié)束不到一小時hr打電話約二面,并告知一面給了滿分。

          美團(tuán)二面(部門B)

          1. 如何區(qū)分函數(shù)是new調(diào)用還是直接調(diào)用
          2. 解釋下下面兩段代碼執(zhí)行結(jié)果的差異
          function foo() {
              foo();
          }
          function foo() {
              setTimeout(() => {
                  foo();
              }, 0)
          }
          1. requestAnimationFrame 和 requestIdleCallback了解嗎
          2. 說下react的key
          3. node中加載相同模塊,會重復(fù)打印嗎
          //a.js 
          function foo() {
              console.log('foo'); // 
           }
          foo();
          //b.js
          require('./a.js');
          require('./a.js');
          //node b.js

          1. 如何設(shè)計這套緩存
          2. http模塊起一個服務(wù),如果想修改請求體并轉(zhuǎn)發(fā)給另一個服務(wù),怎么實現(xiàn)
          3. 說下react-redux干了什么事
          4. mapStateToProps的第二個參數(shù)作用
          5. 實現(xiàn)一個Map
          6. 說下react常用的性能優(yōu)化手段
          7. linux中exec ls 和ls 差異
          8. linux 中的source了解嗎

          面試感受:

          我和面試官都提前到了視頻會議室,然后我提議可以提前開始。面試官說ok,大概是45分鐘。好家伙再問一個,再問一個,再問一個...差不多一個半小時,刺激。最后莫名掛掉,原因未知...

          去哪兒網(wǎng)一面

          1. 自我介紹
          2. 說一下項目中遇到的挑戰(zhàn)和你認(rèn)為的亮點
          3. 能說一下你用mvc模式重構(gòu)node業(yè)務(wù)代碼的大概方向和效果嗎
          4. 說下跨域
          5. 這個項目里前后端聯(lián)調(diào)的話,有問題一般怎么排查(表示基本都是自己寫)
          6. 追問:為什么是都要自己寫呢?(相對偏向全棧,人少)
          7. 感覺你個人比較喜歡node,是想往這個方向發(fā)展嗎
          8. 對技術(shù)?;蛐录夹g(shù)上是怎樣的一個態(tài)度
          9. 項目中寫的css多嗎,主要是哪些?(說了less,css,styled-components)
          10. 有沒有接觸過移動端,小程序,App這些場景
          11. 有在面其他公司嗎?進(jìn)展?
          12. 為什么剛工作不久離職了
          13. 你說離職是追求技術(shù)的突破,能解釋下你想要的是怎樣的嗎
          14. 對于公司和業(yè)務(wù)部門,你更傾向哪一邊的考慮(類比了選學(xué)校和選專業(yè))
          15. 事件循環(huán)的打印題(比較基礎(chǔ))
          setTimeout(() => {
              console.log(1)
          }, 0)
          new Promise((resolve) => {
              console.log(2)
              for (let i = 0; i < 10000; i++) {
                  if (i === 9999) { resolve() }
              }
              console.log(3)
          }).then(() => {
              console.log(4)
          })
          console.log(5)

          面試感受:

          女面試官,聊的也還行,比較滿意我的表現(xiàn)吧,很快約了二面,現(xiàn)場。

          去哪兒網(wǎng)二面

          1. 自我介紹
          2. 為什么剛工作不久就離職
          3. 諸多業(yè)務(wù)問題
          4. 說下你擅長的
          5. 解釋下重繪和回流
          6. 說一下你知道的瀏覽器渲染相關(guān)的點
          7. 你覺得有哪些優(yōu)勢
          8. 平時怎么學(xué)習(xí)的
          9. 說下tls握手
          10. 還有在面其他公司嗎?
          11. 前端如何做性能優(yōu)化
          12. 算法1:數(shù)組中出現(xiàn)最多的數(shù)字
          13. 算法2:斐波那契數(shù)列
          14. 閑聊:你覺得你的缺點是什么

          面試感受:

          感覺面試官有些漫不經(jīng)心,簡單聊了聊,然后我說了期望薪資,好家伙,估計又說多了...沒后續(xù)。

          致謝

          在我看來,面試并不是一個人的戰(zhàn)斗。站在巨人的肩膀上,可以加快你前進(jìn)的速度。感謝這一路上,直接或間接給我?guī)椭拇罄袀?排名不分先后。

          • 磐沖, 曾多次參加磐沖大佬組織的直播面試,表示受益良多。
          • 張仁陽, 珠峰架構(gòu)公開課諸多知識點面試命中
          • 若川, 源碼系列收獲頗豐
          • ssh,  react性能優(yōu)化方案,多次面試命中
          • 神三元,靈魂之問系列查漏補(bǔ)缺
          • 卡頌,react源碼系列,多次面試命中
          • 阿紫, 鼓勵君+祝福小天使
          • 大月, 經(jīng)歷很相似的戰(zhàn)友,抱團(tuán)取暖

          相關(guān)鏈接

          • 紅寶書第四版:https://www.ituring.com.cn/book/2472
          • js靈魂之問(上):https://juejin.cn/post/6844903974378668039
          • js靈魂之問(中):https://juejin.cn/post/6844903986479251464
          • js靈魂之問(下):https://juejin.cn/post/6844904004007247880
          • css世界:https://www.cssworld.cn/
          • flex小青蛙:http://flexboxfroggy.com/
          • flex阮一峰博客:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
          • 卡頌的react技術(shù)揭秘:https://react.iamkasong.com/
          • 若川的源碼系列:https://juejin.cn/user/1415826704971918/posts
          • 難涼熱血的vue源碼分析:https://nlrx-wjc.github.io/Learn-Vue-Source-Code/
          • 數(shù)據(jù)結(jié)構(gòu)與算法之美:https://time.geekbang.org/column/intro/100017301
          • 政采云團(tuán)隊的博客--算法篇:https://101.zoo.team/
          • 天天的前端算法總結(jié):https://juejin.cn/post/6900698814093459463
          • ssh的前端算法進(jìn)階指南:https://juejin.cn/post/6847009772500156429
          • 修言算法小冊:https://juejin.cn/book/6844733800300150797
          • 謝希仁的計算機(jī)網(wǎng)絡(luò):https://item.jd.com/12219883.html
          • 神三元的http靈魂之問:https://juejin.cn/post/6844904100035821575
          • 瀏覽器專欄:https://time.geekbang.org/column/intro/100033601
          • nginx筆記:https://blog.csdn.net/qq_42813491/article/details/103117799?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522160938095216780302981460%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fblog.%252522%25257D&request_id=160938095216780302981460&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v2~rank_v29-1-103117799.pc_v2_rank_blog_default&utm_term=nginx
          • linux筆記:https://blog.csdn.net/qq_42813491/article/details/88379799

          社群

          字節(jié)跳動 IES 團(tuán)隊預(yù)備招聘社群,加我好友即可加入社群。

          加入社群后你能收獲什么:

          • 我和我的同事們會在群里和大家一起聊聊字節(jié)跳動對前端工程師的要求。
          • 收集一些大家的疑問,整理成 QA 文檔發(fā)布,解答一些常見疑惑。
          • 這是一個氛圍輕松的群,大家可以聊技術(shù),也可以聊生活中的趣事。
          • 這個群會長期發(fā)展下去。
          • 如需內(nèi)推,可以私聊我,一對一指導(dǎo)簡歷。
          目前這個群僅限200人,但會一直發(fā)展下去。即使你不打算很快面試,也可以先加入社群哦,絕對是你今年做的非常正確的一個選擇!

          加好友記得備注 "IES" 才可通過




          點個在看你最好看



          瀏覽 31
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产毛片在线看 | 黑人激情操逼 | 最近最好的2019中文 | 一级黄色天堂网片 | 小骚逼逼舒服使劲操逼 |