精讀《前端職業規劃 - 2021 年》

不知道你上次思考前端職業規劃是何時?javascript

若是你是一位學生,你確定對前端這個職業感到陌生,你雖然沒有經驗,但卻對將來充滿好奇,你有大把時間來思考,但可能摸不着方向,有種拳頭打在棉花上的無力感。前端

若是你已經參加了工做,不管是剛開始實習,仍是工做了 3 年、5 年甚至 10 年,必定以爲很是充實,但真正用於思考的時間足夠嗎?若是維持現狀,再過 5 年本身的提高點在哪裏?若是你對這些結論不清晰,極可能是缺少了對職業規劃的思考。java

這種缺少職業規劃的焦慮已經發展成爲了商機。當你沒有清晰職業規劃,正在迷茫的時候,培訓機構站出來講,是否是對職業規劃充滿焦慮?若是是,能夠訂購咱們的課程,名牌大廠 P10 帶你跑贏職場。其實課程確實是乾貨,但一個具體課程並不能代替你本身的思考,你須要本身想明白本身想要的,而不是被別人灌輸思想,由於職場沒有標準路線,但培訓機構的文案確實有標準寫法。webpack

因此這篇前端職業規劃是站在我本身角度寫的,你若是也在思考長線發展問題,能夠做爲參考。git

我總結出三個主要思考方向,分別是 知識分類領域深耕經濟視角github

知識分類 指的是你對知識的理解是否成體系。如今全球天天新增的知識,一我的窮盡一輩子也學不完,若是不創建一套你本身的知識篩選標準,長期發展就無從談起。web

領域深耕 是實踐,每天學習也是沒有用的,你必需要作出什麼有價值的事情,才能爲行業帶來貢獻,或者說將知識轉化爲財富。固然不一樣職業學習與實踐的比例是不一樣的,好比理論物理可能模糊了學習與實踐的邊界,而在職場環境的工程師,更容易區分什麼是學習,什麼是實踐。算法

經濟視角 是說你要可以帶着經濟視角看問題。能夠說沒有經濟活動,咱們一切學習、生產、職業都沒有任何意義,由於推進咱們學習、推進社會生產的動力是交易,沒有經濟活動就沒有需求,需求是推進一切活動的基礎。稍微理解了經濟和生產的關係,就能理解爲何技術要爲商業服務,由於任何技術都要有轉化爲商業價值的潛力才值得被研究,大到社會價值,小到產品價值,都同樣。小程序

下面我分別講講本身對每一個方向的理解。後端

知識分類

做爲前端,爲了保持技術敏銳度,咱們會訂閱許多專欄瞭解新知識。僅我知道的周更專欄就有 30 個,其實根據一些專門整理好的專欄檢索網站,每週甚至能夠看到超過 100 種不一樣的前端專欄。大部分專欄都在作文章聚合,每篇專欄聚合的文章通常有 5 篇到 30 篇不等,這樣即使去除重複,一週至少有幾百篇新的前端技術文章等你去讀,因此有些同窗會以爲焦慮,甚至喊出學不動了。

我每週寫前端精讀剛好也要找一些文章閱讀,但幾年下來,我偏偏以爲每週根本找不到有用的素材。就以本週的 javascript weekly 爲例,我摘了一些文章標題:

第二篇是經過可視化幫你理解 DOM 事件的文章,UI 頗有意思,但 DOM 事件做爲前端基礎,精讀實在不適合拿過來炒冷飯,這個知識點講一遍就好了,不必作成 UI 後再講一遍。

第二篇是講一項技術可讓 Node 運行在瀏覽器的,這確實是一個新技術,但現階段咱們不必爲這項技術找場景,只要知道有這個東西就好了,不必仔細閱讀。第三篇是對 React 的完整教程,很是體系化,但沒有新東西,適合前端新人讀,因此也不須要看。

再後面幾篇分別是框架升級帶來的特性介紹、一個有趣的可視化效果、Next.js 新手入門、如何用 Lit 框架開發組件。這些知識從直覺來看屬於可讀可不讀的,讀了吧以爲好像對本身沒什麼成長,不讀又以爲錯過了什麼,真的像雞肋。

若是你看到這些 Feed 流也有猶豫的感受,我建議你創建一套前端知識分類體系。就像學習武功,若是你不瞭解什麼是基本功,什麼是花拳繡腿,那麼天天面臨幾百本推送過來的 「武學新聞」 確實是無從學起,並且也學不過來。

在技術領域,知識分類體系是有規可循的,大體能夠講知識分爲兩種類型:通用、行業知識。

通用知識是指最爲基礎、適用面也最大的知識,好比數理化,這些知識咱們上學時都學過,工做中用到的知識都是創建在這些通用知識基礎之上的,好比沒有必定數學基礎就難以學習計算機可視化領域,由於其中會大量運用數學知識。

通用知識最有用,也最保值,因此學校時就安排給咱們了,那麼大學其實就在教通用行業知識,因此這個階段若是沒有打牢的基礎,想要彌補也很簡單,只要按照大學教材溫習一遍就行了,對於計算機領域的通用知識通常有計算機原理、操做系統、設計模式、編譯原理、數據結構、算法等。

領域通用知識看上去比較死板,而初入工做的同窗通常都在作擰螺絲釘的事,每每會忽略行業通用知識的重要性,但當你不斷深刻接觸公司核心技術時,會發現大量運用了大學裏教的那些通用知識,等用到的時候再學就遲了。

若是說行業通用知識的保值時間是 30 年,那接下來提到的行業專用知識的保值時間只有 1 年。行業專用知識就是咱們在 Weekly 上看到的大部份內容,也包括培訓班幫咱們速成的前端框架、API 等知識。這些知識很是有用,接地氣,並且剛接觸工做時第一時間就要用到,但這些知識最大的問題就是太過於上層,以致於同類產品過多,可替代性強,知識點能夠隨着新版本發佈全變了樣。

就像項目腳手架工具,如今天天都會出一個基於 webpack 或者 rollup 包裝的新品牌,這種腳手架就不值得學習,你也不須要把新出的腳手架看成新知識,由於這些知識的生命週期大部分不到一年,大多沒有人用,最重要的是除了名字之外,組成要素裏沒有任何新知識,因此讀完源碼也學不到新知識。更最重要的是,你沒法根據這些知識生產同類產品,因此若是你真的想學腳手架相關知識,認真讀好一個主流腳手架源碼就好了,之後除了工做中用到,不須要看任何使用文檔。

對於架構能力也同樣,咱們在工做中經過踩坑甚至把一個項目作失敗得出的經驗,可能只是設計模式這本書裏提到的一個常見誤區;咱們在設計一個很是複雜的系統時,用到的模塊通訊設計,可能只是操做系統設計裏的一種常見通訊方法。一個能理解操做系統複雜度的人,基本上能夠處理與其等價複雜度的軟件工程問題,而軟件工程的複雜度其實很難超越操做系統,因此與其在項目裏試錯,不如從這些基礎知識裏找答案。

因此若是你想在職業規劃上更進一步,檢查一下本身的基礎是否牢固。若是你通用知識特別紮實,就能夠快速學會行業基礎知識,根據行業基礎知識,你甚至能夠獨立創造任何一個新的框架,這些框架都會成爲別人學習到的行業專用知識,若是另外一位同窗沒有打基礎,把時間都用在學習你作的框架上,那麼他的職業發展必定程度會被你左右,而他若是隻停留在用的階段,而不瞭解實現原理,從長期來看,你的職業天花板必定會更高。

關於哪些是通用基礎知識、行業基礎知識、行業專用知識,這裏不給出具體的建議,相信每一個人都會有本身的判斷。

領域深耕

這段思考 不適用於 剛參加工做的前端同窗。

前端有一句有名的雞湯 「前端不是由於作交互界面,而是由於站在業務的最前端」,其實這句話是有問題的,我以爲每一位工做經驗超過三年的前端同窗都有一種在業務領域的無力感。

其實最核心的業務模型自然在後端,這是由於前端只是一個用戶與業務系統交互的窗口,沒有前端,用戶也能夠和接口直接交互,只是這麼作成本很大,因此爲了下降用戶上手難度,或者帶來更好的用戶體驗,才須要不斷升級 UI 界面,因此 UI 界面和後端每每是多對一的關係,移動端、小程序、網頁對應的接口都是一套,目的就是爲了方便任何場景用戶都能輕鬆觸達業務,因此做爲前端,首先要對前端存在的緣由有正確的認識。

注意這裏說的是業務模型,沒有提到體驗深度,若是講究體驗深度,天然只有前端能作到。然而前端本質仍是景上添花的部分,由於在任何行業耕耘久了,若是僅僅只考慮前端,那麼目標永遠是體驗度量、研發提效的事情,不多觸及到業務層,以致於前端在業務價值的體現不直接,比較難解釋體驗度量、研發提效與最終業務增加之間的關係。

因此對於有必定工做經驗的前端同窗,想要更進一步,必定要在業務領域深耕。

那麼如何在業務領域深耕呢?首先你要拋開前端視角,用業務眼光看問題,不然仍是會陷入無盡的交互細節。首先要了解你所在的領域,好比筆者在的數據領域,要知道行業的歷史、現狀和將來,有哪些產品,每種產品的商業模式是什麼,產品之間有什麼關聯,如今的產品距離頭部產品還有哪些差距,今年產品目標主要解決什麼問題,三年目標是什麼等等。每一個同窗首先都應該理解產品,其次再產生研發、產品經理的分工。

而後審視一下本身的工做,在產品核心能力裏扮演者什麼角色?好比作 BI 工具,其核心是數據分析能力與報表可視化分析能力,若是你總在作相似報表列表頁、我的中心這種通用中後臺的工做,你就要想一想,這些工做是否是能夠外包出去,若是不行,那就想辦法作一些領域搭建,往通用領域轉吧。

當你審視了本身工做,發現核心產品能力與你工做內容不相符,而你又不想轉到前端中後臺通用領域一直作研發提效的事情,這時候你就要想辦法和老闆溝通改變一下工做內容了,你能夠找一些前端也能接觸強業務模型的領域,好比 BI 分析,數據可視化等等。其實通用領域也有很多深水區,好比語雀背後的富文本編輯器、流程圖、研發工做臺、業務組件庫等等都是能夠作深的通用領域,當你想再上一層樓時,就要像玉伯同樣成爲語雀整個產品的引領者,這樣你其實又進入了知識協做、生產力工具這個專業領域。

若是你既不想往通用技術領域發展,又沒法改變工做內容,就嘗試承擔更多職責吧,若是可能的話,嘗試參與後端業務邏輯的開發,這樣能夠幫助你深刻、全面理解業務邏輯。其實前端 + 產品的路線也能夠很好在專業領域作深,前端 + 後端路線也能夠,你須要根據本身團隊實際狀況作出調整。

任何產品的研發團隊都要有產品全局觀,這就是剛纔說的在技術以外,你對你所在業務領域的理解程度,理解程度越高,技術方向就越明確,但若是你的職業規劃是再繼續攀爬,就要成爲整個產品負責人了。如今的年輕人很是上進,許多公司都在嘗試採起活水政策,讓想更進一步的年輕人嘗試新方向開疆拓土,而不是留在一個成熟的團隊裏內卷。

經濟視角

作職業規劃的另外一個目的固然是升職加薪了,可是你的薪資並不能無限膨脹,其增加大體仍是符合市場規律的。另外任何工做都是一筆經濟帳,咱們要帶着技術、產品和經濟視角看業務,才能作出合理的判斷。

由於去年疫情緣由,全球遠程辦公獲得了積極實踐,而且在將來依然有增加潛力,所以做爲用人單位方,一定會逐漸放眼全球去看人力成本問題,由於在哪都能辦公。從全球軟件開發數據來看,美國的工資水平最高,中國軟件工程師的工資也緊隨其後,因此在軟件領域中國已經不存在勞動力成本低廉的優點了,尤爲當你工做經驗豐富後,要競爭中高級崗位,中國軟件公司開的薪資放眼全球都不低。

然而國家之間技術發展階段、教育水平仍然存在差距,若是一樣的資深技術專家崗位,國內與國外開的薪資持平,但中國的軟件工程師架構水平徹底不及美國的軟件工程師,那麼長期來看,這種錯配會形成企業用人成本浪費,企業會在必定程度想辦法優化一下人員構成的。所以做爲前端,或者軟件工程師,你必須清楚長期而言,你要和全球的軟件工程師競爭,因此你還要充分了解你的領域在全球範圍的發展階段,人才水平如何。

以上是我的的經濟帳,接下來談談業務的經濟帳。

首先你要了解本身的技術是怎樣轉化爲收入,覆蓋本身工資的。咱們首先看市場競爭,市場競爭經過價格調節供需關係,咱們作的產品成本、售價很清楚,是否值得作一目瞭然。然而對於複雜產品須要多人協做,若是人與人之間再經過市場化機制合做,每每容易產生低效的結果,好比我作的按鈕按照 3 元一個的價格賣給後端,那爲了提高個人價值,我會提價到 5 元一個,然而傾向於給產品加更多的按鈕,這樣都在看短時間利益,誰也不會爲產品長期發展負責。

因此公司是一個相對大鍋飯的組織,誰也不要給本身工做訂價,你們都儘量的打磨產品,月底按照合同約定給固定薪酬。這樣作確實解決了產品長期發展的問題,但這套機制成熟後,尤爲在大公司,剛畢業就去擰螺絲釘的同窗極可能永遠沒有機會了解何爲成本,沒有成本概念,就難以想清楚爲何作事要考慮投入產出比,或者以爲 ROI 這個詞很高級,其實這個詞一點不高級,只是公司將它屏蔽了,但若是這致使你作技術徹底不考慮成本,只追求讓你激動的技術細節,或者只作你感興趣的技術方向,那實際上是不成熟的表現,你作的事情可能也難以被業務承認。

若是你想往更高層次發展,成本意識是必定要培養的,能夠了解一下人力成本、機器成本、以及接入二方、三方服務的外部成本,瞭解這些成本後,再算算產品年營收是否能覆蓋這些成本,若是想繼續加人,那明年產品營收相應要翻多少,如今市場空間容許產品翻這麼多嗎?若是想提供更好的服務,要加機器,那麼你的業務方是否會由於服務變好變得更多?衡量業務方增多帶來的價值通常從訂單價格,MAU 來看,若是服務外部,直接看價格是否覆蓋成本就好了,若是服務內部,就看 MAU 是否值得投入這些機器成本。

然而也不能只看錢,市場份額也很重要。若是 Chrome 對研發投入只看年營收,那如今 IE 估計仍是主流瀏覽器。其實 Chrome 在確立霸主地位後,對谷歌產品生態的打通、W3C 的話語權、開發者吸引力有很大提高,這些看不見的影響面難以直接轉化爲金錢來統計,因此若是你認爲產品市場份額的提高能夠帶來長線價值,那麼也能夠把市場份額做爲目標之一。

最後經濟視角也不只僅讓咱們停留在算業務賬上,經濟學的邊際收益理論能夠指導咱們優先作邊際收益更大的事。當前業務產品矩陣中,拓展哪些產品能夠快速彌補不足,若是作技術優化,優化哪些模塊帶來產品收益、可維護性收益最大,若是時刻能想清楚這些問題,那每一年的產品、技術方向就不會跑偏。

總結

總結一下文中提到的三個思考方向,實際上是職業生涯發展中可能遇到的三種問題。

工做時間久了就會發現,哪怕依然有學習的激情,但保持剛畢業那會的學習方式已經難有突破了,你會發現:工做實踐用到的知識不會不少,反覆讀或者寫入門技術文章,只會讓本身停留在校招生的技術水平;本身所處的職業也限制了進一步發展,你須要思考怎麼打破職業天花板;甚至只鑽研技術領域都是不夠的,你們都在談成本,你在談技術,自然就不在一個頻道上。

本文也給出了對應的三個解決方案,知識分類 幫助你解決反覆學習無用的、入門知識的問題;領域深耕 幫助你解決職業天花板的問題;經濟視角 幫助你解決技術單一視角的問題。

其實職業有天花板很正常,沒有哪一個職業上升通道是一路無阻的,但人是活的,你能夠逐漸改變本身,在適當的時候多看看業務、經濟問題,學習知識也不要僅停留在表面,雖然這些你工做中可能根本用不到,但這實際上是悖論,由於你沒掌握某些知識,因此也沒機會接觸那些工做,想打破悖論只能從痛苦的自我打破邊界開始。

與通常前端職業規劃不一樣,我並無說不少前端領域專有名詞,或者點名要學哪些框架,由於我以爲人之間智商差距並不大,必須掌握的知識工做幾年都能學會,而真正能拉開人之間差距的,不是智商,而是學習方法,或者學習路線,若是你把時間用在錯誤的地方,或者錯誤的階段,終將積累成巨大差距。

但願個人思考能夠對你有幫助。

討論地址是: 精讀《前端職業規劃 - 2021 年》· Issue #317 · dt-fe/weekly

若是你想參與討論,請 點擊這裏,每週都有新的主題,週末或週一發佈。前端精讀 - 幫你篩選靠譜的內容。

關注 前端精讀微信公衆號

<img width=200 src="https://img.alicdn.com/tfs/TB165W0MCzqK1RjSZFLXXcn2XXa-258-258.jpg">

版權聲明:自由轉載-非商用-非衍生-保持署名( 創意共享 3.0 許可證
相關文章
相關標籤/搜索