1. 程式人生 > >從前端到“錢”端,前端程序員的出路在何方

從前端到“錢”端,前端程序員的出路在何方

工作 效果 是我 新手 一起 客戶端 是不是 後來 有意

過去十年,是前端覺醒的十年。

前端這個行業很年輕,更早時候其實是有前端工作但是沒有前端崗位。大家覺得這個東西程序員做也行,設計師做也行。前端工作一直存在,但是沒有人認為它是一個獨立的工種和崗位,也沒有人去發展它的工程體系,更沒有人去找它的核心價值。所以如果說過去十年前端是什麽樣的十年,我認為是覺醒的十年。

技術分享圖片

在過去十年中,前端技術的發展大致經歷了三個階段:

首先是青銅時代,就是 2008 年前後那段時間,前端圈子裏流行的是各種特效,比如鼠標跟隨、Flash,當時覺得非常炫酷,今天看來有點 low。

其次是白銀時代,大約是 2009 年到 2011 年這段時間。大家的觀念開始轉變了,從單純的說我要做一個什麽樣的效果,開始關註我怎麽樣做這個效果能夠更方便。如果回頭來看,jQuery 抓的兩個點是很準的:第一點叫做 API 的應用性;第二點叫做瀏覽器的兼容性。jQuery 以這兩點為核心,打造了一套這樣的開發框架,白銀時代其實就是最終以 jQuery 大獲全勝落幕。

另外就是黃金時代,也是移動前端開始擡頭的時間點。這個時候不管是移動前端還是桌面開發前端,都開始進入到了一個正規化階段,開始關註工程體系,開始關註自身價值,開始關註質量與效率,同時這個時期也是 Node.js 崛起的時期。

在畢業找工作的時候,就有意識地去看前端崗位,但是因為那個時候前端崗位級別不高、工資跟客戶端也有差距。

前端 Leader 的焦慮感:為什麽沒了你不行,有了你一定能有什麽東西?

在阿裏有幾個大的前端團隊,這些大的前端團隊的 Leader,其實內心的焦慮感是很強的——前端作為一個新生職能,怎麽才能夠像服務端、客戶端一樣,給團隊找到核心價值?如果你的團隊只是接需求、做需求,技術再好的人,最後也會變成一個“看攤兒”的人。

這個裏面有一定的必要性,就是說沒了你不行;當然還要有一定的充分性,就是有了你就有了什麽東西。所以說前端團隊其實可以分成兩條線,一條是對內的工程上面的一些操作和一些設施的建設,這樣能夠提升效率,你工程上做得越深越好,結構越合理,你最後的產出就越多,這個是針對必要性的;還有一條線就是充分性,我們做性能、做跟客戶端的融合,這些能夠給公司帶來新的價值。

技術分享圖片

工程思想在大公司萌芽,僅靠管理方法吃不開。

其實相對於大公司來說,社區產生的還是一些工具的思想,工程的思想還是在大公司產生,主要是因為會有一個大型團隊協作上的需求倒逼你一定要這麽做,而社區其實是通過規則來保證團隊協作的。

靠規則建立協作,太慢,大公司是接受不了的,它一定需要強有力的推動。比如說我們今天用的東西版本太舊,是不是大家要統一升個級?如果我們用純粹的管理方法,我寫一封郵件要求大家都升級,不升級的今年沒有獎金,這是管理的思想。但是其實我們工程團隊還有更好的辦法,幹脆就是對你用的舊版本給你提示,甚至強行推薦你在網上下載最新版本。這個工程思想對於前端行業來說意義深遠,但其實前端行業在這個上面已經有點太晚了。另外,未來伴隨項目復雜性的提升,工程思想一定還會再進化,再去衍生出更多新的想法。

全棧不是把別人的東西搶過來,而是把自己的東西賦能出去。

工程之後,還有一塊比較重要,就是全棧。其實全棧這個想法也是從社區逐漸***到公司裏的,一開始大家對全棧的理解是很狹隘的,一些前端同學覺得現在有 Node.js,他們也能寫服務端的東西。後來發現出現了不可調和的矛盾,尤其是在阿裏這樣的公司,服務端這麽多年下來有很多很重要的基礎設施,你去 Node.js 體系下再發展一遍,一是沒有必要,二是沒有資源,阿裏有很多中間件團隊,你不管怎麽做,都不可能有他們的深度。

另外這也是我當時犯的一個很基礎的錯誤:前端本來就缺人,你把前端轉成全棧去做服務端的事情,你前端更缺人了。後來發現逐漸有人探索出一條路:全棧不是說把自己的能力堆上去,而是你要把自己強勢的東西給它賦能出去,讓別人具有全棧的能力。

技術分享圖片

圈兒裏很多人開玩笑說你們現在都是“錢“端了,因為掙錢多。實際上現在看一個同等水平的前端,他的價格還是略低於服務端的,不過前端最近可以說是漲得快,而且前端勝在競爭少。雖然前端基數大,但是實際上真正懂技術、會寫代碼的前端非常少。大部分前端就是市場上的前端,基本上是切個圖,做一些機械性勞動,對於大企業來講,是不要那種單純只會去做機械性勞動的前端的。

今天我們很多人其實是在嘗試把“錢端”的天花板弄得再高一點。其實我更願意這樣看:其實 前端本身不是你的天花板,你的個人能力才是你的天花板。

今天很多前端同學其實就是關註如何把設計師的設計稿變成一個用代碼寫出來的樣子,那麽你對業務的介入是淺的,你也就這樣了。其實工程師應該做什麽?從工程方面來講,你怎麽樣能讓更多的團隊、更大規模的團隊一起去協作?怎麽樣做出來更大規模的產品?其實還是需要我們把視角轉一下——你能夠真正以公司利益、以公司業務為導向,去思考你應該做什麽,才能真正有晉升機會。

前端未來:沒有什麽東西是做不了的

如果讓我來展望前端發展的話,我認為有兩個方面不容忽視:

一是 AI 與前端的結合,智能研發是我非常看好的領域。我們技術圈裏有一個比較流行的觀點:一切機械勞動最終都是可以被計算機替代的。

另一個我比較看好的發展領域就是圖形學。因為前端相對來說是一個在封裝好的環境下去工作的一個代碼環境,所以我認為前端未來應該會更下沈,跟圖形學有更多的結合。今天我們前端還是有很多東西說我做不了,當你能夠去從更底層去做的時候,就沒有什麽東西是你真正做不了的。我們就不會看到一個 C++ 的程序員說這個東西我做不了,因為理論上講它可以操作計算機的所有部件,而且能以非常高的性能去做。

技術分享圖片

前端很有意思,它充滿著工程上面妥協的味道

你做技術總是希望盡善盡美,希望把每個細節都做到最好,但其實 前端是一個建立在標準之上的工作,標準本身又是工業化之後的一個妥協的產物,所以前端的 API 也好,語言也好,包括今天很流行的一些開源實踐項目也好,裏面有大量今天去看非常差的設計。

這些比較遺憾的東西,將來始終會作為一個包袱讓我們背負著前進,這是前端的一個無奈。我們為了一些事情去付出這樣的代價,但是大家還是會嘗試逐步去解決這些陳舊的問題,今天我們已經看到很多舊的問題不是說把舊的改掉,而是設計一些新的東西來逐步替代它,它是一個很漫長的過程。所以有人說前端程序員喜新厭舊,說前端同學追新追的很厲害,新框架基本上隔個 4、5 年就出一個新的工具,所以很多人抱怨學不過來了。

雖然有很多不完美,但是前端也帶來了很多新機遇。怎麽說呢,這就是前端了。

自己只是個做了幾年全棧開發的老碼農,希望本文能對大家有所幫助幫助。

如果你依然在編程的世界裏迷茫,不知道自己的未來規劃,可以加入web前端學習交流群:767273102 裏面可以與大神一起交流並走出迷茫。新手可免費領取學習資料,看看前輩們是如何在編程的世界裏傲然前行不停更新最新的教程和學習方法(詳細的前端項目實戰教學視頻),有想學習web前端的,或是轉行,或是大學生,還有工作中想提升自己能力的,正在學習的小夥伴歡迎加入

點擊:前端學習圈

從前端到“錢”端,前端程序員的出路在何方