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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一位老工程師寫給初學(xué)前端工程師的一封信

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-06-07 15:27 ? 次閱讀

從去年開始不少朋友讓我?guī)兔榻B前端工程師,絕大部分忙都沒幫上,原因是真找不到人。我當(dāng)時(shí)是這么跟他們分析的:過去的客戶端以browser為主,所以html/css/javascript是唯一選擇,現(xiàn)在可是mobile first,于是大量前端開發(fā)者被native開發(fā)分流,以及原本想做前端工程師的后備力量應(yīng)屆生們也選擇學(xué)native開發(fā),導(dǎo)致前端人荒。隨著情況改變,H5(HTML5的大眾昵稱)在傳播上體現(xiàn)的商業(yè)價(jià)值巨大,無論是創(chuàng)業(yè)團(tuán)隊(duì)還是巨頭自然重視這塊低成本高收益的事。好像前端開發(fā)的春天又來了,但局面是后備人才不足,想轉(zhuǎn)前端開發(fā)的又會(huì)發(fā)現(xiàn)貴圈比以前還亂,除了標(biāo)準(zhǔn)依然滯后,各種框架、工具冒出來,沒一兩年又淘汰,過去好像會(huì)jQuery就可以混,現(xiàn)在的門檻確實(shí)高不少。沒辦法創(chuàng)業(yè)團(tuán)隊(duì)要招到優(yōu)秀的前端工程師只能靠情懷和燒錢,巨頭們需要重新培育起好的技術(shù)文化吸引人才,尤其是肯花錢和時(shí)間在前端技術(shù)的培訓(xùn)、積累和創(chuàng)新上。之前有人說web已死,現(xiàn)在看說這話的人可以去死了。在前端技術(shù)儲備上加大投入,很長一段時(shí)間內(nèi)都是非常值得的。

回到主題,標(biāo)題其實(shí)是病句“初學(xué)前端工程師”。前端工程師是種崗位的title,怎么用學(xué)呢。我想將錯(cuò)就錯(cuò)說說職業(yè)的問題。前端社區(qū)三類人:前端工程師、前端開發(fā)者、“玩票”者。首先要明確前端工程師是種職業(yè),是專職為公司業(yè)務(wù)提供前端開發(fā)服務(wù)的一個(gè)工種。前端開發(fā)者意義更廣,凡是用前端技術(shù)開發(fā)的都算,但這里我想狹義上指前端開源社區(qū)貢獻(xiàn)者和自由前端開發(fā)者?!巴嫫薄闭?,指原本是其它語言的開發(fā)者,因喜愛前端技術(shù)經(jīng)常參與社區(qū)互動(dòng)并貢獻(xiàn)開源項(xiàng)目的人。前端工程師和后兩者的主要區(qū)別就是——職業(yè)性,后兩者主要關(guān)注和解決通用問題(提高前端開發(fā)的生產(chǎn)力啊、推進(jìn)標(biāo)準(zhǔn)的實(shí)現(xiàn)和發(fā)展?。岸斯こ處煹穆毮苁墙鉀Q所在公司的產(chǎn)品開發(fā)中的前端工程問題(工程和技術(shù)是不同概念,之前我分享過一個(gè)關(guān)于什么是前端工程的話題,在這里)。明確定義后,開始談?wù)勎易隽诉@么多年前端工程師的一點(diǎn)感受。

“他是我見過的最好的前端工程師”,這是多年前一位前同事對我的評價(jià),我自己會(huì)克制的在后面加上“之一”。如果他說的是“最好的前端開發(fā)者”,我絕對不會(huì)接受這種評價(jià)。我的github如此冷清,編程上也沒有突出的才能,也沒貢獻(xiàn)過任何有影響力的開源項(xiàng)目。但我覺得自己是很好的前端工程師,我參與的產(chǎn)品開發(fā)效率很高,對技術(shù)發(fā)展很敏感,很少走偏,多少還有點(diǎn)前瞻性。身在一線,對技術(shù)上的或人上的問題看的比較準(zhǔn)。共同之處:追求更好更有效的解決工作上的實(shí)際問題。我不會(huì)盲目追求“最流行”的技術(shù),更不會(huì)把它強(qiáng)加給產(chǎn)品,除非我覺得它真的適合這個(gè)項(xiàng)目,切實(shí)解決問題為導(dǎo)向。剛到豆瓣時(shí),我問自己:豆瓣產(chǎn)品前端的最大問題是什么?不是統(tǒng)一UI、不是搞個(gè)新框架,而是要通過建全基礎(chǔ)設(shè)施,改變開發(fā)方式將原來集中式的業(yè)務(wù)代碼徹底解藕才是癥結(jié)。這里面有技術(shù)問題還有跨角色合作的問題,因此不能孤立前端團(tuán)隊(duì),搞合作不搞對立。當(dāng)時(shí)組建的通用工具組集合了各種背景的資深工程師,一起討論方案,成果對后面支撐公司業(yè)務(wù)的快速發(fā)展起到了重要作用。做這些事情要忍耐默默無聞、要經(jīng)常跳出自己的舒適區(qū),到另一個(gè)不熟的領(lǐng)域甘心當(dāng)小白,目的只有一個(gè)——切實(shí)有效的把產(chǎn)品中的問題解決掉。對個(gè)人而言,通常這么做可以收獲到更多更深刻的經(jīng)驗(yàn)和知識,所以我也樂此不疲。不理解的人或許會(huì)覺得這人不牛逼啊,別人的看法不重要,收獲到實(shí)實(shí)在在的有價(jià)值的東西才是硬道理。新人不該看重虛名,裝逼不健康。沉浸到每一個(gè)項(xiàng)目中(別。挑?;睿?,做到具體問題具體分析,不生搬硬套,獨(dú)立思考,虛心交流一定會(huì)快速成長起來。不要拿追求“完美”當(dāng)幌子,不愿做沒技術(shù)含量的事,這樣的話干脆別干前端了。

擁抱變化是我在前公司工作時(shí)被灌輸?shù)膬r(jià)值觀。對于剛走上前端工程師崗位的同學(xué)們來說,要慢慢習(xí)慣前端技術(shù)的快速變化,并且擁抱它。要stay hungry, stay foolish。其中也有重點(diǎn),在不易變的方向上多花時(shí)間學(xué)習(xí)越深入越好,不糾纏、執(zhí)著于那些易變的東西。對新技術(shù)始終保持好奇心。

工具是最易變的,工具包括從各種庫、框架到構(gòu)建工具、編輯器等等。我對工具的態(tài)度是實(shí)用至上、喜新厭舊。對于新人來說盡可能多的體驗(yàn)各種工具沒壞處,從工具的設(shè)計(jì)思想上也能學(xué)到不少知識,但是要清醒的認(rèn)識到,會(huì)用很多工具不是工程師核心的開發(fā)能力,也不是個(gè)人的核心競爭力。

前端技術(shù)本身的變化是演變,不像工具那樣完全棄用變成全新的。比如多花些時(shí)間學(xué)習(xí)CSS2.1一點(diǎn)都不會(huì)浪費(fèi),多研究一些Javascript的基礎(chǔ)特性也不會(huì)輕易過時(shí)。然后有預(yù)見性的學(xué)習(xí)新技術(shù),在項(xiàng)目中積極擁抱新標(biāo)準(zhǔn),比如ES6。幸運(yùn)的是現(xiàn)在有大量工具讓我們可以提前在產(chǎn)品開發(fā)中應(yīng)用新標(biāo)準(zhǔn)。

開發(fā)思想不存在過時(shí)的問題,這些需要在長期的開發(fā)實(shí)踐中不斷的總結(jié)、反思,比如分離關(guān)注點(diǎn)是70年代提出的,從它衍生出很多開發(fā)理念,它永遠(yuǎn)不會(huì)過時(shí)。這些好像很“虛”的東西,在駕馭復(fù)雜的項(xiàng)目中非常有用。

我覺得前端工程師是所有工程師角色中最有也最需要“工匠精神”的。前端工程師的基本職責(zé)就是還原設(shè)計(jì),把一個(gè)躺在設(shè)計(jì)圖上的死的設(shè)計(jì)變成可以用的活的設(shè)計(jì)。所謂“工匠精神”體現(xiàn)在這個(gè)“活”字上。可視方面,一個(gè)動(dòng)畫的過程是否順暢,一個(gè)交互動(dòng)作全部狀態(tài)是否都做到位,適配上是否足夠靈活。代碼方面,一段通用代碼是否足夠通用,代碼冗余是否最小,性能是否足夠快等等。簡單的實(shí)現(xiàn)是最低要求,剩下的部分產(chǎn)品經(jīng)理、項(xiàng)目經(jīng)理不會(huì)要求,那是優(yōu)秀的前端工程師發(fā)揮的空間。前端工程師的成長就是一個(gè)修煉的過程,修煉的開始就是在學(xué)會(huì)了那些書本上可以學(xué)到的編程知識后。在前端工程師的素質(zhì)中,我認(rèn)為應(yīng)用能力是最重要的。這種應(yīng)用能力可看成是一種產(chǎn)品的塑造能力,前提要有產(chǎn)品思維和設(shè)計(jì)思維,能自主發(fā)現(xiàn)并彌補(bǔ)產(chǎn)品、設(shè)計(jì)的空白和不合理環(huán)節(jié),可以很好的控制代碼的復(fù)雜度,高效高質(zhì)量的完成開發(fā)需求。提升這種能力,紙上談兵不行,只能在各種項(xiàng)目中摸爬滾打,如同醫(yī)生不斷積累臨床經(jīng)驗(yàn)一樣。如果公司項(xiàng)目不能滿足,就自己找項(xiàng)目做。我在剛畢業(yè)的時(shí)候,接過不少私活,通常這類項(xiàng)目發(fā)揮空間大。

每個(gè)開發(fā)團(tuán)隊(duì)都有自己的一套游戲規(guī)則:代碼規(guī)范、code review、git或svn的用法、開發(fā)流程等等,先按照規(guī)則玩,再想著如何添磚加瓦。團(tuán)隊(duì)意識是一種職業(yè)態(tài)度。在一個(gè)好的團(tuán)隊(duì)里工作會(huì)很開心,團(tuán)隊(duì)會(huì)促進(jìn)個(gè)體更快的成長。但一個(gè)好團(tuán)隊(duì)也是靠所有個(gè)體共建。不要抱怨自己所在的團(tuán)隊(duì)不夠好,用更開放的心態(tài)分享和交流,慢慢的一個(gè)好的氛圍便會(huì)形成。

最后再說說前端工程師的態(tài)度問題。前端技術(shù)發(fā)展很快,因此要不斷學(xué)習(xí),不應(yīng)該輕易自滿。之前在知乎里回答過一個(gè)問題,我是這么寫的:“程序員容易陶醉在自己的代碼中,甚至有某種自戀。我也有過這種時(shí)候,我甚至認(rèn)為不夠自戀就不是好程序員,藝術(shù)家沒有不自戀的。但如果跳出自己的世界看,你寫出來的東西到底價(jià)值有多大,產(chǎn)品因此成功?到底能影響什么,一二個(gè)同事,一個(gè)團(tuán)隊(duì),整個(gè)行業(yè)?跟心目中大神的差距?這個(gè)時(shí)候會(huì)冷靜一些,原來只是比以前的自己進(jìn)步一些而已?!?/p>

前面并沒有說成為一名優(yōu)秀的前端工程師具體應(yīng)該學(xué)習(xí)什么技術(shù),會(huì)不會(huì)有些失望?因?yàn)榫唧w的技術(shù)會(huì)變,不變的是那些特質(zhì)和觀念。希望我的分享對新入行的前端工程師有所啟發(fā)和幫助。

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

    關(guān)注

    59

    文章

    1571

    瀏覽量

    68574
收藏 人收藏

    評論

    相關(guān)推薦

    笑死,掌握眼識別資深硬件工程師的訣竅了!# #電路知識 #電工 #硬核拆解

    硬件工程師
    MDD辰達(dá)半導(dǎo)體
    發(fā)布于 :2024年12月20日 17:48:17

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

    ,共同進(jìn)步。 歡迎加入FPGA技術(shù)微交流群14群! 交流問題() Q:FPGA中的FPGA算法工程師、FPGA邏輯工程師、FPGA原型驗(yàn)證工程師
    發(fā)表于 09-23 18:26

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

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

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

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

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

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開發(fā)領(lǐng)域中的種專業(yè)工程師
    發(fā)表于 05-16 11:00

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

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

    一位硬件工程師的歷練之路:從入門學(xué)習(xí)理論到... #搞笑 #硬件工程師 #電子工程師 #揚(yáng)興科技

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

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

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

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

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