前端工程師的英文名為front-end engineer,簡稱FE。
現(xiàn)在意義上的前端(并非只制作網(wǎng)頁),國內(nèi)最早開始有大規(guī)模招聘崗位應該是2011年左右的事情吧,在此之前,F(xiàn)E的工作基本都是由服務端工程師包辦的,或者是由設計師來產(chǎn)出HTML頁面。那么,是什么樣的原因催生出了FE這一職位呢?
用戶體驗的高需求
隨著web2.0概念的普及以及web3.0的提出,用戶成為互聯(lián)網(wǎng)的主要生產(chǎn)者,網(wǎng)頁所承載的功能越來越多。
(1)企業(yè)的「用戶體驗」訴求很強烈。這個很容易就能理解,如果你的產(chǎn)品看上去就像個釣魚網(wǎng)站而且還特別難用,就會有一部分用戶離你而去。非互聯(lián)網(wǎng)企業(yè)呢?也會面臨這樣的情況,你花了很大的功夫優(yōu)化數(shù)據(jù)庫,優(yōu)化服務器負載,你的客戶卻很難感知到你的努力。你的系統(tǒng)界面還是八九十年代的風格,客戶的第一感覺就是這系統(tǒng)不行,不買你的帳。相反,如果你花一點時間做一套嶄新風格的界面出來,客戶的第一感覺就是這個系統(tǒng)好炫酷,技術含量很高。不要小看這個第一感覺,對于外行人來說,第一感覺往往起到了決定作用。好多企業(yè)都意識到了這一點,所以對用戶體驗的訴求就上去了。
(2)現(xiàn)在的用戶也都很挑剔。畢竟他們使用的產(chǎn)品一個比一個炫,都被慣壞了,你的產(chǎn)品稍有點不爽的地方,就上微博去給你宣傳。
前端工程師是用戶體驗的把控者,在產(chǎn)品經(jīng)理構想出交互原型,設計師設計出交互細節(jié)后,F(xiàn)E就用他的雙手一行行敲出這些代碼。他敲出的每一個按鈕,每一張圖片,都被成千上萬的用戶點擊著,F(xiàn)E與用戶可以說是“零距離接觸”。作為產(chǎn)品交互的實現(xiàn)者,除了HTML、CSS這兩門語言要精通外,對前端要求更高的其實是非技術因素。
什么是用戶體驗?
比如頁面上有一個超鏈接,字體比較小的情況下,用戶可能會一下點不中,因為鏈接的可點擊區(qū)域是緊貼著文字邊緣的。前端可以通過很簡單的方法來擴大這個鏈接的可點擊區(qū)域,使得用戶更容易點中。這就是用戶體驗
前端工程師應具備的特點
(1)FE需要有一點強迫癥。這體現(xiàn)在對任何瑕疵的不容忍。比如采用技術手段讓頁面的滾動更平滑些,減少頁面的視覺抖動,像素級別的定位校準。當用戶觸碰的內(nèi)容是一串非電話號碼的數(shù)字時,不要讓手機自動調出撥號功能,等等。很多細節(jié)是產(chǎn)品經(jīng)理無法感知的,因為這些都是很零散的技術手段,只有靠FE來點滴積累。再有極致者,追求讓頁面的響應時間再減少幾個毫秒,讓你的手機少耗幾KB流量,少耗一些電量。這些甚至連用戶都無法感知,但是當你的用戶有百萬級別或者千萬級別,這樣做的價值就顯現(xiàn)出來了。
(2)前端工程師需要是一個心思細膩之人,需要對美有所領悟,需要執(zhí)著地追求完美,需要有品味,有思想,有大局觀。
(3)前端領域的技術更新相對于其他領域要快很多,原因大概也是因為這個領域離用戶最近吧。有一些新的技術甚至是顛覆性的,前端工程師必須要跟上時代的步伐,否則你開發(fā)出的產(chǎn)品在體驗上就落后別人一截了。
(4)前端工程師需要有較高的溝通能力和理解能力。我們經(jīng)常開玩笑說“設計師活在童話故事里”,因為有時候他們設計的頁面根本不符合常規(guī),無法實現(xiàn)。這個時候你就需要耐心的給設計MM講原理、講原因,并且告訴她設計需要遵循哪些基本規(guī)范。對于產(chǎn)品經(jīng)理的思想,你要能把握到位,你得理解他比劃了半天到底是想要做什么。與后端工程師打交道的時候,你又得馬上化身編程達人,跟他們聊數(shù)據(jù)類型,聊面向對象,聊設計模式。
前端工程師要做的事情
(1)javascript就是FE需要掌握的編程語言,應該通曉這門語言的優(yōu)勢和缺點,掌握各種編程思想、開發(fā)模式。利用各種技巧實現(xiàn)交互越來越豐富的界面,同時還要與服務端的工程師溝通,調試接口,完成:頁面展示——響應用戶操作——提交用戶數(shù)據(jù)——反饋操作結果這一系列流程。從這一點上,要求前端工程師要有軟件開發(fā)的基礎,了解計算機的基本原理,網(wǎng)絡通信的基本原理
(2)FE的工作內(nèi)容已不再是「寫寫頁面」這么簡單。隨著前端代碼的規(guī)模越來越大,逐漸涌現(xiàn)出了模塊化開發(fā)、MVC、MVVM等開發(fā)模式。團隊規(guī)模也從原來的單兵作戰(zhàn)演變?yōu)閳F隊開發(fā)。
所以,一個高級前端工程師,要有架構能力,這個架構能力包括不限于:
1.對現(xiàn)有優(yōu)秀框架的了解與整合使用
2.根據(jù)項目的業(yè)務特點構建出合適的開發(fā)模式
3.設計前端測試方案保證代碼質量
4.用工程化方案組織起團隊的開發(fā)流程
前端的趨勢
物聯(lián)網(wǎng)的市場越來越熱了,手機是物聯(lián)網(wǎng)體系中的一個關鍵節(jié)點。前端工程師的戰(zhàn)場已不再是單純的瀏覽器,將來會覆蓋到各種「端設備」上。得益于javascript語言的靈活性,現(xiàn)在用javascript已經(jīng)可以開發(fā)windows應用、ios應用、android應用,可以編寫智能電視上的應用。將來,或許是VR、可穿戴設備、智能家電。這是前端可以向前延伸的方向。
另一方面,由于nodejs的橫空出世,javascript這門語言竟然神奇的有了服務端的能力。之前用java、PHP做的事情,js同樣可以實現(xiàn)了。本來前端陣營中就有一批人是從后端轉過來的,有服務端開發(fā)的基礎,得了nodejs這一利器,再加上現(xiàn)在市場的需求,快出產(chǎn)品,敏捷開發(fā),前端工程師向后延伸的路線寬廣而明亮。事實上,全棧工程師的概念在前年就被提出,BAT這樣的業(yè)界領頭羊早已用nodejs做一些基礎設施的建設,而很多小而快的創(chuàng)業(yè)公司,也在用nodejs進行快速迭代開發(fā)。
-
工程師
+關注
關注
59文章
1587瀏覽量
69183 -
前端
+關注
關注
1文章
214瀏覽量
18133
發(fā)布評論請先 登錄






不同時期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過于真實 #YXC晶振 #揚興科技


工程師應該掌握的幾種正確電容放電姿勢



FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?



評論