全棧工程師的發(fā)展
在系統(tǒng)全面的大公司,全棧工程師并沒有一個穩(wěn)定的發(fā)展職位。我無比贊同知乎那個帖子里面這樣的一句話:
一個真正的全棧工程師,目標(biāo)只有一個:創(chuàng)業(yè)。
聽起來有些悲涼,但事實(shí)就是如此。任何一個方向頗具深度的工程師,都有希望為自己在那個特定的領(lǐng)域贏得自己的一席之地,是權(quán)威,也是技藝精深的專家。但是對于所謂的“全棧”而言,很多情況下根本就稱不上優(yōu)勢,你會寫數(shù)門程序語言,會設(shè)計(jì) API,會寫前端代碼,會做手機(jī) APP,甚至?xí)袌D,會和用戶溝通,但是倘若在這些方向都難說有哪一項(xiàng)足夠強(qiáng)大,那全面性又能在大公司的晉升線路上謀得什么?
但是創(chuàng)業(yè)的小公司就完全不是這樣了,你不能指望有 DBA、技服、產(chǎn)品經(jīng)理、美工、前端設(shè)計(jì)師、服務(wù)器工程師、操作系統(tǒng)管理員……無數(shù)角色,你只能有那么少得可憐的幾個人,每個人都必須是全才,搞得定各種事情,經(jīng)驗(yàn)豐富、視野廣闊。出了問題,一個人就可以搞定,而每個人,都可以彼此備份。
這也是“學(xué)習(xí)能力”在全棧工程師中扮演無比重要角色的原因。畢竟,在全面的工程師,也不可避免地涉足自己不熟悉的領(lǐng)域,快速學(xué)習(xí)并且把問題搞定,在這樣的過程中體現(xiàn)自己的價值。
全棧工程師擁有更廣闊的視野和更廣泛的學(xué)識。全棧工程師可以從更高的角度去看待問題,這比某個領(lǐng)域的專家,更不容易做出錯誤的決策。
事實(shí)上,軟件工程本來就是一個復(fù)雜的事情,需要工程師掌握和學(xué)習(xí)的知識很多。在我前一家公司,有這樣一個故事,好幾年前,公司嘗試給軟件工程師分檔,甚至依此使用不同的雇傭?qū)嶓w:讓來自子公司A的最優(yōu)秀的工程師設(shè)計(jì)了程序,再讓來自子公司B的平庸工程師去實(shí)現(xiàn)。最后這個方案徹底失敗了,兩家子公司的工程師被迫合并,這也證明了,軟件工程是一項(xiàng)復(fù)雜的腦力勞動,想像流水線工人那樣,把整個環(huán)境簡單地切分成若干個過程,然后通過簡單勞動完成,是不可能的。你可以舉出很多外包、內(nèi)包公司中上述的例子,但是在我看來,這只是對勞動力的壓榨而已,別指望這樣的形式能做出什么偉大的產(chǎn)品來。
最后,我想用一個無比簡單的詞來描述全棧工程師,肯定不夠準(zhǔn)確,但也足夠直接——視野!
縱使目標(biāo)再大,人的精力有限,于我來說,早些時候遠(yuǎn)大目標(biāo)隱約是“成功的軟件工程師”這個樣子,但是目標(biāo)是需要逐漸細(xì)化的。這些年我漸漸對自己的定位和未來有了一個清晰一點(diǎn)的認(rèn)識。確實(shí)我有很強(qiáng)的觀點(diǎn),覺得軟件工程師需要有足夠的全面性,在《我眼中的工程師文化》中我也說“工程師文化,不是只有權(quán)力的一面,它對工程師的要求,是每個人都要足夠能干,都要做許多的事”……
但是,全面性不代表沒有專精、沒有方向。深度和廣度統(tǒng)一的問題已經(jīng)有許許多多過往的人和我說過了,不存在一個在某一領(lǐng)域精深的牛人但是知識卻很窄,也不存在一個博學(xué)大師但是卻沒有一個自己擅長的領(lǐng)域;而方向更是不可回避的問題,以前和朋友開玩笑總結(jié)了幾類工程師的發(fā)展方向,就像打怪升級一樣,有數(shù)據(jù)庫專精、有前端專精、有語言設(shè)計(jì)專精、有機(jī)器學(xué)習(xí)領(lǐng)域?qū)>踔吝€有企業(yè)流程咨詢專精、敏捷實(shí)踐專精的……領(lǐng)域劃分實(shí)在是太寬闊了,就看技能點(diǎn)數(shù)如何分配。
-
工程師
+關(guān)注
關(guān)注
59文章
1570瀏覽量
68514
發(fā)布評論請先 登錄
相關(guān)推薦
評論