為什么現(xiàn)在前端面試都不考八股文了?
作者:前端雙越老師
鏈接:https://juejin.cn/post/7336859385782583308
年前就有和幾個同學(xué)在和我聊天的時候,說:現(xiàn)在面試都不考基礎(chǔ)知識和八股文了,上來就聊項目。
其實我也很早就意識到這個問題了,現(xiàn)在和前幾年完全不一樣了。
2021年之前,隨便寫個簡歷,背誦 1-2 周八股文就可以去面試了。而現(xiàn)在,每一步都很困難。
舉個例子:Vue 性能優(yōu)化方式
我經(jīng)常會問一個問題:Vue(或 React)有哪些性能優(yōu)化方式,請結(jié)合項目說明。
很多同學(xué)就開始背誦了,一般第一條是:使用 v-show 不要使用 v-if ……
他還沒有背完我就會立刻打斷他,然后追問:在你的項目中,什么情況下需要用到 v-show 請舉例說明。
一般這個時候他就懵了,不知道如何回答,因為真的沒用過 v-show。而且之前準(zhǔn)備的時候壓根想不到,光知道大家都這么說,就背誦下來,一看到問這個問題趕緊一頓輸出回答。
這種類型的問題還有很多。例如簡歷中寫“首頁加載速度提高 50%”,我會問在優(yōu)化之前具體是多少秒?再例如簡歷中寫“代碼體積壓縮 80%”我也會問壓縮之前具體的體積是多少,以及哪幾個 lib 占據(jù)的最大?
你是否真的有這方面的經(jīng)驗?一旦問到項目的具體細(xì)節(jié),立馬就能體現(xiàn)出來。這不是基礎(chǔ)知識和八股文能代替的。
為什么會這樣?
凡事都有原因,我試著來分析一下。歡迎大家來評論補充。
框架普及化
現(xiàn)在前端框架和技術(shù)棧已經(jīng)完全普及,而且基本穩(wěn)定了,就那些東西。大家開發(fā)也都會選擇一個框架,一個腳手架,直接按照框架既定的寫法來去開發(fā)。
但這也同時帶來一個問題:框架的普及會降低對程序員技能的要求。例如:
- Web 開發(fā)都使用 Vue React 組件和相應(yīng)的 API ,你就不需要再去學(xué)習(xí) DOM API 。
- 框架限制你自由的寫 JS 代碼,你也就很少能碰到像閉包、內(nèi)存泄漏等疑難問題。
- Axios 封裝了 ajax 的常見操作和配置,也讓你遠(yuǎn)離了 HTTP 協(xié)議。
- 引入各種 UI 組件庫,你都不用寫 CSS 了 (剩下的一些 CSS 寫法也都被 tailwindcss 撿漏了)
日常工作都接觸不到基礎(chǔ)知識,那面試也就被問的少了,這很正常。
工具精細(xì)化
現(xiàn)在各種腳手架,一鍵為你自動配置 webpack eslint prettier 和 TS 開發(fā)環(huán)境,不再需要你自己配置。
甚至 vite 直接內(nèi)置集成了常見的性能優(yōu)化配置,能滿足大部分場景。可能會有自定義的配置,也都被組內(nèi)的高工做了,不需要頻繁改動。
所以現(xiàn)在很多同學(xué)工作兩三年了,但壓根就沒有接觸過 Webpack vite 的配置。
同理,工作中不需要,面試也不會優(yōu)先問這些。即便問,也是問像性能優(yōu)化、原理等高階問題。
前端人員整體技術(shù)提升了
現(xiàn)在不再像 2015 2016 年時,培訓(xùn)機構(gòu)大量生產(chǎn)初級程序員,投放到市場。
剛?cè)腴T的程序員,很多都是包裝的工作經(jīng)驗,問基礎(chǔ)知識和八股文就能淘汰一大批,剩下的就可以順利工作。
現(xiàn)在大家的平均工作經(jīng)驗都在增加,技術(shù)能力都在增加。而且現(xiàn)在網(wǎng)絡(luò)上的資料和 Ke 程遍地都是,想復(fù)習(xí)基礎(chǔ)知識和八股文比之前容易多了,專心復(fù)習(xí) 1-2 周就能有很大突破。
水漲船高了,光通過基礎(chǔ)知識和八股文已經(jīng)無法判斷優(yōu)劣。工作經(jīng)驗多了,最后拼的還是真實項目經(jīng)驗。
企業(yè)崗位減少
2021 年之前,公司多,崗位多,大家都抓緊招人,組建團隊抓緊搞業(yè)務(wù)。
想快速招人,就不能那么精細(xì),就盡量用標(biāo)準(zhǔn)化的流程和方法,像算法、原理、基礎(chǔ)、八股等這些都比較受歡迎。快呀,而且不會有什么大的差錯。
現(xiàn)在崗位少了,招一個人不容易,而且來應(yīng)聘的還挺多,競爭激烈,那企業(yè)就得精挑細(xì)選一下,面試就得問點實際的。
我們該如何應(yīng)對?
當(dāng)前:認(rèn)真準(zhǔn)備自己的項目經(jīng)驗
第一,你要認(rèn)真寫好簡歷,把你項目的內(nèi)容和亮點都準(zhǔn)確的表達(dá)出來。你可以看看我的 1v1 優(yōu)化簡歷的一些案例分享[1] 。
你得拿出 大廠程序員寫晉升 ppt 的勁頭 來寫簡歷。PS:他們都提前一個月就準(zhǔn)備 ppt ,上班天天琢磨 ppt 怎么寫,而且要經(jīng)過幾輪模擬答辯。
第二,提前準(zhǔn)備面試時的項目介紹和項目難點,尤其是項目難點。你不提前準(zhǔn)備好,面試時就可能說不順暢、不全面。我之前寫過一篇文章 前端面試必考題:介紹項目和項目難點[2] 可供大家參考。
接下來:參與到一個復(fù)雜項目中來,提高項目技能
主要是針對工作中沒有復(fù)雜項目的同學(xué)。工作中沒有,那只能業(yè)余找一個練手。
PS:時間在一年一年的過,工作經(jīng)驗多了,也會對你的項目復(fù)雜度要求更高。
所謂的“真實項目” “復(fù)雜項目” 還有更厲害的“企業(yè)級項目”,這些詞都被各種ke程用爛了,大家一定要擦亮眼睛。
至少要包含如下條件:
- 真實上線運維的項目,能親自注冊使用的,看得見摸得著的。要有域名、備案、SSL 證書、服務(wù)器或 Serverless 服務(wù)、數(shù)據(jù)庫、CND、OSS、統(tǒng)計、監(jiān)控報警等基礎(chǔ)服務(wù),最好還有手機號注冊、微信掃碼登錄、微信支付或退款,等常見功能
- 全棧項目。擁抱全棧吧,純前端,切圖仔,未來沒有前途的。前端框架和技術(shù)棧已經(jīng)未定了,你再去卷源碼、造輪子沒有太多意義的。node 全棧(或 SSR)卻有另外一片天地
- 一個有前途、且實用的業(yè)務(wù)方向。例如低代碼、中臺 已經(jīng)過時了,開源項目也不可持續(xù),都不好。目前看來,AIGC 是一個不錯的方向(就在前兩天 OpenAI 發(fā)布 Sora[3] 智能生成視頻,刷爆朋友圈)
我目前也在考慮這方面的事情,有了確定的想法再和大家分享吧。如有建議可以評論或者私信告訴我。
總結(jié)
前端面試減少了基礎(chǔ)知識和八股文的考察,更多聊項目經(jīng)驗。我覺得這很好,能篩選出更加專業(yè)的候選人,而減少“渾水摸魚”的人。同時也給了大家更高的要求:做好項目,寫好項目。
參考資料
[1]https://space.bilibili.com/697803545: https://link.juejin.cn?target=https%3A%2F%2Fspace.bilibili.com%2F697803545
[2]%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95%E5%BF%85%E8%80%83%E9%A2%98%EF%BC%9A%E4%BB%8B%E7%BB%8D%E9%A1%B9%E7%9B%AE%E5%92%8C%E9%A1%B9%E7%9B%AE%E9%9A%BE%E7%82%B9: https://link.juejin.cn?target=%25E5%2589%258D%25E7%25AB%25AF%25E9%259D%25A2%25E8%25AF%2595%25E5%25BF%2585%25E8%2580%2583%25E9%25A2%2598%25EF%25BC%259A%25E4%25BB%258B%25E7%25BB%258D%25E9%25A1%25B9%25E7%259B%25AE%25E5%2592%258C%25E9%25A1%25B9%25E7%259B%25AE%25E9%259A%25BE%25E7%2582%25B9
[3]https://openai.com/sora: https://link.juejin.cn?target=https%3A%2F%2Fopenai.com%2Fsora
