動態

詳情 返回 返回

從外包跳槽甲方,BOSS上1910個溝通、353次簡歷發送、21場面試,通過9家,最終選18K的offer,最高漲幅26.7% - 動態 詳情

前言

  • 筆者的一個好友(女生),學歷普通一本,非科班出身,在國內一家大型外包公司上班
  • 因遲遲無法轉正成為正式甲方員工(當初入職的時候承諾,有一定的機率轉正成為甲方員工)
  • 且在這家公司認真工作了三年多了,三年只漲工資500塊錢
  • 遂在六月份開始準備跳槽去甲方
  • 歷時將近三個月,總算是在8月底拿到了自己滿意的offer
  • 一共是通過了9家的面試,其中有6家是外包公司(練手的面試)
  • 當然,外包的公司,在通過後,沒有接對方的offer,以免耽誤對方招聘
  • 拿到了三個甲方的offer,分別是17.8K、18K、19K(她當前是15K)
  • 最終她選擇去了18K的這家公司(17.8K的公司HR説可能會有大小周的情況、19K的公司是初創型公司應該會稍微辛苦一些)
  • 特此分享其面試過程中的一些細節

感謝她提供的文章素材,涉及到個人隱私,簡歷和offer文章不展示

在職跳槽——平衡面試安排

  • 首先,她因為是在職狀態,不方便頻繁請假
  • 所以,儘量是和麪試官溝通,電話面試+視頻面試
  • 能不去對方公司,就不去對方公司
  • 實在是必須去現場的時候,才會調休請假下午半天動身前往
  • 且,會在這個下午半天,提前協調好公司面試時間,規劃好路線
  • 風馳電掣般面試至少兩家公司,將效率提到最高
  • 面試中錄音,面試後及時覆盤
  • 針對於面試中,遇到的自己不會的問題,當天就爭取將其研究明白
  • 用她的話説,面試也是學習,查漏補缺的過程

面試策略——從外包公司練手開始

  • 筆者朋友因為三年多面試了,所以,簡歷還是以往老舊的版本(主Vue副React)
  • 在花費了一週多,更新簡歷項目後
  • 於是,從外包開始練手(找面試感覺)
  • 在面試的過程中,再適當去優化完善自己的簡歷內容
  • 經過六月份的前期練手後
  • 在七月上旬,感覺到自己練手工作已經完成的差不多了
  • 於是,便開始投遞甲方公司(部分公司的招聘流程有些長...)
  • 經過一輪、二輪、三輪甚至還有四輪面試(聽老闆講未來公司發展前景...)
  • 最終,拿到offer選擇覺得合適自己的公司入職

面試中,印象深刻的幾個問題

問題一:一個數據加工後端説是前端做,前端説是後端做,你如何溝通

  • 筆者朋友的回答是:如果後端時間多一些,就商量讓後端加工,如果前端時間充足,就前端幹
  • 面試官:要做好開發規範,你不要當一個老好人,啥活都往自身上攬,所有數據加工的操作,都要儘可能讓後端操作。比如,菜單的樹結構數據,後端數據庫存儲的是一條又一條數據,通過parentId去關聯子節點,後端還是應該要加工好一個樹結構的數據返回給前端的,不能説讓前端加工。
筆者朋友連連點頭,內心吐槽,後端要是不好商量,不聽也沒辦法呀,加工的活還是得有人幹呀

問題二:有一個需求很緊急,加班也幹不完,你如何處理

  • 筆者朋友的回答是:評估具體需要延期多久,儘可能趕一趕加加班,把延期部分的需求,延期上線,已經做完的需求先上線,若是這一版本啥都不上線,的確不太合適
  • 面試官:你思考的重點應該是為何會出現很緊急的需求,加班也幹不完的情況,不要本末倒置
筆者朋友連連點頭,內心吐槽,前端開發人微言輕,產品硬塞一個需求,也只能儘可能趕一趕咯

問題三:你是什麼星座?

  • 筆者朋友有些懵...
  • 面試官:比如雙魚座的人,性格就有些脆弱,抗壓能力就不行
筆者朋友連連點頭,內心吐槽,星座命格真的靠譜嗎?要不要來點占卜?(面試官是一個女生)

問題四:如果你接手的項目寫的很爛,這種情況下你會如何處理?

  • 筆者朋友的回答是:首要是保證項目正常運行,新需求,儘量規範起來,往事不諫,來者可追
  • 面試官:你要儘量想辦法,把爛代碼變成高可用的代碼,要膽大心細,去優化完善這些爛代碼,這樣才能體現你的價值
筆者朋友連連點頭,內心吐槽,詩山代碼上雕花嗎?這...

話不多説,以下是她遇到的部分面試題,大家參照一下,看看是否都會,都能回答上來

面試題

一號面試

  • 預覽功能,用的是什麼技術?前端怎麼實現?怎麼不讓後端實現
  • 大文件上傳用的哪個庫?還有其它包嗎?是怎麼實現説思路?
  • 自動化腳本寫過嗎?怎麼實現的?
  • 如何處理git回退版本的情況?
  • Vue2和Vue3的區別?瞭解過她們的diff算法區別嗎?
  • JS和TS的區別?
  • Vue3模板語法和JSX哪個性能更好一點?
  • nodejs的express框架,簡單介紹一下
  • Vue裏面的指令
  • Vue組件通信方式
  • Vuex或者pinia説一下數據的流轉方式
  • Vue2的時候有遇到什麼問題,怎麼解決的?-->最近項目中遇到什麼問題,怎麼解決的
  • 寫React用的函數式,常用的hooks都説一下
  • Webpack和Vite的區別
  • Webpack項目大了,包大了,冷啓動和熱更新慢了,有什麼方案?
  • Vite的缺點,技術選型的時候都得考慮
  • 微前端用的乾坤?父應用和子應用如何通信?iframe通信如何實現的?
  • nginx裏面有哪些API?
  • nginx的應用場景
  • node裏面如何新開一個線程?主線程和子線程是怎麼通信的?
  • js數據基礎類型?Map和對象有什麼區別?
  • 如何判斷數據類型?
  • “==和===的區別”
  • 隱式轉換的東西
  • 項目平時是怎麼管理的?
  • revert 和 reset的區別
  • --host和--hard的區別
  • 説説git的stash
  • Webpack配置哪些東西?從0到1配置哪些東西

二號面試

  • 簡單的講一下,技術上自己的優勢,作為前端的開發自己的特長和優勢
  • 開發任務時候怎麼樣的思考模式
  • 這個思考方式的優勢是什麼?
  • 期望的環境和團隊
  • 第一個項目週期,時長,在項目中的工作和角色
  • 數據加載這個難點,是怎麼去想到這個問題的,
  • 技術上怎麼去實現觸底加載的功能的,邏輯怎麼實現的
  • 這個項目整體結束後,學到了什麼,自己有什麼成長
  • 介紹一個曾經做過的項目
  • 加載慢,為什麼慢?如何分析,你的分析手段是啥?
  • 現在會如何去優化小程序
  • css3的一些特性
  • flex佈局實現哪些功能上,結合具體的項目去介紹
  • 自適應用到哪些技術點
  • 項目開發中常見的ES6的語法
  • ES6深拷貝
  • 你自身還有什麼不足
  • 你的職業規劃,
  • 最近研究的問題
  • RBAC,瞭解到其它的角色模式嗎
  • promise.all
  • 對數字孿生的瞭解,就是大屏
  • 我的問題
  • 良好的編碼習慣,code review咋做的

三號面試

  • 介紹一個你的項目,挑一個你認為是自己做的比較複雜的,詳細講一下用到的技術棧、遇到的問題及如何解決的
  • 剛剛提到的文件預覽的難點在哪裏
  • 打開美團APP看首頁,你從前端開發的角度,你認為可以封裝的組件有哪些?
  • 美團購物車這個頁面,組件會怎麼設計?
  • 組件中消息傳遞如何設計?
  • 現在開發一個管理系統,系統中會用到表格展示數據,不同頁面需求有差異,有的要排序,有的要可選,列配置不同,自定義單元格渲染,你如何設計一個可複用組件滿足這些需求?
  • 實際項目中,有沒有處理過這種表格組件業務邏輯解耦
  • 有做過優化嗎?(性能優化)
  • eachrts提供的渲染模式有哪幾種?
  • 項目中有遇到跨域的問題嗎?如何解決?
  • 詳細講一下,從瀏覽器接收到html到完成渲染的過程
  • 如何控制緩存
  • 你的優勢是啥
  • 短板和長板
  • 一個數據加工後端説是前端做,前端説是後端做,你如何溝通
  • 有一個需求很緊急,加班也幹不完,你如何處理

四號面試

  • 做過這麼多項目,挑一個你覺得自己做的比較好的項目講解一下
  • 談談你對大模型的理解
  • 現在有一個數字人功能,你的思路是啥
  • package.json生命週期
  • vite插件開發過嗎?
  • webpack構建有很多過程,你認為你寫的這個loader是在什麼時機執行的?
  • webpack執行過程知道嗎?
  • 你項目中遠程大數據下拉框 的觸底加載是如何實現的?觸底加載的三個高度,你記得是它們的關係嗎?
  • 觸底加載除了滾動條監聽,還有其它方法嗎?
  • Vue2和Vue3的區別?
  • 説一下Vue2的mixin
  • mixin中屬性方法和組件內屬性方法衝突,如何處理?
  • mixin中生命週期和組件內生命週期衝突,如何處理?
  • mixin在Vue3中怎麼用?
  • ElementPlus的tree組件,如果讓你去設計,你會如何設計?
  • 給你一個tree的數據結構,深度不知道,渲染出來,渲染過程如何實現?
  • dfs和bfs
  • 三欄佈局,左右兩邊固定,中間自適應,如何實現?
  • 用flex:1,那兩邊寬度大,內容較少,中間寬度小,但內容較多,會出現什麼情況?
  • 除了flex可以實現,還有用別的方式實現嗎?
  • 定位,A元素相對窗口絕對定位,A元素有子集B也是絕對定位,子集B最後是相對於 誰 定位的?

五號面試

  • 自我介紹和最近1-2個核心項目擔任的角色和職責
  • 我的問題偏原理和概念比較多,你的回答可以多偏向這個方面。
  • Vue3的響應式系統是怎麼工作的,和Vue2的區別是什麼?
  • Vue組件間的通信方式有哪些?
  • Vue裏面虛擬DOM是什麼?
  • Vue項目做性能優化主要關注哪些點或者説怎麼做?
  • Vue中ref和reactive有什麼區別?
  • Vue中的key屬性的作用是什麼?
  • 封裝過哪些組件,介紹一下有亮點的組件
  • Vue組件的懶加載是怎麼做的
  • Vue第一次進入頁面會觸發哪幾個生命週期
  • 介紹一下插槽的類型和作用
  • 計算屬性和watch的區別和應用場景是什麼?
  • Vue中路由實現hash和history模式的區別介紹一下
  • 介紹一下Vue-Router的跳轉是怎麼跳的
  • 介紹一下Keep-alive是幹嘛的,使用場景是什麼?
  • Vue雙向綁定的原理
  • 在複雜系統裏面,講一下狀態管理方案和思路
  • Vue的代碼分割做過嗎?大概介紹一下
  • 代碼分割的目的是什麼?
  • 我們這次對前端的標準化構建要求比較高,項目從開始到落地整個前端工作過程中,對標準化,工程化,流程化有要求的話,你覺得要注意的關鍵點有哪些?

六號面試

  • 第一份工作2年的時間做的是什麼項目呢?
  • 為什麼從第一家公司離開呢?
  • 任選一個你的項目介紹一下,説你自己做的部分
  • 你做的效能開發工具,後面有評估節省了多少時間嗎?
  • 你為什麼想要從現在這家公司離職
  • 這三年你有學新的東西嗎?當前公司
  • 你做的最大的項目簡單介紹一下
  • 你想找一個什麼樣的工作?
  • 項目中要和產品,UI,後端配合,你認為哪一個崗位最好溝通,哪一個最難溝通?
  • 你做過這麼多種類的項目,你個人更喜歡哪一類的項目?
  • 你是什麼星座?
  • 如果項目上線前,發現一個非技術問題,比如説一個重要流程沒考慮到,時間又很緊,你會怎麼處理?
  • 團隊如果有人對你的技術選型有不同的意見,你怎麼溝通和處理?
  • 你是非計算機轉行過來的,你這個背景有沒有給你帶來獨特的視角?
  • 你認為你現在跟入行時候有什麼區別?
  • 你認為你身上有你團隊人員喜歡和信賴的點是什麼?

七號面試

  • 目前在職還是離職?
  • 選一個你的項目講一下背景,功能,你負責的模塊,遇到過哪些難點和問題,如何解決的?
  • 為什麼要把文件給到後端,讓後端去存minio,為什麼不直接從前端往minio裏面存呢?
  • 請求失敗重試如何實現
  • 請求併發,和請求順序控制
  • 講一下xx項目的性能優化
  • 雪碧圖,具體怎麼實現,具體css代碼是啥
  • 緩存到底是存在那個地方?
  • memory cache 和 disk cache
  • 用户看到A屏幕時,有沒有什麼辦法把後面B屏和C屏的內容加載?
  • 強水印功能如何實現的?這個API換個IE瀏覽器可能就失效了,有什麼方案解決嗎?
  • nodejs可以做後台服務器,做過哪些服務?
  • 接手老項目,封裝requet請求就是http請求的包,在項目中有一層封裝叫request.js,request.js中使用axios的包做http請求,你有一個新功能,有一個接口超時時間長,超過10s,老代碼裏面默認全局超時是10s,新功能受限,會報錯超時,需要你把request.js再次封裝,達到2個目的,
    1、不指定超時時間時,超時時間默認10s
    2、需要指定時間時,超時時間為20s
    如何封裝這個request.js實現這個功能
  • 有5000支股票,每3秒從中挑選出2000支股票的數據實時刷新頁面,如何才能快速篩選。
  • 現在 讓你重構一個項目,你的策略有哪些?

八號面試

  • 中間層瞭解過嗎
  • 有處理過大模型數據不是一次性返回的的嗎?流式返回數據瞭解過嗎
  • 大文件分片上傳怎麼處理的?
  • 講一下你寫的這個效能工具
  • Vue3和Vue2的區別
  • 為什麼Vite比Webpack快?
  • 你寫的這個自定義loader為什麼要這麼做?
  • 你項目中做了哪些性能優化?
  • 你的虛擬列表是怎麼處理的?
  • CSS一般是怎麼寫的?用到過tailwind嗎?
  • 若依框架是用的全部,還是隻用的前端?瞭解過它登錄時的加密算法嗎?
  • Vue3的Watch和WatchEffect的區別
  • Vue3的組件通信方式有哪些?
  • Pinia相對Vuex好在哪些地方?
  • TS用的多嗎?
  • 模板編譯原理了解過嗎?源碼看過嗎?
  • 頁面中有併發請求,是怎麼處理的?
  • 有做請求的隊列方式嗎?
  • 對ElementPlus有封裝過組件嗎?
  • 通用的組件,是從一個項目copy到另一個項目嗎?
  • 除了若依框架,還用過其它的成熟框架嗎?
  • 談談你對低代碼平台的理解
  • 談談你對0代碼平台的理解

九號面試

  • 項目工作情況,個人優勢,先介紹一下
  • 有用過流程引擎,表單引擎嗎?
  • 你做過的大一點的項目的人員配比
  • 項目的工作流程
  • 個人作品有嗎?
  • 為什麼要離職?
  • 現在公司加班多不多?
  • 原生js實現lcp
  • 寫一個冒泡排序,還有別的排序方式嗎
  • react路由、redux
  • 函數式組件和類組件
  • react和vue涉及的理念,談談
  • 談談你對於技術選型的理解
  • 你的組員對於某個技術選型有着不同的理解,你如何安排協調溝通
  • 你有產品思維嗎?或者説前端應該涉足產品設計嗎?
  • 前端應該涉足後端設計嗎
  • 你會自測嗎?你如何把控代碼質量
  • 是什麼完美的沒有任何bug的性能高效的廢代碼?
  • 談談對面試百度編程的理解
  • 接觸的項目都是從0到1還是半路接手的?
  • 半途接手項目,如何快速熟悉項目,做開發任務?
  • 如果你接手的項目寫的很爛,這種情況下你會如何處理?

十號面試

  • 數據data為什麼是一個function
  • 用過mixin嗎?
  • vue3的setup和create先執行?
  • 介紹封裝組件
  • 説説插槽的使用場景
  • 大文件上傳你是如何實現的?
  • 文件預覽組件你是如何實現的?
  • vue3組件通信,$attr是如何使用的?父組件訪問子組件的一些方法啥的,需要什麼條件?
  • v-model實現原理
  • ref和reactive區別,從底層原理説下
  • v-if和v-show的區別
  • 三次握手為什麼要比四次揮手少一次
  • 瀏覽器輸入url發生了什麼
  • 狀態碼説一下,工作中具體遇到的狀態碼
  • 項目發佈使用docker嗎
  • 説一下鏈表的具體應用場景
  • 你刷了多少道算法題?算法場景題
  • 手寫一個深度克隆
  • 比較兩個對象是否相等
  • 為何有閉包這個東西,它解決了什麼問題
  • 你如何看待加班?
  • 你有什麼想要問我的嗎?

好友的總結

以下,來自筆者好友的總結
  • 面試中,時有沮喪,失落,時而我又可以了。
  • 但是!!
  • 每天堅持學習,你可以打敗10%的人,
  • 每天堅持投遞,你又打敗10%的人,
  • 每場面試錄音回顧,你又打敗20%的人,
  • 你堅持動作一個月,你又打敗10%的人。
  • 你已經打敗一半的人啦!!!
  • 好的面試官,確確實實使人如沐春風。
  • 好的面試,錄音反覆聽,讓人回味無窮,且温故而知新。
  • 感謝給面試機會的公司,面試中願意解釋,願意引導的面試官!!
user avatar b_a_r_a_n 頭像 sy_records 頭像 morimanong 頭像 kubeexplorer 頭像 alienzhou 頭像 everfind 頭像 nidexiaoxiongruantangna 頭像 munergs 頭像 faurewu 頭像 doupifaner 頭像 kestrel_task 頭像 ox1dp6ei 頭像
點贊 17 用戶, 點贊了這篇動態!
點贊

Add a new 評論

Some HTML is okay.