無(wú)論是前端工程師,還是后端工程師,都會(huì)面臨危機(jī)。
前端工程師:
前端的端,是個(gè)非常廣泛的,目前端有 IOS,Android,Chrome,IE,小程序,未來(lái)還會(huì)有全息影像的設(shè)備、穿戴設(shè)備、人機(jī)接口等技術(shù),最終都將歸于端內(nèi)。即使你是大前端,也不可能從都到尾負(fù)責(zé)所有的終端產(chǎn)品的開(kāi)發(fā),你一樣要和別人去配合完成自己最擅長(zhǎng)的內(nèi)容。而這些端會(huì)隨著技術(shù)的進(jìn)步可能會(huì)被新的端取代,比如以前的 windows Phone,諾基亞,及正在走向衰落的 IE,那么與之對(duì)應(yīng)的技術(shù)棧也將被淘汰。
要成為大前端,原來(lái)的 Web 工程師需要學(xué)習(xí)原生應(yīng)用的開(kāi)發(fā),移動(dòng)工程師則需要進(jìn)入 JavaScript 這個(gè)極為復(fù)雜的 Web 領(lǐng)域,除此之外,有許多前端框架層出不窮,JQuery,Bootstrap,Vue,Reac,Angular,后面還有更多 ui 框架,以有生之年逐無(wú)盡之技術(shù),做為前端的你能學(xué)的過(guò)來(lái)么?
除了技術(shù),大前端還需要你能更好的理解產(chǎn)品和用戶(hù)體驗(yàn),并與產(chǎn)品經(jīng)理、設(shè)計(jì)師和交互體驗(yàn)師進(jìn)行順暢的溝通,這里面要學(xué)習(xí)的知識(shí)一點(diǎn)也不比技術(shù)領(lǐng)域少。
后端工程師:
早期的編程大概是這樣的:2000 年左右時(shí)使用 Perl 寫(xiě) CGI 程序(Perl + HTML 混合編程),后來(lái)陸續(xù)學(xué) JavaScript、Java、C#、Python、Objective C、Go 等技術(shù),早期的項(xiàng)目或產(chǎn)品基本上都是從前做到后,除了設(shè)計(jì)之外,從切圖、前端頁(yè)面到業(yè)務(wù)邏輯、持久化、連接池、異常、緩存、日志、集群等等,基本上都要自己參與編程或獨(dú)立實(shí)現(xiàn),在那個(gè)年代,你很難以專(zhuān)業(yè)細(xì)分的方式運(yùn)作項(xiàng)目,因?yàn)楦菊也坏侥敲炊?a href="http://www.asorrir.com/v/tag/1730/" target="_blank">程序員。
現(xiàn)在的情況完全不一樣了,以前都是需要后端工程師或者架構(gòu)師搞定的事情,現(xiàn)在,云計(jì)算廠商都替你搞定了。比如阿里云的虛擬主機(jī)(ECS)、數(shù)據(jù)庫(kù)(RDS)、負(fù)載均衡(SLB)、文件存儲(chǔ)(OSS)、Redis、CDN、日志、NAS 等服務(wù)。后端工程師可以看看云計(jì)算廠商提供的基礎(chǔ)服務(wù)范疇,看看有沒(méi)有覆蓋你的知識(shí)和技能領(lǐng)域。類(lèi)似亞馬遜阿里云這樣的云計(jì)算廠商,上千的技術(shù)人員除了滿足自己系統(tǒng)的需求,其他資源都會(huì)投入到公共云的建設(shè)上,這些優(yōu)秀的工程師做出來(lái)基礎(chǔ)服務(wù),無(wú)論是穩(wěn)定性還是擴(kuò)展性,都會(huì)大大超過(guò)創(chuàng)業(yè)公司里幾個(gè)人搗騰出來(lái)的技術(shù)組件。而且這是一種不可逆轉(zhuǎn)的趨勢(shì)。
看到這里,你是否有種危機(jī)呢,大家都用云了,還要后端工程師干嗎?
破解之道
互聯(lián)網(wǎng)的高速發(fā)展需要技術(shù)上更為專(zhuān)業(yè)、更為精深的編程人員,所以前后端技術(shù)體系的分離,就成了大勢(shì)所趨,形成了一種“反模式”。 每個(gè)人發(fā)揮自己最強(qiáng)的那部分,才能做出最好的產(chǎn)品,每個(gè)人都生產(chǎn)自己最擅長(zhǎng)的產(chǎn)品,并交易(合作),整個(gè)社會(huì)的經(jīng)濟(jì)就會(huì)快速發(fā)展。
其實(shí),不論是哪個(gè)技術(shù)領(lǐng)域,如果你想在這個(gè)領(lǐng)域不斷深入,還是應(yīng)該把最寶貴的時(shí)間花在可遷移的技能上——那些永不過(guò)時(shí)的技能。不要被那些五花八門(mén)的框架和庫(kù)迷了眼。
那什么是永不過(guò)時(shí)的技能呢? 極客時(shí)間作者左耳朵耗子的答案非常具有參考性,就是:編程能力、架構(gòu)能力和工程能力。
編程能力,就是用代碼解決問(wèn)題的能力
你編程能力越強(qiáng),就能解決越復(fù)雜的問(wèn)題,細(xì)分之下,要有調(diào)試能力、算法、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)原理等基礎(chǔ)技能的支撐,你才能解決各種麻煩的問(wèn)題。
架構(gòu)能力,就是掌控復(fù)雜系統(tǒng)的能力
當(dāng)一個(gè)系統(tǒng)足夠復(fù)雜時(shí),你會(huì)寫(xiě)每一塊代碼、能解決每一個(gè)問(wèn)題,不等于你能搞定整個(gè)系統(tǒng),這就需要架構(gòu)能力。架構(gòu)能力包含了一些意識(shí),也包含認(rèn)識(shí)業(yè)務(wù)建立抽象模型,還有一些常見(jiàn)的模式等。
工程能力,其實(shí)核心就是成事的能力
要知道,當(dāng)系統(tǒng)規(guī)模越來(lái)越大時(shí),光靠你一個(gè)人是沒(méi)辦法完成的。那如何保證幾個(gè)高手能夠互相配合好?如何保證項(xiàng)目里面水平最差的人不拖后腿?工程化建設(shè)往往會(huì)跨越多個(gè)業(yè)務(wù),又如何保證質(zhì)量和代碼風(fēng)格呢?
這三項(xiàng)能力不管對(duì)于前端還是后端開(kāi)發(fā)來(lái)說(shuō),可以說(shuō)都是從初級(jí)、中級(jí)走向高級(jí)必須要跨越的鴻溝,也是作為一名程序員永不過(guò)時(shí)的技能。
-
工程師
+關(guān)注
關(guān)注
59文章
1590瀏覽量
69509
發(fā)布評(píng)論請(qǐng)先 登錄


硬件工程師看了只會(huì)找個(gè)角落默默哭泣#硬件工程師 #MDD #MDD辰達(dá)半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師

(仰天長(zhǎng)嘯)為什么受傷的總是硬件工程師...#MDD#MDD辰達(dá)半導(dǎo)體 #電子工程師

Allegro工程師能力升級(jí)建議 工程師技能如何升級(jí)進(jìn)階



硬件工程師的終極幻想:焊板子焊上人生巔峰!#半導(dǎo)體器件 #硬件工程師 #MDD辰達(dá)半導(dǎo)體
AN-354: 應(yīng)用工程師問(wèn)答——1幾個(gè)問(wèn)題


不同時(shí)期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過(guò)于真實(shí) #YXC晶振 #揚(yáng)興科技
想成為年薪百萬(wàn)的電機(jī)控制工程師,這幾個(gè)問(wèn)題你不得不會(huì)!


當(dāng)你的工程師朋友失聯(lián)時(shí),別氣,ta真的是在忙工作 #搞笑 #電子愛(ài)好者 #硬件工程師 #晶振 #揚(yáng)興科技

硬件工程師VS軟件工程師|硬件工程師看到這都淚目了!#硬件設(shè)計(jì) #硬件工程師 #電子工程師 #軟件工程師
FPGA算法工程師、邏輯工程師、原型驗(yàn)證工程師有什么區(qū)別?

評(píng)論