前端開發(fā)崗位是否應(yīng)該細(xì)分為偏靜態(tài)和偏交互
增哥導(dǎo)讀:前端崗位的輸入是UED部門給到PSD效果圖、后端研發(fā)給到API,輸出產(chǎn)品成品。也就是說拿到UED部門給到的PSD效果圖做成HTML、CSS,再拿到后端研發(fā)給到的API,完成前臺邏輯、前后端數(shù)據(jù)交互及其他JavaScript開發(fā),最終產(chǎn)出產(chǎn)品成品并提交給測試。
昨天早上在微博上看到@前端農(nóng)民工 發(fā)了條關(guān)于前端工作細(xì)分的微博,大意是說將前端的工作細(xì)分為頁面重構(gòu)(html/css)和js開發(fā)限制了工程師的發(fā)展,而且頁面功能模塊的開發(fā)維護(hù)也會變得割裂,一定程度上限制了js和css的配合方式,公司不應(yīng)該這樣做。 然而,事實(shí)上很多互聯(lián)網(wǎng)公司前端團(tuán)隊(duì)就是這么干的,包括我們團(tuán)隊(duì),今天就來探討一下這個(gè)問題,看看很多公司為什么要把前端工作細(xì)分,把前端工作細(xì)分有什么好處,能為我們解決那些問題。 首先我們明確一下前端崗位職責(zé)的問題,前端崗位的輸入是UED部門給到PSD效果圖、后端研發(fā)給到API,輸出產(chǎn)品成品。也就是說拿到UED部門給到的PSD效果圖做成HTML、CSS,再拿到后端研發(fā)給到的API,完成前臺邏輯、前后端數(shù)據(jù)交互及其他JavaScript開發(fā),最終產(chǎn)出產(chǎn)品成品并提交給測試。 由前端的崗位職責(zé)我們可以看出,前端工作可以分為兩種,一種是偏靜態(tài),即HTML、CSS開發(fā),一種是偏交互,即JavaScript、前臺邏輯和前后端交互。這兩種工作對人的要求是相差很大的,偏靜態(tài)的可以不涉及太多編程和邏輯,但要求心細(xì)、能把握細(xì)節(jié)、對視覺體驗(yàn)非常敏感、對用戶體驗(yàn)有一定的理解、能忍受IE6等瀏覽器帶來的痛苦、能持續(xù)學(xué)習(xí),而后者對JavaScript要求較高、要有一定的編程能力、熟悉前后端協(xié)作模式、熟悉HTML和CSS、有一定的前端架構(gòu)能力。 從公司組建團(tuán)隊(duì)的角度來說,要找一班優(yōu)秀的full stack前端工程師,是有一定難度的。比如我們前端團(tuán)隊(duì),現(xiàn)在一共7個(gè)人,如果我們要求每一個(gè)人都寫HTML、CSS、JavaScript、前臺邏輯、前后端交互,并且都產(chǎn)出可維護(hù)的高質(zhì)量代碼,對很多人來說做到?jīng)]問題,但你知道要招到那么一班人有多難嗎?現(xiàn)在市場上本身優(yōu)秀前端就相當(dāng)奇缺,對于一個(gè)BAT以外的互聯(lián)網(wǎng)公司來說,也許1個(gè)月都招不到1個(gè)讓你滿意的人,然而,如果我們換一種方式,找?guī)讉€(gè)偏靜態(tài)的,找?guī)讉€(gè)偏交互的,相對來說,難度就小了很多,也許原來4個(gè)月都很難招到那么一班人,現(xiàn)在不到2個(gè)月就辦到了。千萬別小看這一點(diǎn),對于很多互聯(lián)網(wǎng)公司來說,速度就是生命,不能迅速組建好團(tuán)隊(duì)并快速將產(chǎn)品推向市場,也許就意味著完蛋。 從公司用人成本的角度來說,將前端細(xì)分為偏靜態(tài)和偏交互,能節(jié)約一筆開支。對每一個(gè)人都是高要求的話,自然成本要大一些,然而,如果把人員的要求都相對降下來了,成本自然也就降下來了。 從團(tuán)隊(duì)效率上來說,將前端細(xì)分為偏靜態(tài)和偏交互,是高效的。打個(gè)比方,團(tuán)隊(duì)有50個(gè)頁面要做,一共有5個(gè)人,是每個(gè)人做10個(gè)靜態(tài)頁面,并實(shí)現(xiàn)所有的JavaScript、前臺邏輯、前后端交互效率高?還是2個(gè)人做所有的靜態(tài)頁面,3個(gè)人完成JavaScript、前臺邏輯、前后端交互效率高?肯定是后者,專注于做靜態(tài)頁面的同學(xué)可以做到平均一個(gè)頁面45分鐘完成,但如果全部都做,是很難做到的,并且寫JavaScript效率也變低了。 從團(tuán)隊(duì)技術(shù)管理的角度來說,將前端細(xì)分為偏靜態(tài)和偏交互,人員相對易于管理,而且更容易產(chǎn)出可維護(hù)的高質(zhì)量代碼。偏靜態(tài)的幾個(gè)人可以致力于將靜態(tài)這一塊做到極致,偏交互的幾個(gè)人可以致力于將交互做到極致。 從個(gè)人職業(yè)上來說,將前端細(xì)分為偏靜態(tài)和偏交互,降低了前端職位的從業(yè)門檻,有了一定技能的時(shí)候更容易安定下來。 有人說前端細(xì)分這樣限制了JavaScript和CSS的配合方式,以我們團(tuán)隊(duì)的實(shí)踐經(jīng)驗(yàn)告訴大家,JavaScript和CSS的配合沒有問題。 有人說前端細(xì)分限制了工程師的職業(yè)天花板。這個(gè)在某些情況下是成立的,但是個(gè)人的職業(yè)天花板更多的還是由人本身決定的,一個(gè)對職業(yè)有追求的人,會想方設(shè)法讓自己的路越來越廣。馬云以前是英語老師,現(xiàn)在是中國首富,我初二的語文老師以前是挖煤的工人,主要還是由人本身決定的。當(dāng)然如果你想在你們團(tuán)隊(duì)中靜態(tài)和交互都做,也很簡單,據(jù)說騰訊有的團(tuán)隊(duì)就可以輪崗,干幾個(gè)月Node.js、再干幾個(gè)月做靜態(tài)頁面,你在你們團(tuán)隊(duì)中提出來,我相信你們老大會同意,只要不在項(xiàng)目非常緊急的時(shí)候。 我們程序員都希望自己能掌握更多的技術(shù),精通前后端等所有技術(shù),打敗Google,征服世界,相信我們程序員的思維是值得所有人尊敬的! 最后再來個(gè)總結(jié)吧,(*^__^*) ,將前端細(xì)分為偏靜態(tài)和偏交互,順應(yīng)了互聯(lián)網(wǎng)企業(yè)的發(fā)展需求,是今后的必然趨勢,無人能打敗的趨勢! 作者:Hoogle ;轉(zhuǎn)載自:簡書
向著全棧進(jìn)發(fā)?。。。。。。。。。。。。。。。。。。。。。。?!
我不是工程師,只是個(gè)產(chǎn)品汪..從產(chǎn)品角度或項(xiàng)目團(tuán)隊(duì)角度出發(fā),能夠和更少的項(xiàng)目團(tuán)隊(duì)成員去溝通信息相對會更加簡單…而且文章開頭的一個(gè)觀點(diǎn)“將前端細(xì)分將增加維護(hù)成本”確實(shí)很贊同..
前端工程師可以偏精通JS或CSS+HTML,但是他們是一體不可分割的~個(gè)人感覺~