前端工程師如何應對未來的變化?

軟件 工程師 Google Facebook 58招聘技術 2017-05-20

原創作者 :魏蒙@招聘FE 58招聘技術團隊

多年前因【不可抗力】,入坑了前端工程師...

最大的感受是什麼?——需要,一、直、學。前端的技能樹,有很多分叉,很多… 技能點根本不夠用。

在中國開發前端,有一派觀點認為:

誰決定用什麼技術? —— 你的Leader。

你的Leader來自於哪裡?——主要是BAT這樣的大廠。

Leader為什麼最後選了React? ——因為他在大廠的時候就用React,他從BAT出來,他肯定要選自己熟悉的技術。

你的Leader為什麼在大廠中選擇了新技術? —— 有可能是為了衝KPI

結論: 大廠用什麼技術, 就學什麼技術,跟著大廠走,不會丟工作。

這個模型對國內年輕的一批程序員很有效, 尤其在就業方面,馬上就找到了工作。 對於一些年紀較大的程序員,這個模型就有問題了。 年紀越大,薪資待遇需求越高,和年輕的程序員同樣去學習一樣的技能,競爭同樣的崗位,就沒有了優勢。

所以說跟大廠的學習模式,有明顯的瓶頸。另外的一個思路就是跟著國外的大廠,比如跟著Google/Facebook的前端技術,伺機推廣。

如果你是走的這個模型,

2009年你應你用上了angularJS

2009年你上線了第一個ng程序

2010年你開始用ng替換貴公司的後臺程序

2011年你開始創造類似kibana/grafana這樣的數據可視化平臺

2012年發佈了這樣的平臺開始推廣

在2013年用上了react.js,同年,你開始嘗試spdy和http2.0

2013年你上線了第一個移動端單頁面應用

2014年你將你的數據可視化方案遷移到了移動端,正好趕得上大數據的技術紅利

....

很遺憾,小編本人,到了2014年底,才上線第一個react單頁應用,2016年才在開始做組件化的積累。對大神們的節奏望塵莫及,同時又感慨變化不可抗拒。

在我的眼裡, 我認為作為一名好的工程師, 第一,要對未來有一個判斷;第二,要對這個判斷有一個計劃和認識。

接下來我來分享我的兩個基本的判斷。

一、 設計工作終將交還設計師

如果有人問我們,高斯模糊有哪些應用場景、配色方案怎樣選擇、人是怎樣的認知模型,我們FEer是很難回答的。 產品交互從FE產出,而我們不是最懂產品交互的人,術業有專攻,我們存在的原因僅僅是因為暫時還沒有足夠好的工具。

我舉一個Wordpress的例子。

前端工程師如何應對未來的變化?

根據2015年,全球總共有25%的website使用wordpress搭建。

一個網站拖拖拽拽就做出來了,是不是很爽。

再舉一個例子,是易企秀

前端工程師如何應對未來的變化?

易企秀幫助非專業人員構建宣傳網站,目前已經很好用了。

再舉一個例子,是Strikingly

前端工程師如何應對未來的變化?

Y-Combinator 總共投資了兩個移動建站項目,也證明了,目前世界上頂級的孵化器是非常看好這個市場的。 (YC是誰?http://www.ycombinator.com/)

再舉一個例子, 去年我們公司的一個優秀的設計師,就用Hype 3製作了一個展示型項目的web網站。全程沒有工程師配合,除了最後上線,我們提供了CDN。

前端工程師如何應對未來的變化?

那麼,在哪些場景需要我們FE?

1. 接口對接

2. 需要增加安全性

3. 交互複雜

4. 業務邏輯複雜

5. …

但是這些不能用工具解決麼? 能。 但有待於,技術的進步。

所以,如果5-10年後,【交互設計】的職能將交還給了設計師、產品們?我們將何去何從?

二、應用開發技術統一

新的就業場景

Web Assembly正在改變前端生態

WebAssembly提供了一套二進制接口,允許c/c++程序跑在瀏覽器端。目前已經得到了chrome/firefox/android webview的支持。

http://webassembly.org/demo/這個DEMO通過Web Assembly技術將Unity框架下的遊戲遷移到了瀏覽器端。

Goolge 佈局瀏覽器應用Native化

再舉一個例子,是GOOGLE PWA

前端工程師如何應對未來的變化?

Google 2015年推出的PWA(Progressive Web Apps),讓瀏覽器H5網站獲得了很多APP才有的特性。 如:離線使用、app-like、消息推送、安裝到桌面等。

Electron打包跨平臺PC應用

再舉一個例子,是Electron打包跨平臺PC應用

前端工程師如何應對未來的變化?

VSCode受到很多FEer的鐘愛,而VS作為一個複雜的IDE工具,其實是一個由js/html/css開發,用Electron打包的應用。

ReactNative/Weex改變移動端開發模式

再如, React Native/Weex, 開發出來的APP同時滿足了性能和熱更新,已經在改變移動開發合作的模式。

前端工程師如何應對未來的變化?

總的來說,JS開發出來的應用已經可以在PC/移動設備上做出完美的體驗,且可以降低傳統模式多團隊協作、交叉編譯的成本;另一方面,HTML+CSS3的佈局,也逐漸成為一個通用標準。

所以, 我們可以預見未來在應用開發技術,將逐步統一。

如何應對未來的變化?

個人認為有兩個思路:

一、 佈局3年後才會發生的事情同時緊盯Google/Facebook等公司和社區的動向

這種思路的核心其實是一種對未來的賭博,通過判斷未來發生的事情,來進行準備,讓準備的付出在未來達到最佳效果。

1. 比如開始製作一些javascript所見即所得開發工具(可以參考draft.js)

2. 比如開始學習app開發/多線程等技術(Electron)

3. 比如開始用js開發移動端(react-native, week等)

4. 比如開始學習node.js (可以參考pm2源代碼)

5. 比如看google的團隊博客https://developers.google.com 還有一個web版本https://developers.google.com/web/

6. 比如看facebook的團隊博客https://code.facebook.com/web/

二、 學半衰期長的東西

另一個思路是學半衰期長的東西,那麼

比如《算法導論》

前端工程師如何應對未來的變化?

花兩年學完《算法導論》還可以用20年。

比如, Martin Fowler的書,

前端工程師如何應對未來的變化?

•《重構》

•《領域驅動開發》

•《企業應用架構模式》

•《分析模式——可複用對象模型》

這些Martin的書, 如果還在技術領域,其實就非常有用。 比如《領域驅動開發》, 就是說,技術人員試圖驅動一個領域的發展,首先要成為領域專家。

Martin Fowler是國際著名的面向對象分析設計、UML、模式等方面的專家,敏捷開發方法的創始人之一,現為ThoughtWorks公司的首席科學家。

比如說, 《The design of everyday things》

前端工程師如何應對未來的變化?

多少年學設計就是這本書,ant design中引用了書中的原話來證明自己的設計規範合理。

唐納德•A•諾曼(Donald Arthur Norman 1935.12.25),美國認知心理學家、計算機工程師、工業設計家,認知科學學會的發起人之一。現為美國西北大學計算機科學系和心理學教授,是尼而森-諾曼集團(Nielsen Norman Group)諮詢公司的創辦人之一,蘋果計算機公司先進技術部副總裁。1999年,Upside雜誌提名諾曼博士為世界100精英之一。2002年,諾曼獲得了由人機交互專家協會(SIGCHI)授予的終身成就獎。作為一個以人為中心的設計的倡導者,諾曼最著名的書就是《設計心理學》。

在比如說,大數據、nlp、機器學習, 可以開拓視野和思路,現在學,10年後思想還能用得上。

前端工程師如何應對未來的變化?

前端工程師如何應對未來的變化?

前端工程師如何應對未來的變化?

再比如說,社會計算(social computing)作為在Facebook/微信這類社交應用出現後才出現的新興分支,研究社會出現的新興事物, 就可以做為學習的方向。

前端工程師如何應對未來的變化?

前端工程師如何應對未來的變化?

閱讀原文:

https://mp.weixin.qq.com/s?__biz=MzIzNzQzNjEwMw==&mid=2247484673&idx=1&sn=00b3e8e0dbba41b4503137921b4f3f23&chksm=e8c9e8a9dfbe61bfa93fbc549b9c1e98a33d0331a8a434d1965e5b349e08747da01e3662ada8#rd

相關推薦

推薦中...