'為什麼我們要成為全棧工程師?'

"
"
為什麼我們要成為全棧工程師?

轉載本文需註明出處:微信公眾號EAWorld,違者必究。

最近我身邊的幾個技術專家都在學習前端技術(VUE)的開發,為什麼他們要學習前端技術呢?因為隨著軟件技術的發展,全棧工程師已然成為未來發展趨勢,對大部分技術人而言,需要既懂後端技術,又能進行前端開發,成為全棧工程師。

什麼是前後端分離的研發模式?

與“全棧工程師”相對的,是“前後端分離”的研發模式。前後端分離模式有兩種含義:

  1. 前後端分離的部署模式,即前端服務器使用nginx等WEB服務器,部署css、js、圖片等等一系列靜態資源,負責控制頁面引用、跳轉、路由,前端頁面異步調用後端的接口,後端/應用服務器作為一個數據提供者,加快整體響應速度。
  2. 前後端分離的軟件研發模式,由於前後端使用的技術越來越不一致,前端又包括PC和移動前端,應用對人機交互的要求比較高,很多公司尤其是互聯網公司,經常分為專門的前端工程師和後端工程師,後端工程師負責業務邏輯的實現、數據的準備,前端工程師交互設計、數據裁減、界面實現。

前後端分離的部署方式,提高了系統的響應能力,是未來主要的企業應用架構模式,我們也需要採用。這裡的前後端分離是指第二種,即前後端分離的研發模式。

前後端分離研發模式的利與弊

事物總是一分為二的,有一利必有一害:前後端分離的研發模式,前端的重點放在頁面表現、速度流暢、兼容性、用戶體驗,後端的重點放在三高(高併發,高可用,高性能)、安全、存儲、業務方面,術業有專攻(目前很多互聯網公司採用這種模式,公司 DevOps 產品研發也採用這種方式)。但是這種做法也有明顯的缺點,就是溝通、集成成本高,前後端接口經常變化、前端/後端互相不理解、聯調複雜,對於團隊協作的很高。

既然有利有弊,那解決問題的方式就是分析主要矛盾、次要矛盾。某些技術團隊及互聯網公司之所以採用前後端分離的模式,是因為:

  1. 業務方向比較穩定,業務方向也不會有大的調整,可以不斷優化,逐步形成好的設計,保持接口的穩定,避免反覆調整;
  2. 能夠形成穩定的閉環軟件研發過程,例如從需求的提出到測試上線,雖然需求變化很快,但都是團隊內部/公司內部的事情,溝通相對方便;
  3. 技術團隊比較穩定,人員一起磨合時間比較長,溝通相對順暢。

分析問題後可以看出,如果技術團隊的主要矛盾是減少溝通成本,快速推出業務,而不是精益求精的技術運營,可採用全棧方式。我不反對有條件的項目嘗試前後端分離的研發模式,但是要看看自身是不是適合,設計能力比較強、業務比較穩定的團隊可以嘗試。

克服畏難心理,學習新技術,成為全棧工程師

面對不斷變化的市場形勢,有時就需要我們成為全棧工程師。目前我看到的情況是,更多的工程師存在畏難的心理。其實所謂全棧,也就是前端、後端、數據庫技術,前端技術要學習目前的前端開發工具(NPM、WebPack、Babel等插件)以及 VUE 框架即可,後端是 Java 技術,需要掌握 Spring Boot 的配置、POM/Maven 等開發工具,數據庫要寫好 SQL。有了這些基礎,就可以成為一個全棧工程師,不需要求全責備。

都是全棧工程師,也需要專業的前端工程師保駕護航

有了全棧工程師,還需要專業的前端工程師保駕護航,專業的前端工程師有兩個方向:

  1. 在項目中承擔交互設計和美工的作用,根據項目設計前端的規範,解決各項目中的前端問題;
  2. 成為前端架構師,跟蹤前端技術發展,制定前端規範,研發/維護前端框架,搭建統一的前端開發環境,解決各項目的關鍵問題。

向未來的全棧工程師致敬!

"
為什麼我們要成為全棧工程師?

轉載本文需註明出處:微信公眾號EAWorld,違者必究。

最近我身邊的幾個技術專家都在學習前端技術(VUE)的開發,為什麼他們要學習前端技術呢?因為隨著軟件技術的發展,全棧工程師已然成為未來發展趨勢,對大部分技術人而言,需要既懂後端技術,又能進行前端開發,成為全棧工程師。

什麼是前後端分離的研發模式?

與“全棧工程師”相對的,是“前後端分離”的研發模式。前後端分離模式有兩種含義:

  1. 前後端分離的部署模式,即前端服務器使用nginx等WEB服務器,部署css、js、圖片等等一系列靜態資源,負責控制頁面引用、跳轉、路由,前端頁面異步調用後端的接口,後端/應用服務器作為一個數據提供者,加快整體響應速度。
  2. 前後端分離的軟件研發模式,由於前後端使用的技術越來越不一致,前端又包括PC和移動前端,應用對人機交互的要求比較高,很多公司尤其是互聯網公司,經常分為專門的前端工程師和後端工程師,後端工程師負責業務邏輯的實現、數據的準備,前端工程師交互設計、數據裁減、界面實現。

前後端分離的部署方式,提高了系統的響應能力,是未來主要的企業應用架構模式,我們也需要採用。這裡的前後端分離是指第二種,即前後端分離的研發模式。

前後端分離研發模式的利與弊

事物總是一分為二的,有一利必有一害:前後端分離的研發模式,前端的重點放在頁面表現、速度流暢、兼容性、用戶體驗,後端的重點放在三高(高併發,高可用,高性能)、安全、存儲、業務方面,術業有專攻(目前很多互聯網公司採用這種模式,公司 DevOps 產品研發也採用這種方式)。但是這種做法也有明顯的缺點,就是溝通、集成成本高,前後端接口經常變化、前端/後端互相不理解、聯調複雜,對於團隊協作的很高。

既然有利有弊,那解決問題的方式就是分析主要矛盾、次要矛盾。某些技術團隊及互聯網公司之所以採用前後端分離的模式,是因為:

  1. 業務方向比較穩定,業務方向也不會有大的調整,可以不斷優化,逐步形成好的設計,保持接口的穩定,避免反覆調整;
  2. 能夠形成穩定的閉環軟件研發過程,例如從需求的提出到測試上線,雖然需求變化很快,但都是團隊內部/公司內部的事情,溝通相對方便;
  3. 技術團隊比較穩定,人員一起磨合時間比較長,溝通相對順暢。

分析問題後可以看出,如果技術團隊的主要矛盾是減少溝通成本,快速推出業務,而不是精益求精的技術運營,可採用全棧方式。我不反對有條件的項目嘗試前後端分離的研發模式,但是要看看自身是不是適合,設計能力比較強、業務比較穩定的團隊可以嘗試。

克服畏難心理,學習新技術,成為全棧工程師

面對不斷變化的市場形勢,有時就需要我們成為全棧工程師。目前我看到的情況是,更多的工程師存在畏難的心理。其實所謂全棧,也就是前端、後端、數據庫技術,前端技術要學習目前的前端開發工具(NPM、WebPack、Babel等插件)以及 VUE 框架即可,後端是 Java 技術,需要掌握 Spring Boot 的配置、POM/Maven 等開發工具,數據庫要寫好 SQL。有了這些基礎,就可以成為一個全棧工程師,不需要求全責備。

都是全棧工程師,也需要專業的前端工程師保駕護航

有了全棧工程師,還需要專業的前端工程師保駕護航,專業的前端工程師有兩個方向:

  1. 在項目中承擔交互設計和美工的作用,根據項目設計前端的規範,解決各項目中的前端問題;
  2. 成為前端架構師,跟蹤前端技術發展,制定前端規範,研發/維護前端框架,搭建統一的前端開發環境,解決各項目的關鍵問題。

向未來的全棧工程師致敬!

為什麼我們要成為全棧工程師?

關於作者:焦烈焱,普元信息CTO,致力於技術創新和金融創新解決方案研究。專注於企業技術架構領域,對分佈式環境的企業計算、 企業信息架構的規劃與實踐有著豐厚經驗,帶領普元技術團隊相繼在雲計算、大數據及移動開發領域取得多項突破,並主持中國工商銀行、中國建設銀行等多家大型企業技術平臺的規劃與研發。

關於EAWorld:微服務,DevOps,數據治理,移動架構原創技術分享。

"

相關推薦

推薦中...