上海疫情後一個前端的面試心路歷程

語言: CN / TW / HK

theme: nico

前言

主要記錄了筆者在上海疫情後一系列"機遇", 之所以稱之為"機遇", 是因為最後結果是好的。

狗血

經歷了上海三、四、五月份疫情, 打亂了我好多計劃, 如訂婚、拍婚紗照。

好在六月份可以復工了, 身為程式設計師疫情期間一直居家辦公。 但六月份復工第二天, 中午公司傳出小道訊息, 三月份工資發一半、四、五 月份工資不發, 下午企業微信打卡記錄等入口也關閉了。

下午,部門領導也一一約談了,結果和小道訊息一樣,同時宣佈六月份起, 實行幹一休一, 工資減半。

堅持一個月後, 七月初, 收到了裁撤部門和裁撤崗位的通知及公司破產清算的訊息。

值得慶幸的事

首要感覺慶幸的事是身在上海沒感染新冠, 政府疫情期間發了三箱泡麵。

公司六月份做一休一之際, 回老家裝飾老房子, 新房裝修選料以及訂婚。

公司發了三月份一半薪資, 及意料外的四、五月份的上海最低工資 2590 元

以及裁撤部門爭取後的 N 個月工資

也藉此機會去威海拍了婚紗照, 回來後準備面試。

分享簡歷技能點

  1. 精通HTML+CSS+JavaScript等前端基礎技術,根據設計圖還原視覺性設計,相容各大主流遊覽器,也能夠進行移動端的開發;
  2. 精通Vue以及相關全家桶,可高質量且快速地完成專案;
  3. 熟悉webpack,git等前端工程化內容,具有前端效能優化、前端工程構建相關經驗;
  4. 熟悉Node.js、TypeScript、Koa、React、MySql;
  5. 理解資料結構、計算機網路、規範化、微前端、微信小程式服務商模式
  6. 理解前後端分離設計和模組化設計思想, 熟悉常用設計模式,能夠獨立進行元件開發;

面試準備

當然面試題準備更多的是對自己已經掌握的知識的補充和鞏固, 如果時間有限還是建議把時間用在對已有基礎的鞏固和補充上。

前端基礎

市面上最多見的高頻面試題阿里面試題, 可以助你對付 HTML、CSS、JavaScript、計算機網路、遊覽器等基礎題

比如我在面試中就遇到過一下幾個問題:

  1. 陣列去重的幾種方法?
  2. 陣列拉平的幾種方法?
  3. JS 的資料型別有哪些?及判斷陣列型別的幾種方法及優缺點?
  4. 談一談你對閉包的理解?
  5. 說一下 http 和 https 的區別?
  6. 在位址列裡輸入一個 URL,到這個頁面呈現出來,中間會發生什麼?
  7. cookie、sessionstorage、localstorage 的區別?
  8. 談一談 TCP 和 UDP 的區別?
  9. 如何用 CSS 畫一個三角形? 如何用 CSS 畫一個五角星?
  10. 知道 BFC 嗎?談一談對 BFC 的理解?
  11. JS 深拷貝的具體實現?

一般面試官都是從基礎面試題聊起,一步步深入考察面試者的能力,所以把基礎應放置在前面,另外複習基礎題時間不宜過長,一週左右為佳。

面試體系

推薦一些面試方向方面的部落格

JS 進階

推薦一些我準備過程中發現的一些好的資料

原生 JS 系列

手寫部分可以試著理解並動手敲敲, 我在面試遇到了:

  1. 試著手寫實現 call 寫思路也可以
  2. 手寫實現深拷貝, 注意相互引用情況

ES6 系列

ES6 部分有重合, 複習時可忽略重複部分, 這部分大多工作時長使用, 相對花費的時間較少

非同步相關

在面試過程中遇到手寫 Promise 的筆試題

中介軟體機制

因為在技術點欄寫了 koa, 所以針對中介軟體也看了一部分的文章, 進行查漏補缺

設計模式

框架部分

Vue 和 React 有什麼不同

  • 可以從開發角度、理念、語法、資料通訊等方面進行總結,基本是必問題。

Vue 基礎

  • 看累了文章,就去嗶哩嗶哩看看視訊面試題,金渡的課是真的多,不過還是推薦珠峰的課vue 原始碼分析
  • 總體珠峰的課比較適合我, 我看了一些珠峰的公開課,訓練營

文章的話就不推薦了, vue 面試中佔得比較最高, 但多為基礎題和與原理題, 並沒有遇到細問原始碼的面試官, 對原理了解並瞭解怎麼實現的, 大部分面試官不會太為難。

React 基礎

React 水平有限,就不推薦資料了

工程相關

webpack 還是要學的, 會配置, 熟悉 webpack 原理並試著手寫簡易版 webpack、tapable, 助你漲薪 2k

工程相關方面也是我比較薄弱的地方, 也是補了挺多的。

其他

因為時間有限, Node、TS、MySql、資料結構、微前端、小程式相關知識並沒有進行復習,也是把自己工作中知道說出來。

不過也遇到了一些面試題:

  1. MySql 中,怎樣聯結兩張表,並去重?
  2. TS 中介面 interface 與 type 區別?
  3. 微前端你研究到哪一步了?乾坤中通訊?
  4. 聊一聊微信小程式支付?微信小程式整個登入流程?
  5. 演算法題: 整數陣列 nums 和一個整數目標值 target? 求兩數之和並返回對應下標?
  6. 給你一個單項大於 6 的整數陣列, 連續三個連續的自然數, 其中兩個是質數 第三位能夠被整除?
  7. 刪除有序陣列中的重複項?
  8. 不使用陣列的方法, 找到陣列中重複項的最優解?

簡歷

  1. 可以將不必要的資訊去掉, 看起來簡潔為佳;
  2. 可以適當包裝, 但基於真的做過, 也要時常總結歸納覆盤;
  3. 將專案做過比較複雜的部分進行補充總結, 當做一個亮點來說;
  4. 寫完簡歷後, 要研究自己的簡歷, 存在哪些問題, 你看到這份簡歷會問什麼;

面試情況

上海的疫情餘溫還在,招聘機會比以前少很多,倒閉的公司太多了,崗位有限。

面試了不到兩週的時間, 面試了十來家, 基本所有的公司技術面試都過去了,有幾家也到了人事面,到也明確說了候選者不少,我要的薪資較高 + 學歷低(大專,自考中)。

給了 offer 的有 5 家。

目前薪資不方便透露, 較上家漲了 6k。

總結

因為自己今年計劃的事挺多的, 沒有太多的時間繼續面試。

今年訂婚、拍婚紗照、領證、結婚;

今年 3、4、5 月份工資差額還沒要回來,做一休一、裁撤部門、上家公司進而破產;

今年新房在裝修,需要選料、地板、牆磚各種東西;

今年 10 月份結婚及 10 月份自考,自考兩年考過了 13 課,還餘 4 科,今年 10 月份考英語。

回到前言,今年一系列的遭遇,現在也逐漸變成機遇;

現在雖然難一點,但不苦,喜歡前端,但不卷,所學的的技術都是工作中面對的技術;

寫在最後

給自己點雞血

過好每一天,演好當下的劇本,朝著心中的那個標杆去前進。人要做的不清高不矯情不抱怨,就是在黑夜中看到微光,你就朝著微光的方向走過去,雖然有的時候你會懷疑,你會覺得是不是走錯了,但是所有的懷疑都是為了確信。