友情提示:這是一篇值得收藏、有價(jià)值的長(zhǎng) 長(zhǎng) 長(zhǎng)篇優(yōu)質(zhì)文
友情提示:這是一篇值得收藏、有價(jià)值的長(zhǎng)...長(zhǎng)...長(zhǎng)篇優(yōu)質(zhì)文
問(wèn)題:為什么市場(chǎng)上優(yōu)秀的前端這么少,國(guó)外也是這樣嗎?
提問(wèn)者:創(chuàng)業(yè)公司苦逼CTO一枚,為招一個(gè)基本功扎實(shí)的前端操碎了心,還是一無(wú)所獲...
針對(duì)提問(wèn),網(wǎng)友做出如下回答:
回答者 周萌萌,一枚愛(ài)碼字的女紙,專(zhuān)注運(yùn)營(yíng),研究新媒體~ 獲得989+頂?shù)拇鸢?/span>
4.28更新
感謝大家鼓勵(lì)!
點(diǎn)贊不關(guān)注的都是壞人><
有童鞋私信問(wèn)我是咋自學(xué)的?
墻裂推薦這本《Head First HTML與CSS(第2版) 》O'REILLY, 2013
雖是典型的外國(guó)磚頭教材,但是圖文并茂內(nèi)容生動(dòng)有趣,適合我這種愛(ài)讀故事的文科生~
----------------------正文的分割線(xiàn)-----------------------
哇,最近正在摩拳擦掌開(kāi)始學(xué)前端,從HTML開(kāi)始,仿佛回到了本科時(shí)的計(jì)算機(jī)課時(shí)代,當(dāng)然那時(shí)學(xué)的還是VB和C++ 哎,歲月是把殺豬刀啊。。。
周末看到這個(gè)問(wèn)題,天氣熱的不想出門(mén),那么來(lái)碼碼字吧!
「為什么優(yōu)秀的前端工程師這么少?這么少?少?」,這是我在敝司HR群里最常聽(tīng)到的抱怨之一,甚至超過(guò)吐槽iOS和Android開(kāi)發(fā)。。。
因?yàn)樘煺娴腍R mm們一般認(rèn)為:「前端開(kāi)發(fā)相較于其他領(lǐng)域的開(kāi)發(fā)要容易的多,為啥CTO還要求那么多,推薦的前端被退回來(lái)一個(gè)又一個(gè)?」
我曾經(jīng)也是這么看前端的,不就是切切圖、排排版、加個(gè)動(dòng)圖嘛,后來(lái)準(zhǔn)備學(xué)前端,才發(fā)現(xiàn)前端開(kāi)發(fā)根本不是軟!柿!子!
既然開(kāi)了頭就不能半途而廢,發(fā)揮文科生的精神我查閱了一些前端的文獻(xiàn),從了解前端歷史開(kāi)始進(jìn)入這個(gè)領(lǐng)域。
首先,我可以很肯定的回答第二個(gè)問(wèn)題,是的,國(guó)外的優(yōu)秀前端也是香餑餑,很難招!
先甩一張圖:
根據(jù)http://indeed.com抓取的數(shù)千家網(wǎng)站的職位顯示,目前「HTML5」崗位是需求增長(zhǎng)最快的開(kāi)發(fā)崗位,在所有開(kāi)發(fā)職位中排名第一,MongoDB和iOS緊隨其后位列第二、第三。
可見(jiàn),HTML5可以說(shuō)是最熱門(mén)的前端崗位,在2010年和2014年底有兩次爆發(fā)性增長(zhǎng),現(xiàn)在在美國(guó)的崗位需求甚至超過(guò)了iOS。
所以市場(chǎng)上優(yōu)秀的前端工程師相對(duì)較缺少,是一個(gè)國(guó)際問(wèn)題。
再來(lái)回答第一個(gè)問(wèn)題,前端工程師的地位和薪水上漲除了供不應(yīng)求的市場(chǎng)經(jīng)濟(jì)因素,與前端工程師獨(dú)有的特性分不開(kāi)。作為前端初學(xué)者,對(duì)前端開(kāi)發(fā)的了解還比較淺,分享一篇看到的blog吧。
Jose Aguinaga是一位美國(guó)的前端工程師,根據(jù)自己求職、面試、以及項(xiàng)目工作的經(jīng)驗(yàn)回答了這個(gè)問(wèn)題,文章比較長(zhǎng),主要從三個(gè)角度回答了這個(gè)問(wèn)題:
1、前端是相對(duì)來(lái)說(shuō)的一個(gè)新領(lǐng)域
這些崗位的大多數(shù)已經(jīng)存在了多年,但是在web行業(yè)對(duì)它們做出合理規(guī)范的要求卻是最近10年才開(kāi)始做的。
2、普遍存在誤解
「大多數(shù)人心中的前端工程師」和「實(shí)際上前端工程師的工作」完全不是一個(gè)事兒。
3、大量糟糕的前端工程師存在
「糟糕的前端工程師」與「優(yōu)秀的前端工程師」做的工作也不是一個(gè)level的事兒。
下面是原文,我簡(jiǎn)單翻譯了一下。(專(zhuān)業(yè)詞匯好多,有誤請(qǐng)指出,輕拍~原文地址:why-cant-we-find-front-end-developers)
一、相對(duì)來(lái)說(shuō),前端是一個(gè)新領(lǐng)域
可能很多人認(rèn)為前端開(kāi)發(fā)和網(wǎng)頁(yè)開(kāi)發(fā)類(lèi)似,而網(wǎng)頁(yè)開(kāi)發(fā)已經(jīng)有20多年的歷史,所以前端并不是一個(gè)新領(lǐng)域。然而,前端工程師的概念中的接口技術(shù)實(shí)現(xiàn)和用戶(hù)體驗(yàn)作為一個(gè)專(zhuān)業(yè)的工作領(lǐng)域,卻無(wú)疑是很新的。大概幾年前,前端開(kāi)發(fā)的技術(shù)增長(zhǎng)迅猛,如下圖所示:
過(guò)去幾年前端工程師的可視化增長(zhǎng)趨勢(shì) by Google Trends
對(duì)大多數(shù)互聯(lián)網(wǎng)圈外的人來(lái)說(shuō),網(wǎng)頁(yè)開(kāi)發(fā)是橫亙?cè)诰W(wǎng)頁(yè)可視化設(shè)計(jì)和技術(shù)實(shí)現(xiàn)之間的一條模糊的界限。畢竟,網(wǎng)頁(yè)開(kāi)發(fā)的確是一部分前端工程師的工作,并且人們想象前端工程師只專(zhuān)注于用戶(hù)接觸的部分。
最近,將接口技術(shù)實(shí)現(xiàn)和用戶(hù)體驗(yàn)作為一個(gè)專(zhuān)業(yè)領(lǐng)域的概念才剛剛興起。十五年或更久以前,網(wǎng)頁(yè)的可視化設(shè)計(jì)和技術(shù)實(shí)現(xiàn)所需要的資源是平均分配的。隨著網(wǎng)站的發(fā)展——網(wǎng)站不僅是一個(gè)登錄頁(yè)面,工程資源的需求越來(lái)越明顯。人們開(kāi)始專(zhuān)門(mén)學(xué)習(xí)網(wǎng)站專(zhuān)用的Javasript、后端技術(shù)、UX、數(shù)據(jù)庫(kù),甚至系統(tǒng)設(shè)計(jì)。
今天,一個(gè)像AirBnB/Facebook/Quora的Web應(yīng)用程序,投入的工程資源比設(shè)計(jì)資源多得多。換句話(huà)說(shuō),如今,做出網(wǎng)頁(yè)的視覺(jué)設(shè)計(jì)比技術(shù)實(shí)現(xiàn)要更快。這并不是說(shuō)和20年前相比,可視化設(shè)計(jì)沒(méi)那么重要,或投入的資源更少,而是說(shuō)如今的網(wǎng)頁(yè)需求要求更多的工程師供應(yīng)。
因?yàn)橐粋€(gè)Web應(yīng)用程序的技術(shù)實(shí)現(xiàn)包含了多種領(lǐng)域,在90年代「網(wǎng)站工程師」是多面手:他們有的來(lái)自數(shù)據(jù)庫(kù)管理員和系統(tǒng)管理員,有的來(lái)自后臺(tái)工程師,軟件工程師,UX工程師和前端工程師。最新的可能人們最恐懼:用Javascript,HTML和CSS修修補(bǔ)補(bǔ)一個(gè)視圖,讓它和所有的瀏覽器都適配。要享受前端工程師,你必須對(duì)視覺(jué)設(shè)計(jì)有興趣(或者樂(lè)于做一個(gè)受虐狂▼)。
很顯然,要處理大量的Web應(yīng)用程序需求,技術(shù)任務(wù)就要進(jìn)行分類(lèi),以便于多人同時(shí)處理網(wǎng)站請(qǐng)求。我不知道哪個(gè)任務(wù)需要最多的時(shí)間,或者哪個(gè)是最難的,但是事實(shí)上現(xiàn)在已經(jīng)不可能一個(gè)人快速地解決所有的技術(shù)細(xì)節(jié)了——這也是多家網(wǎng)絡(luò)機(jī)構(gòu)和企業(yè)關(guān)心的問(wèn)題。因此,所有之前我提到的工作描述(后臺(tái)工程師、DBA等等)都被歸入了web行業(yè)。請(qǐng)注意:這些崗位的大多數(shù)已經(jīng)存在了多年,但是在web行業(yè)對(duì)它們做出合理規(guī)范的要求卻是最近10年才開(kāi)始做的。
現(xiàn)在還有一類(lèi)人是獨(dú)自處理一個(gè)Web應(yīng)用程序的所有問(wèn)題,即「全棧工程師」,但是優(yōu)秀的全棧工程師同樣數(shù)量稀少。
現(xiàn)在,創(chuàng)業(yè)公司已經(jīng)很清楚,要想成功可能需要覆蓋一個(gè)Web應(yīng)用程序的諸多技術(shù)方面:前端、后臺(tái)、DBA、運(yùn)營(yíng)等等。PaaS(Platform as a Service)的誕生幫助創(chuàng)業(yè)公司剝離了運(yùn)營(yíng),同時(shí)多種BaaS(Backend as a Service)服務(wù),比如http://Parse.com,甚至可以為你的應(yīng)用提供數(shù)據(jù)庫(kù)模型和終端(當(dāng)然你仍然需要某人幫你設(shè)計(jì)模型)。前端還沒(méi)有被提供這種服務(wù),但是已經(jīng)有一些服務(wù)可以讓你購(gòu)買(mǎi)登陸頁(yè)面的前端模塊和組件;如果你想要?jiǎng)?chuàng)造一些真正的Web應(yīng)用程序,除了求助前端工程師,你別無(wú)他法,就像你要?jiǎng)?chuàng)立一個(gè)品牌你也繞不開(kāi)請(qǐng)一位設(shè)計(jì)師一樣。
二、普遍存在的誤解
尋找前端工程師難的另外一個(gè)很重要的原因,就是它是被廣泛誤解的領(lǐng)域。正如前面提到的,大多人都認(rèn)為前端開(kāi)發(fā)是一個(gè)「相對(duì)于來(lái)說(shuō)更簡(jiǎn)單的領(lǐng)域」。不妨用一個(gè)已經(jīng)過(guò)時(shí)的模式描述這個(gè)誤解:
大多數(shù)人心中的前端工程師是:
1、把Photoshop文件、圖片或者線(xiàn)框做成一個(gè)頁(yè)面;
2、偶爾設(shè)計(jì)Photoshop文件、圖片或者線(xiàn)框;
3、用JS實(shí)現(xiàn)動(dòng)畫(huà)、過(guò)渡效果;
4、用HTML和CSS編程,實(shí)現(xiàn)網(wǎng)頁(yè)的內(nèi)容和形式。
事實(shí)上,前端工程師在做的是:
1、在設(shè)計(jì)師和工程師之間創(chuàng)建可視化的語(yǔ)言;
2、根據(jù)設(shè)計(jì)稿定義一組代表內(nèi)容、品牌和功能的組件;
3、為Web應(yīng)用程序的框架、需求、可視化的語(yǔ)言和規(guī)格設(shè)定基準(zhǔn);
4、根據(jù)設(shè)備、瀏覽器、屏幕、動(dòng)畫(huà)來(lái)劃分web應(yīng)用的工作劃分;
5、用QA基準(zhǔn)來(lái)保證指南來(lái)確保品牌忠誠(chéng)度、代碼質(zhì)量、產(chǎn)品標(biāo)準(zhǔn);
6、調(diào)節(jié)Web應(yīng)用程序的樣式,包括間距、字體、標(biāo)題、圖標(biāo)、布局等等;
7、根據(jù)不同分辨率、橫屏豎屏等,調(diào)節(jié)Web應(yīng)用程序的樣式;
8、標(biāo)記 Web 應(yīng)用程序,使之語(yǔ)義化,SEO 友好;
9、通過(guò)API獲取內(nèi)容要考慮友好性、電池消耗性、設(shè)備和客戶(hù)端的特性;
10、開(kāi)發(fā)客戶(hù)端要考慮動(dòng)畫(huà)的流暢、延遲加載、交互、應(yīng)用工作流程,大多數(shù)時(shí)間用來(lái)考慮漸進(jìn)增強(qiáng)和向后兼容的標(biāo)準(zhǔn);
11、保證后臺(tái)連接安全,采取跨地資源共享( CORS )的程序考慮,防止跨站點(diǎn)腳本( XSS)和跨站點(diǎn)請(qǐng)求偽造( CSRF ) ;
12、最重要的是,盡管要符合以上標(biāo)準(zhǔn),但是無(wú)論現(xiàn)在還是將來(lái)永遠(yuǎn)是「用戶(hù)第一」。
為了實(shí)現(xiàn)上述目標(biāo),前端工程師采用了多種工具,從可視化工具(Photoshop/Adobe/Macaw/Sketch),到編程工具(IDE’s,命令行,源代碼版本控制, Bash腳本,建設(shè)任務(wù))。有時(shí),我們甚至要照顧市場(chǎng)(Newsletters,Campaigns,分析,SEO,社會(huì)媒體) 、 UX(動(dòng)畫(huà)、過(guò)渡、反饋、接口、可視化語(yǔ)言),到內(nèi)容改進(jìn)(斷點(diǎn)、避免孤立詞匯、可讀性、顏色) 。
三、存在糟糕的前端工程師
或許難以招到優(yōu)秀的前端工程師最明顯的原因就是:大量糟糕的前端工程師的存在。正如大家知道的,前端工程師的入門(mén)門(mén)檻非常低。JS、CSS、HTML并不是很難掌握的語(yǔ)言。只要花一點(diǎn)時(shí)間,誰(shuí)都可以通過(guò)網(wǎng)上教程(CodeAcademy/CodeSchool)學(xué)會(huì)。但是學(xué)習(xí)Erlang(作者自己最?lèi)?ài)的變成語(yǔ)言之一)、Go,甚至ANSIC,都需要你掌握很多計(jì)算機(jī)的知識(shí)。調(diào)整網(wǎng)頁(yè)中的顏色和圖片是非常容易的,但是了解網(wǎng)絡(luò)的軟肋卻是完全不同的事情。
最終,前端工程師市場(chǎng)上被做這些事的家伙搞壞:
糟糕的前端工程師是這樣做事:
1、濫用JS庫(kù),因?yàn)樗麄儗?shí)際上并不了JS的內(nèi)部(e.g. 一切都用jQuery);
2、濫用JS插件,抄別人的代碼哪怕自己根本讀不懂(e.g.jQuery.doParallaxPls.js);
3、給Web應(yīng)用程序添加CSS框架,卻只用到CSS/JS的5%,沒(méi)有看到任何的需求、設(shè)計(jì)或者比較和評(píng)價(jià);
4、認(rèn)為只要添加了CSS框架,網(wǎng)站就可以「有求必應(yīng)」;
5、一邊在說(shuō)著「響應(yīng)式web設(shè)計(jì)」,卻對(duì)服務(wù)器端技術(shù)一無(wú)所知;
6、用CSS編程時(shí)不管預(yù)處理器、命名規(guī)范等,卻用不合適的selector/ids/magic numbers等;
7、忽視表現(xiàn)、內(nèi)存泄露(并不理解內(nèi)存泄露的真正含義),不會(huì)檢測(cè)代碼;
8、不會(huì)用指標(biāo)衡量一個(gè)產(chǎn)品,或者這種指標(biāo)旨在自己的電腦、瀏覽器、設(shè)備有效;
9、忽視軟件技術(shù)。
雖然CS背景并不是成為一個(gè)優(yōu)秀前端工程師的必備條件,但是計(jì)算機(jī)和軟件的基礎(chǔ)對(duì)你用JS或?yàn)g覽器編程都非常重要。優(yōu)秀的前端工程師知道,web可能是最有影響力的平臺(tái)和環(huán)境之一,所以在那里執(zhí)行的程序必須被小心對(duì)待,甚至比在任何一臺(tái)可視化機(jī)器上的任何一種語(yǔ)言更小心。
一位優(yōu)秀的前端工程師不僅要考慮web技術(shù)和語(yǔ)言,并且還要了解所有不同的組件、系統(tǒng)和概念。
以下是優(yōu)秀的前端工程師在即時(shí)面對(duì)普通的任務(wù)也會(huì)做的事情:(這才是市場(chǎng)急需的前端)
1、DNS解析、使用CDN和關(guān)于multiple Hostnames as part of resources request.
2、HTTP Headers (Expires, Cache-Control, If-Modified-Since)
3、Steve Souders的所有規(guī)則(High Performance Websites)
4、如何解決PageSpeed, YSlow, Chrome Dev Tools Audit, Chrome Dev Tools Timeline顯示的所有問(wèn)題;
5、何時(shí)把任務(wù)傳到服務(wù)器和客戶(hù)端;
6、緩存,預(yù)取和負(fù)荷技術(shù)的使用;
7、Native JS,知道何時(shí)從頭開(kāi)始做,何時(shí)查找別人的代碼,同時(shí)可以評(píng)估這樣做的優(yōu)缺點(diǎn);
8、modern MVC Javascript libraries (e.g.AngularJS, EmberJS, ReactJS),graphic libraries (e.g. D3, SnapSVG), DOM manipulation libraries (e.g. jQuery,Zepto), lazy loading or package management libraries (e.g. RequireJS, CommonJS),task managers (e.g. Grunt, Gulp), package managers (e.g. Bower, Componentjs) and testing (e.g. Protractor, Selenium)的相關(guān)知識(shí)和用法;
9、CSS標(biāo)準(zhǔn)、modern conventions、 strategies (e.g. BEM, SMACSS, OOCSS)的知識(shí)和用法;
10、JS的電腦知識(shí)(內(nèi)存管理,單線(xiàn)程的性質(zhì),垃圾收集算法,超時(shí),范圍,提升,模式)
結(jié)論:
現(xiàn)在,前端工程師終于前所未有的在web中有了一席之地??赡苁怯捎诙嘣O(shè)備、瀏覽器和Web標(biāo)準(zhǔn)的演變的革命,所以尋找能夠?qū)W⒂赪eb應(yīng)用程序用戶(hù)端的人變得很迫切。全世界的前端工程師和開(kāi)發(fā)者正在參與到那些我們?cè)胂體eb可以給我?guī)?lái)的一切的變化的產(chǎn)品?,F(xiàn)在存儲(chǔ)著我們所寫(xiě)、聽(tīng)、email、看的所有實(shí)體都和云相連。
雖然現(xiàn)在招前端工程師很難,但是我知道越來(lái)越多的人將會(huì)加入前端的大軍。不僅是因?yàn)榇蠖鄶?shù)前端工作提供的優(yōu)渥薪水和辦公環(huán)境,也是因?yàn)閣eb中的前端編程變得越來(lái)越讓人興奮:通過(guò)網(wǎng)絡(luò)提供服務(wù),你有機(jī)會(huì)接觸千萬(wàn)用戶(hù)的生活,所有的一切都匯聚于一個(gè)叫瀏覽器的東西——它消泯了局限,使得人們可以分析,描繪和渲染任何一種瘋狂的想法。
加油吧,前端!
回答者 凈空無(wú)道,十年RD一朝轉(zhuǎn)PM 獲得766+頂?shù)拇鸢?/span>
原因其實(shí)很簡(jiǎn)單,就是因?yàn)镕E這個(gè)職位,就是一個(gè)充滿(mǎn)矛盾的職位,這個(gè)職位的存在就是一個(gè)大BUG啊!
1. 入門(mén)及其容易,精通極其困難。
一個(gè)智商正常的高中畢業(yè)生,一個(gè)星期,絕對(duì)能寫(xiě)出基本的HTML頁(yè)面,附上CSS,還有簡(jiǎn)單的JS。讓他學(xué)C?一個(gè)星期可能還學(xué)不到指針呢,指針要多久能跨過(guò)去還不知道呢。
但是,只要你的資質(zhì)不差,努力肯學(xué),那么隨著你的項(xiàng)目經(jīng)驗(yàn)豐富和自己的鉆研,RD(C、Java,甚至PHP)升級(jí)到高級(jí)工程師到資深工程師不難。但是前端,看看現(xiàn)在市場(chǎng)上的資深工程師有幾個(gè),北極廠(chǎng)里面能到T7、T8的,其他廠(chǎng)類(lèi)似等級(jí)前端工程師有多少就知道了,JS的作為一個(gè)從函數(shù)式編程過(guò)來(lái)的語(yǔ)言,很多比較低級(jí)的工程師因?yàn)槔斫獠涣怂乃枷雽?dǎo)致很容易裝撞上天花板,然后再也邁不過(guò)去了。
2. 錦上可以添花,雪中不能送炭
現(xiàn)在因?yàn)榇蠹覍?duì)移動(dòng)端重視,對(duì)交互要求高,看了國(guó)外的好東西多了,審美也上來(lái)了,所以才覺(jué)得前端重要,交互重要。
但是客觀(guān)說(shuō),一個(gè)網(wǎng)站/APP,沒(méi)有好的前端,就是交互不好、頁(yè)面不美觀(guān),就當(dāng)作一個(gè)丑人吧。但是沒(méi)有后端,功能實(shí)現(xiàn)不好,性能上不去,那就是缺胳膊少腿的殘疾人了。
所以很多用人的CEO、CTO、HR喊缺前端的時(shí)候,心里想的是這個(gè)錦上缺朵花,但是絕對(duì)不會(huì)給你炭的地位。
3. 充滿(mǎn)BUG的開(kāi)發(fā)環(huán)境
是的,計(jì)算機(jī)的一個(gè)重大的特點(diǎn)就是兼容性的問(wèn)題。這個(gè)任何開(kāi)發(fā)都不否認(rèn)。
但是能夠不兼容到JS、CSS這個(gè)級(jí)別的,還有幾個(gè)語(yǔ)言?雖然說(shuō)連C這樣的都有兼容性問(wèn)題,C89下跑的好好的程序,到了C99下面可能就會(huì)有問(wèn)題,或者說(shuō)你用的Sun的Java實(shí)現(xiàn)寫(xiě)的程序到MS的Java實(shí)現(xiàn)下面就有問(wèn)題,但是那都是很細(xì)節(jié),很特定的兼容性問(wèn)題了啊。
像JS這樣,連最重要的事件處理就兩大派系,DOM結(jié)構(gòu)兩大派系,CSS一堆混亂的情況,真心沒(méi)見(jiàn)過(guò)更亂的啊。就好象說(shuō)你用的JDK里面的Date對(duì)象默認(rèn)給你處理的是瑪雅歷法,你是不是想掀桌子罵人?
所以JS的面試、開(kāi)發(fā)中,很大一塊被人津津樂(lè)道的就是各種兼容性的問(wèn)題,比如讓你自己寫(xiě)一個(gè)AJAX實(shí)現(xiàn)你怎么處理不同瀏覽器的兼容性問(wèn)題啊,冒泡和捕捉怎么處理啊等等。
不過(guò)感謝IE6,要不然全中國(guó)的2/3的FE都少失業(yè)了。
4. 職能/責(zé)任不對(duì)稱(chēng)
在一個(gè)成熟的公司、項(xiàng)目里面,前端只負(fù)責(zé)顯示、交互,和簡(jiǎn)單的現(xiàn)實(shí)邏輯,后端負(fù)責(zé)業(yè)務(wù)邏輯、數(shù)據(jù)存儲(chǔ)。
對(duì)應(yīng)的,前端出點(diǎn)問(wèn)題,比如按鈕位置不對(duì)了,點(diǎn)擊后的事件不對(duì)了,傻子都能看出來(lái),但是后端的問(wèn)題,除非真的是邏輯寫(xiě)錯(cuò)了,而且是很直白的錯(cuò)誤,否則很難一眼看出來(lái),灑家曾經(jīng)客串過(guò)一次RD,寫(xiě)的一個(gè)BUG上線(xiàn)穩(wěn)定運(yùn)行30后才發(fā)現(xiàn)。
但是出問(wèn)題了,因?yàn)樗腥耍≦A第一接觸的就是前端界面,所以很自然的就把bug扔給前端,前端吭哧吭哧看半天,發(fā)現(xiàn)有60%都是后端的問(wèn)題再扔過(guò)去——做過(guò)業(yè)務(wù)的FE同學(xué)肯定有過(guò)這樣的經(jīng)歷吧。
所以灑家自己做leader的時(shí)候很多同學(xué)都抱怨過(guò)這些類(lèi)似的問(wèn)題,不是自己的問(wèn)題但是第一個(gè)被指責(zé)的卻是自己。很不爽,或者說(shuō),很委屈。
5. 職業(yè)技能樹(shù)亂點(diǎn)
一般公司里面,F(xiàn)E和RD都是放在技術(shù)體系下面,最終匯報(bào)對(duì)象都是CTO,但是FE在很多地方,技能樹(shù)是瞎點(diǎn)出來(lái)了!
如果你看FE的面試題目,會(huì)發(fā)現(xiàn)和RD沒(méi)啥區(qū)別,語(yǔ)言的特性、性能的分析、基本算法等等,除了把語(yǔ)言換掉基本沒(méi)事情區(qū)別。
但是實(shí)際工作中,一個(gè)好的FE,要跟PM、UI/UE/UX、RD、QA打交道,需要你理解產(chǎn)品的思想,懂藝術(shù)設(shè)計(jì),發(fā)現(xiàn)bug的時(shí)候還要跟蹤到后端確定是誰(shuí)的bug等等,人家RD的技能數(shù)是一顆茁壯成長(zhǎng)的蒼天大樹(shù),F(xiàn)E的技能書(shū)就是一個(gè)歪歪扭扭枝枝杈杈但是還要你長(zhǎng)高長(zhǎng)粗的怪樹(shù)。
最明顯的,需求評(píng)審會(huì)上,RD只關(guān)注這個(gè)功能我能不能實(shí)現(xiàn),F(xiàn)E還要關(guān)注這個(gè)按鈕能不能這么畫(huà),這個(gè)設(shè)計(jì)會(huì)不會(huì)有瀏覽器兼容問(wèn)題,這個(gè)交互是不是合理——雖然這是別人的工作但是一旦有問(wèn)題第一個(gè)被罵的都是FE啊。
6. 職業(yè)發(fā)展線(xiàn)路不明
其實(shí)這點(diǎn)從整個(gè)互聯(lián)網(wǎng)行業(yè)都有,你做醫(yī)生、教師這些職業(yè),看看周?chē)娜?,就知道,如果你做得好,或者不好,或者平庸,你?0、50、60的時(shí)候是什么樣子。但是IT從業(yè)人員,尤其是互聯(lián)網(wǎng)從業(yè)人員,看不到這個(gè)未來(lái),所以才有那么多類(lèi)似能不能寫(xiě)程序到30歲這樣的問(wèn)題。
在這個(gè)前提下,F(xiàn)E更悲催的是,RD可以看見(jiàn)自己的技術(shù)路線(xiàn)是,初級(jí)工程師、高級(jí)工程師、資深工程師、Team/Tech Leader、Tech Manager,直到CTO,當(dāng)然半道改行的不算啊。
在FE看來(lái),一直升到資深工程師還是可以的,但是后面除非很大的公司,有專(zhuān)門(mén)的前端Team,否則再升Leader和Manager的時(shí)候,F(xiàn)E處于一個(gè)很不利的地位。我們確實(shí)也看到因?yàn)镕E的技能樹(shù)亂點(diǎn),所以很多FE也會(huì)在合適的時(shí)候走PM、UI、甚至創(chuàng)業(yè)的路線(xiàn)但是很難看見(jiàn)FE做到CTO(除非加入創(chuàng)業(yè)公司直接做CTO)。
隨手畫(huà)了這么一張圖,只要你勤奮、努力,RD是可能隨著時(shí)間累計(jì)自己的經(jīng)驗(yàn)然后提高自己的等級(jí)的,但是FE可以看到,在藍(lán)色點(diǎn)之前,很快的就能學(xué)到80%的技能,但是后面的20%需要非常長(zhǎng)的時(shí)間去突破,甚至有人因?yàn)椴焕斫釬E的很多編程思想,幾年都一直突破不過(guò)去。
加上其他的原因,比如這幾年FE的技術(shù)發(fā)展確實(shí)太快了,每天都在層出不窮的概念、名詞,要分辨哪些是真金白銀的技術(shù),那些是大公司的工程師為了升職加薪搞出來(lái)概念,然后再學(xué)習(xí)吸取這些技術(shù),對(duì)FE的要求也無(wú)形中提供很多了。
所以,一個(gè)充滿(mǎn)了BUG的職位,怎么可能那么容易招到合適的人才呢?
小編總結(jié):首先說(shuō)到前端優(yōu)秀與否有界限和區(qū)分標(biāo)準(zhǔn)嗎?萬(wàn)事萬(wàn)物都是相對(duì)與絕對(duì)之分,我覺(jué)得咱們沒(méi)必要在優(yōu)秀上較真兒;其次說(shuō)到優(yōu)秀前端國(guó)內(nèi)少,國(guó)外多還是少的問(wèn)題,有多大意義?本身優(yōu)秀就沒(méi)有區(qū)分標(biāo)準(zhǔn),又怎樣統(tǒng)計(jì)國(guó)內(nèi)優(yōu)秀的有多少,國(guó)外優(yōu)秀的又有多少呢?
我想,大家需要明確的是沒(méi)有絕對(duì)優(yōu)秀的前端工程師,即使某些人某些技能上比你略高一籌,也一定有比他更牛的人,為了做到更好,你需要不斷學(xué)習(xí)提升自己,比你牛的人也需要不斷學(xué)習(xí),無(wú)論我們做到哪個(gè)層次,對(duì)我們來(lái)說(shuō)進(jìn)步是永遠(yuǎn)不會(huì)停止的。
Python交流群
635448130點(diǎn)擊加入群聊UI設(shè)計(jì)交流群
579150876點(diǎn)擊加入群聊Unity交流群
495609038點(diǎn)擊加入群聊HTML5交流群
645591648點(diǎn)擊加入群聊