老焦專欄|為什麼我們要成為全棧工程師?

2020-12-17 EAWorld

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

點上方綠標可收聽文章音頻

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

相關焦點

  • 想成為全棧工程師,你要做到哪幾點?
    想成為全棧工程師,你要做到哪幾點? 如何成為一名全棧工程師?需要具備哪些技術積累?成為全棧工程師有哪些好處?希望本文能為期望成為全棧工程師的同學提供一點幫助,和同學們一起分享交流。
  • 想成為全棧工程師,要做到哪幾點?
    阿里妹導讀:如何成為一名全棧工程師?需要具備哪些技術積累?成為全棧工程師有哪些好處?
  • 請問,我是要成為全棧工程師?還是專注於一個技術棧呢?
    全棧的定義:而全棧也是一個技術棧,是一種眼界,是指掌握多種技能,勝任前端與後端,能利用多種技能獨立完成產品的人。而在程式設計師界就有這麼一種說法,但凡做全棧工程師的,要麼很慘,要麼很牛!但凡很牛的,絕不是一開始就是做全棧的!回到話題,那麼我是要成為全棧工程師?還是專注於一個技術棧呢?
  • 全棧工程師為什麼越混越困難,看這篇就夠了
    最近跟朋友聊天,經常聊到全棧工程師,我就問他們為什麼要成為全棧工程師?技術派的回答:「全棧工程師,前後端技術都會,感覺很牛!」,職業派的回答:「全棧工程師很多公司都需要,不擔心工作找不到,工資也比普通的工程師高。」,跟風派的回答:「我好多朋友都想當全棧工程師,都說全棧工程師很好。」 有時候,我就賤賤的問他好在哪裡?他當場傻了,回答不上來。
  • 為什麼你不需要做一名全棧工程師?
    對所有技術淺嘗輒止的所謂「全棧工程師」已經OUT,那麼現在,我們需要怎樣的跨領域技術綜合者呢?我敢打賭,沒有人可以憑藉一己之力掌握下圖這些領域不斷更新的先進知識。單單是緊跟每個類別中的進化和新的編程接口,就幾乎是一個全職的工作量。
  • 成為Web前端全棧工程師,工資竟然這麼高!
    近幾年來網際網路的不斷發展,web前端開發不斷被企業看重,很多企業是需要用到這門技術開發的,但同時,現在的企業更希望能夠招聘到既能夠完成前端開發,又對後端具備一定程度了解的全棧工程師。由於全棧工程師目前市場上相對較少,企業招不到人,所以就出現薪資一路上漲情況,使得相關崗位平均薪資一直處在高位!
  • 寵物與牛-全棧工程師的神話與謊言
    最近幾年,在軟體開發(尤其是Web開發)領域,「全棧工程師」成為了開發者津津樂道的熱詞。你或許會聽到這樣一些話語:「我正在學習全站開發」,「我是全棧工程師」,」我們正在招聘全棧工程師「。那麼,」全棧「到底意味著什麼?出自什麼地方?具體含義是什麼?帶著這樣三個問題,我們將一步步去揭露全棧工程師的神話與謊言。
  • 全棧工程師有什麼發展前景?
    全棧工程師是同時擁有前端開發技術及後端開發技術的人,他們既能寫前端代碼,也能寫後端代碼,能夠獨立完成前後臺的搭建,並能利用多種技能獨立完成產品的人。全棧工程師是現在非常吃香的一個職業,也有越來越多的人想要轉行做全棧。
  • Facebook稱:只招全棧工程師 為啥這個崗位值40萬年薪
    現如今需要「T」型人才,要求你不僅「一樣精」更要在「一樣精」的基礎上「百樣通」,全棧工程師就是這樣神一般的存在。全棧工程師(Full-Stack Engineer),是一個在IT行業圈子裡越來越熱門的話題,無論是像Facebook這樣的大型公司,還是剛剛起步的初創公司,都開始招募全棧工程師。在OSCON會議上,一名Facebook的工程師說他們只聘請「全棧(Full stack)」的程式設計師。」
  • 什麼是全棧工程師?全棧開發者的優缺點?
    全棧工程師,就是前端、後端甚至運維都能統統拿下的全能開發工程師,能利用多種技能獨立完成產品的人。全棧開發者本身是音譯過來的,叫做Full Stack Developer,也就是「全能開發者」,通俗點說就是自己能搞定一套系統(C/S、B/S、App、前端、後端、運維)。全棧開發者/全棧工程師,通常指的是Web開發中的前後端都會的開發者。
  • 全棧工程師終極修煉指南
    除這些在線程序以外,另有個人版的代碼訓練基地可以教人們成為網絡開發員所必需的技能。本篇文章中,筆者不會談論哪種網站或者編程訓練營有最好的網絡開發程序。而是給從未學習過編程的你,提供一個明確的指引,包括如何成為全棧網絡開發人員最必不可少的技能以及如何找到工作。我將從以下三點講起:2017年被大量用來教學給學生的程序。
  • 全棧軟體工程師TinyURL項目實戰訓練營(第3期)
    首先你要知道,在這條尋求進步的路上你從來都不孤單。你需要的是一個可以提供專業教師資源與學習資源的團隊,強大的線上線下學習社區,一套快速有效的學習方法,和一個專業到無法挑剔的課程資源。太閤重磅推出的全棧軟體工程師項目實戰訓練營(第3期)開課啦!
  • 全棧工程師會是未來的發展趨勢嗎?
    最近,網上很流行一個詞:全棧(Full Stack)工程師,也可以叫全端工程師,無論是前端知識,還是後端架構你都要了解。甚至有些調皮的程式設計師這樣理解全棧工程師:全棧工程師=屌絲戰鬥機=系統+網絡+研發+dba+架構+安全=沒女朋友、拿一份工資做三份事情的典型、每個站長都是一個全棧工程師,每個站群的站長都是超級全棧工程師。
  • 全棧開發工程師需要具備哪些能力
    什麼是全棧開發工程師呢?開發工程師的種類是很多種,很多人在企業招聘中會看到全棧工程師的招聘。很多人覺得這種職位可望不可即,並且用人單位也很難找到這樣一個人。什麼是全棧工程師?成為全棧開發工程師需要具備哪些能力呢?下面小編為大家具體介紹。
  • 全棧工程師到底有沒有前途?
    「少壯不努力,老大當全棧」,和高大上的數據工程師、架構師、算法工程師比起來,全棧工程師似乎就是個打雜的。但你見過一家公司的研發團隊全是全棧工程師的情況嗎? 道哥隨女朋友來到北京三年多了,在一家創業公司的早期就加入了,已經是該公司的技術骨幹。
  • 全棧工程師到底有什麼用 - OSCHINA - 中文開源技術交流社區
    至於要掌握哪些技能,我覺得這個要跟從事的行業與技術方向有關,做網際網路的和做軟體的是不一樣的,即使是做網際網路的,後端也可以分為很多種技術流派。    8/2定律在哪都適用,全棧工程師就是掌握20%常用技能的人,但這20%的技能會有80%的機率被用到,剩下那80%不常用的,讓我們Google吧。
  • 如果想成為python全棧工程師,那就必須掌握這幾種知識!
    什麼是Python全棧工程師?即從前端頁面的實現,到後臺代碼的編寫,再到資料庫的管理,一人可以搞定一個公司網站的所有事情,真正實現全棧開發。全棧只是個概念 也分很多種類 真正的全棧工程師涵蓋了web開發 DBA 爬蟲 測試 運維,要學的內容那是相當的巨量。
  • 全棧工程師能夠做什麼工作
    全棧工程師是指掌握多種技能,能運用多種技能獨立完成產品的人,也稱全端工程師。總之,全棧工程師需要具有前端開發和後端編寫代碼的能力。他們幾乎集合了前後臺相關的技能,比如普通的WEB前端工程師,Java開發工程師等等。那麼全棧工程師能夠做什麼工作呢?
  • 那些大廠的全棧工程師有用武之地嗎?
    大廠要 T 型人,你沒跨界的通識,連做螺絲釘的資格都沒有。是不是螺絲釘,看業務也看個人努力。全棧的定義是?前端後端各懂一點?專精,只學一門就是唯一的路?小廠要全棧是因為他們錢要花在刀刃上,追求性價比。自己的思考想想自己的老闆是不是全棧,老闆的手下有沒有全棧,可能就能體會了。「全棧」說明你經驗豐富,可以勝任多種角色。但是你的時間只有1天24小時。什麼樣的職位需要全棧?老闆(管理者)。
  • 經驗丨我是如何用1年時間轉專業成為全棧軟體工程師的?
    這也是為什麼我選擇了Web全棧方向的項目。在哪裡找項目做?可以旁聽一些線下課程,比如專門的web develop課程,參加到team project中是非常寶貴的機會。3.現在的就業競爭比15年16年激烈很多,尤其是各大公司普遍縮招,我們需要正視面臨挑戰的嚴峻程度。希望大家在求職過程中充分利用時間,繃緊弦,規劃好時間,最大程度利用resource,成功找到好工作!想要成為全棧軟體工程師?BitTiger全棧工程師直通車帶你學習所需的所有技能!