0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

前端工程師的未來在哪

工程師人生 ? 來源:網絡整理 ? 作者:工程師吳畏 ? 2018-09-07 09:36 ? 次閱讀

我猜想國內很多前端工程師都想過這個問題吧。前端工程師往往屬于產品研發(fā)團隊,但卻很容易被邊緣化——后端工程師覺得自己才是主力,沒有后端工程師產品就不存在了,但沒有前端工程師產品還能有,只是界面非常糟糕而已。這時候前端工程師就開始感覺自己像是個外包似的,只是來幫別人完成一些任務而已,對產品沒有歸宿感。這時候前端工程師的職業(yè)發(fā)展路線在哪?成為一個更好的外包嗎?

要做關鍵任務

我覺得,要別人重視你的工作,不僅僅是你做得好就行了,還要求你的工作對別人來說足夠重要。這跟產品定位有關——例如說對搜索引擎來說,前端對產品的影響不會非常大,用戶只要能搜索到自己想要的結果就行了。搜索引擎最復雜的交互可能就是搜索框的自動完成了,但有自動完成和無自動完成的區(qū)別到底有多大呢?跟準確率和召回率相比,有沒有自動完成實在沒有多重要。況且,自動完成的結果本身也依賴于準確率和召回率,所以后端工程師比前端工程師重要得多。

因此,前端工程師在選擇工作時首先要選擇前端足夠重要的工作。重要用什么來衡量?務實的話,是錢;務虛的話,是產品。如果一個功能只能在前端實現,并且這個實現能夠提高多少的轉化率,使得多少原本不產生利潤的點擊產生利潤,那么前端對這個產品來說一定十分重要??上X相關的事情不由前端工程師來研究和決定,所以這部分工作還是安心交給產品設計師來做吧,讓他們來決定怎么樣的產品能賺錢,然后由你來完成這個產品的實現,這時候你的目標就是把產品做好。

回到剛才的問題,有些產品更依賴于后端,例如搜索引擎,當然也有些產品更依賴于前端。什么樣的產品更依賴于前端?就是后端難以建立起技術壁壘的產品。這類產品要抄襲一個功能差不多的并不難,因此只有細節(jié)做得最好的能夠獲得足夠多的用戶。這類產品在 iOS App Store 上很常見——有很多 app 擁有相似的功能,而其中只有一個交互設計得最好的能夠獲得絕大多數的用戶。盡管 app 不存在 HTML + CSS + JS 這個前端,不過道理是一樣的。當年 Tweetie 能夠取代老牌的 Twitterrific 成為主流 Twitter 客戶端,靠的就是交互上的創(chuàng)新,外加不差的性能和穩(wěn)定性。如果交互對于一個 web app 來說十分重要,這個 web app 自然也就需要十分優(yōu)秀的前端工程師。

總結一下,由于前端工程師的價值在于實現復雜的前端細節(jié),因此如果可以選擇的話盡量選擇一個細節(jié)決定成敗的產品。如果產品的成敗已經由后端工程師決定了,例如某某數據規(guī)模要么能做要么不能做,那么這個產品就沒你什么事了。

要懂核心業(yè)務

每一個公司,每一個項目,都有它的官方語言。不是指普通話,也不是指 C++,我指的是大家圍繞什么問題來展開項目,什么問題的討論能讓大家為之興奮。舉個例子來說,百度的官方語言就是搜索,跟搜索沒有關系的產品也會使用「準確率」、「召回率」這樣的術語用來做比喻。前端工程師有多少知道什么是「準確率」、「召回率」的?估計不多,因為前端根本沒有這樣的概念。這時候前端工程師要跟后端工程師溝通也就不容易了。久而久之,你對人家很興奮在討論的什么 O(1) 還是 O(n) 不感興趣,人家也不理解你的 {} != {}是什么意思,你就被邊緣化了。

如果不想被邊緣化,就算前端不是公司的核心業(yè)務,你也必須懂公司的核心業(yè)務,然后說著官方語言,而不是前端的方言。這就意味著,如果你在一家后端技術很強大的公司,你最好也懂后端技術。我知道國內有很多前端工程師并不是計算機系畢業(yè)的,就算是國內的教育也不怎么樣,這時候你只能惡補相關的基礎知識了。如果你不懂這些,就算你能把整本《JavaScript 權威指南》背下來,你說的還是方言,說官話的人還是會鄙視你。如果公司主要服務于某個垂直領域的話,你必須對這個垂直領域十分了解,隨時能用這個領域的行話來溝通。

總結一下,由于每個人已經熟悉的領域都不一樣,所以沒辦法說哪個領域更適合前端工程師。如果你原本已經有某個領域的從業(yè)經驗,進入服務于該領域的技術公司總是有顯著優(yōu)勢的。如果你進入了一個自己不熟悉的領域,那就一定要補充相關基礎知識,否則你對這個領域不感興趣,這個領域也不會對你的前端工作感興趣。

實際例子

為什么我選擇加入豌豆莢?主要考慮的還是上面兩點。

我在百度的時候一直就在想,既然前端對搜索引擎來說不重要,那對什么類型的應用來說比較重要呢?當時看到 Facebook 做得不錯,所以覺得社區(qū)會需要復雜的交互,而如果復雜交互做不好則會影響用戶使用,因此前端對社區(qū)來說應該十分重要?,F在看來,也不完全是這樣子。前端對社區(qū)來說確實重要,但 Facebook 并不是一個典型的例子,它是一個前端做得尤其優(yōu)秀的例子。

在我了解到豌豆莢 Windows 客戶端的實現方式時,我立即意識到它可以通過我的第一個判別標準——前端對它來說是關鍵任務。它使用 Webkit 做了一個容器,然后把所有的交互都通過 web app 的形式做在里面,然后通過一組接口跟 native 進行交互。如果一個應用決定要這樣做了,那么前端就能影響到它的成敗,因為這時候前端后端的分隔線已經很明確了。如果一項功能應該由前端來做那就必須由前端來做,后端基本不可能成為實現此項功能的備選方案,這時候前端就具備了無可替代的位置。

至于第二個判別標準——豌豆莢的核心業(yè)務是什么?我覺得豌豆莢做的很多事情都是以產品設計為起點的,而這至少是我感興趣并且也有點感覺的東西。從細節(jié)上來說,就是大家喜歡談論的事情是一致的,例如產品如何做一些很智能的設計,最新的技術方案如何能夠巧妙地幫助這些設計得以實現。Junyu 說「設計就是創(chuàng)造性地解決問題」,這是我喜歡的解決問題方式。這個世界上能夠把邏輯轉化為代碼的人非常多,同時有一定數學和計算機專業(yè)基礎的人也不少,因此要拼誰的解決方案更好的話那還要加上創(chuàng)造力。

我知道國內有很多產品設計師,在考慮產品時首先想到的是百萬千萬級用戶量,這樣無論從單個用戶身上賺到的錢多么的少,最終產品還是能賺大錢。百度曾經就屬于這種思維方式,但這不是我喜歡的風格,因為沒有明確的目標用戶定位。我知道國內由很多工程師,在編寫代碼時用盡各種技巧以展示自己過人的才智,但是這樣的代碼還有可復用性嗎?除了作者本人沒有人能夠維護啊。不同的人有不同的品味,能夠跟品味一致的人一起工作是一件幸福的事情。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 工程師
    +關注

    關注

    59

    文章

    1563

    瀏覽量

    68375
  • 前端
    +關注

    關注

    1

    文章

    187

    瀏覽量

    17701
收藏 人收藏

    評論

    相關推薦

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

    ,共同進步。 歡迎加入FPGA技術微信交流群14群! 交流問題(一) Q:FPGA中的FPGA算法工程師、FPGA邏輯工程師、FPGA原型驗證工程師三者有什么區(qū)別? A:FPGA 算法工程師
    發(fā)表于 09-23 18:26

    正是拼的年紀|65歲電子工程師上班VLOG #65歲退休 #電子工程師 #搞笑 #上班vlog

    電子工程師
    安泰小課堂
    發(fā)布于 :2024年07月25日 11:31:02

    用二創(chuàng),1:1復刻工程師的職場現狀

    工程師
    揚興科技
    發(fā)布于 :2024年07月19日 18:30:07

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開發(fā)領域中的一種專業(yè)工程師,他們主要負責設計和開發(fā)嵌入式軟件,
    發(fā)表于 05-16 11:00

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識 #面試題

    電子工程師電路
    安泰小課堂
    發(fā)布于 :2024年04月30日 17:33:15

    一位硬件工程師的歷練之路:從入門學習理論到... #搞笑 #硬件工程師 #電子工程師 #揚興科技

    硬件工程師揚興科技
    揚興科技
    發(fā)布于 :2024年03月13日 17:50:21

    企業(yè)老工程師和高校老師有啥區(qū)別

    電子工程師硬件
    電子發(fā)燒友網官方
    發(fā)布于 :2024年02月28日 17:50:00

    如何搞崩一個硬件工程師心態(tài)?試試對ta說這幾句

    硬件工程師
    揚興科技
    發(fā)布于 :2024年02月20日 18:05:49

    FPGA工程師需要具備哪些技能?

    FPGA(Field-Programmable Gate Array)芯片因其具有靈活性、高定制化、高性能等特點,被廣泛應用于數字系統設計、嵌入式系統、通信系統、計算機視覺等領域。作為FPGA工程師
    發(fā)表于 11-09 11:03