前端工程師如何才能不焦慮?

更新相關文章:何以解憂,惟有暴富,手把手教你打造財富方程式前端

引言

進入2019年,中國互聯網充滿了焦慮的氣息,不斷有各類負面的消息,年初的互聯網行業的集體大裁人,讓你們真實感覺了一下互聯網下半場的變化。vue

外企最近幾年持續的退出中國,裁撤國內研發中心,曾經高大上的表明也逐步褪去了光鮮的外表,不過好在補償並不虧待,加上外企培養的良好我的素質,再出發也許並不困難。可是,國內的996是否還能適應呢?react

中興41歲員工在被裁後跳樓自殺,讓人不由扼腕,中年技術人員的上有老、下有小、外加幾百萬的房貸,看似事業有成、人生贏家,其中的壓力其實不少人不能理解。程序員

各類自媒體關於裁人、35歲程序員都去哪了,最近還看到一系列漫畫描述互聯網從業人員30歲後的出路:送外賣、開滴滴等等,當然充滿自嘲,其實也說明了無奈的現實。ajax

這篇文章不但願給你們帶來焦慮,想說說本身對這件事情的見解,以及如何才能不那麼焦慮。vuex

如今有什麼不一樣嗎?

就在短短3、四年前,那時候全國還在號召全民創業、萬衆創新,一大批移動互聯網的公司出現,一波波概念出來,互聯網金融、O2O、互聯網醫療、教育等等,如今回頭一看,不過是一場鬧劇而已。redux

真正成功的公司百裏挑一,根據互聯網的特性,必定是規模性可擴展的業務才能賺錢,因此在每一個細分領域大致上只能有兩三個玩家存在。小程序

前段時間還看到有人提問「爲何如今大廠都只招工做3年以上的了?」 其實核心緣由就在於互聯網進入下半場,在上半場,不斷有大量資金支持,有大量用戶能夠收割,有大量場景沒有互聯網化,因而人才的缺口是巨大的,也是當年培訓班如火如荼的緣由。後端

如今用戶的增量沒有了,連用戶的時間增量也沒有了,用戶數和時間向巨頭集中,你能夠想一想手機上的app有多少裝了就沒再打開過了?設計模式

如今的人才市場是供大於求,充斥了前幾年批量進去的初級的程序員,在最近會發現工做並很差找了。可是3-5年高級資深的工程師仍是緊缺的,公司對於人才的標準是提升很多的,招人也變的很當心謹慎。

下半場各大巨頭都瞄準產業互聯網,這是一個徹底不一樣的市場,再也不可以快速迭代,小步試錯,c端用戶容忍度比較高,可是b端商戶有可能就由於一個小小bug而拒絕你的服務。這是一個須要耐心,須要精耕細做的業務,過往爆發性的增加可能很難再現。

前端有什麼不一樣?

最近5年,前端的發展使人目不暇接,從三大框架,到小程序,到Node,到GraphQL再到WebAssembly。前端的技術看起來發展是極快的,覆蓋的範圍也愈來愈廣。

技術的迭代更新當然讓人興奮,但也須要你們不斷學習,5年前玩轉jQuery和ajax就能夠找到一份好工做,但如今若是在簡歷上還出現這些技術都是減分項了。

多平臺的擴展也讓前端有更多空間,如今能夠用react native、Flutter寫app,能夠寫小程序、快應用,能夠用Electron能夠寫桌面應用,能夠用Node作後端。

之前有過一句話「凡是能夠用JS實現的,終將用JS來實現」。這句話看起來一步步成爲現實,但面對這麼多的選擇方向,前端同窗們是否是更焦慮了?

前端工程師須要具有的能力

如今是一個信息爆炸的社會,信息是不缺的,缺的是過濾信息的能力,缺的是獨立思考,將知識整理爲我所用的能力。想要不焦慮,必定要明白哪些是須要關注的能力。

前端工程師首先仍是軟件工程師,所以軟件工程師須要具有的基礎能力同樣,最近我司也不斷強調苦練基本功。

軟件工程基本功有哪些呢?

  • 編碼能力,數據結構,代碼規範,寫出優雅可維護的代碼,從變量命名到單元測試等等

  • 設計能力,設計模式,分層解耦,領域設計,技術選型,寫好技術設計文檔,作好技術評審等等

  • 業務理解能力,一切研發工做都最終服務於業務,要可以對業務有理解,才能避免淪爲業務產品的搬運工,才能參與業務決策中,這樣才能服務驅動業務

  • 總結規劃的能力,相信你們每半年或者一年都會有總結,可是大多數總結會變成流水帳,應該培養如何體現作技術選型的思考,如何作好技術規劃

  • 項目管理的能力,也許你不是項目經理也不是scrum master,但你我的依舊能夠作好工時評估,開好站會,控制好進度,影響推動協做方的進度和產出

關於技術學習上,因爲如今有大量的新技術、鋪天蓋地的技術文章,無形給你們很大的焦慮感,以爲一天不學習就跟不是時代的步伐了。

對於如何進行技術學習有幾點建議:

  • 多學不變的東西,這點和上面提到的基本功很相似,這些基本功會讓你的職業發展長期受益的,可是每每是基本的缺少明顯短時間收益,會讓你們忽略。

  • 創建知識圖譜,每個技術方向都有完整的知識圖譜或者學習路線,GitHub上有很多總結的很好的圖譜。這些圖譜的好處在於你可以經過圖譜很快補齊短板,對於新的知識點也能從容歸類,再也不盲從。

  • 跨知識點的學習,前端技術點很是繁雜,若是都是短時間追逐各個新技術點,很快就會疲於奔命,到頭來感受好像也沒沉澱下來。跨知識點是但願可以讓學習從點到面,在從面到體,例如前端三大框架必定要對比的進行理解,在架構設計上有什麼優劣,是怎樣作取捨的。又好比狀態管理框架上,redux、mobx、vuex都是如何設計的,在使用場景上有什麼區別。

  • 認識解決問題的本質,之前可能須要你們可以熟練使用技術框架也許就夠了,但更本質的是這些技術是如何解決問題的。就拿跨平臺的方案來講,最開始你們基於Webview經過js渲染界面,經過JSBridge獲取原生能力。可是Webview渲染始終沒法得到相似原生的體驗,因而RN/Weex的技術出現,經過js編寫,基於vdom,渲染成原生控件,從而解決了渲染性能的問題。可是,跨平臺的原生體驗有差別,js和原生通訊始終有性能問題,因而Flutter出現,實現了從底層渲染引擎到界面渲染再到消息通訊的全閉環實現。

代碼以外

工程師的人生不只僅只有技術,代碼以外應該還須要有不少能夠學習掌握的。這裏推薦給你們一本書《軟技能》,涵蓋了代碼以外的方方面面,例如我的營銷、學習、時間管理、職業規劃、理財、健身等等,限於篇幅就不展開了,也許從此有機會再整理一篇。

《百歲人生》中提到將來90後或者00後大機率平均壽命會達到100歲,未來的人生也不會是典型的三段式:上學、工做、退休,而會是變成多段式,並且隨着職業生涯愈來愈長,大機率不會只從事一份相同技能的工做。

職業生涯歷來不是百米賽跑,而是馬拉松,不斷投資本身,得到能夠遷移的技能,獨立思考的能力,到中後期越是軟性的技能越能給你加成,願諸位工程師可以遠離焦慮,活出多彩的人生。

有興趣同窗能夠關注微信公衆號奶爸碼農,不按期分享關於投資、理財、IT的信息:

相關文章
相關標籤/搜索