普通程序員該如何進階為全棧工程師?

如何成為一名全棧工程師(full stack developer)寸宵?互聯(lián)網(wǎng)最熱的話題之一。LinkedIn, Facebook上標榜自己是全棧工程師的人也越來越多元咙,似乎正在成為IT行業(yè)的新潮流和新趨勢梯影。Full Stack的概念早已不新鮮,廣大開發(fā)人員之間對”全検悖”類話題的討論也從未停止甲棍。曾經(jīng)看到過一篇關(guān)于全棧設計師的文章,毀譽參半脉课。有的人認為全棧只是一個頭銜而已,真正的還是看個人的能力和技術(shù)财异。

中國有句老話:魚和熊掌不可兼得倘零。而類似全棧工程師,全棧設計師這類的職業(yè)戳寸,似乎正在挑戰(zhàn)這一可能性呈驶。因為他們橫向發(fā)展的技能樹賦予了他們魚和熊掌兼得的能力。而國外對于全棧型人才疫鹊,有這么一個說法:Jack of all trades, but master of none. 翻譯成中文就是無所不能便一無所精袖瞻。如何避免成為廣而不精的全棧工程師,是廣大想要成為全棧設計師朋友們需要深入考慮的一個問題拆吆。

本質(zhì)上來講聋迎,這個話題其實是對互聯(lián)網(wǎng)行業(yè)“技多”是否等于“全棧”枣耀,“深度”和“廣度”哪個更重要的一場深層次的討論霉晕。

1.什么是全棧工程師?


全棧工程師捞奕,也叫全端工程師牺堰,英文Full Stack developer,是指掌握多種技能颅围,并能利用多種技能獨立完成產(chǎn)品的人伟葫。

Quora上有人提出了這個問題,其中一個高票回答是:

全棧工程師是指,一個能處理數(shù)據(jù)庫院促、服務器筏养、系統(tǒng)工程和客戶端的所有工作的工程師斧抱。根據(jù)項目的不同,客戶需要的可能是移動棧撼玄、Web棧夺姑,或者原生應用程序棧。

其實掌猛,“全椪嫡悖”指的是為了完成一個項目,所需要的一系列技術(shù)的集合荔茬》媳欤“棧”是指一系列子模塊的集合慕蔚。這些軟件子模塊或者組件組合在一起即可實現(xiàn)既定功能丐黄,不再需要其他模塊。

2.為什么全棧工程師會存在爭議孔飒?


上面提到過灌闺,全棧工程師的爭議在于對技能深度和廣度的探討。特別是在OSCON會議上坏瞄,一名Facebook的工程師說他們只聘請“全棧(Full stack)的程序員桂对。”此話題一出鸠匀,更引起了大家對成為全棧工程師的優(yōu)勢與劣勢的熱烈討論蕉斜。

優(yōu)勢:全棧工程師的技術(shù)發(fā)展是橫向的,涉獵技術(shù)很廣缀棍,能快速的運用他所掌握的技術(shù)知識開發(fā)出產(chǎn)品原型宅此。因為他們視野更寬闊,思維更活躍爬范,對技術(shù)和產(chǎn)品都十分敏感父腕,對于任何技術(shù)或設計,他總是有話可說青瀑÷滤校可以對團隊中的每一個人都提供有益的幫助,能大大減少團隊人員溝通狱窘、技術(shù)對接的時間和技術(shù)成本杜顺。所以他們當中,很多人成為了創(chuàng)業(yè)者或者在創(chuàng)業(yè)公司擔任技術(shù)合伙人蘸炸。

劣勢:正是由于橫向的技術(shù)發(fā)展躬络,導致全棧工程師往往博而不精。大多數(shù)自稱為“全棿钊澹”的工程師穷当,都停留在一種淺嘗輒止的“略懂”的境界提茁。至于具體如何實現(xiàn),如何讓架構(gòu)更適合后面階段的模塊化開發(fā)馁菜,那就真不知道了茴扁。

3.即便如此,仍有人在問汪疮,如何成為全棧工程師峭火?

一個合格的全棧開發(fā)人員應具有在構(gòu)建應用程序時涉及的所有方面的功能知識和能力。

1) 掌握多門編程語言

你需要精通多門編程語言智嚷,JAVA 卖丸、PHP、C#盏道、Python稍浆、Ruby、Perl 等猜嘱,因為你的大多數(shù)核心業(yè)務處理都需要用這些語言來寫衅枫。你既要掌握這些語言的語法,又需要非常熟悉如何基于這些語言進行項目的架構(gòu)朗伶、設計弦撩、實現(xiàn)以及測試。

在哪學Git / GitHub-你必須掌握如何使用Git來管理和分享你的代碼腕让。


2)運用開發(fā)框架和第三方庫

流行的開發(fā)語言孤钦,一般都伴有出色的開發(fā)框架歧斟,比如JAVA的Spring纯丸、MyBatis、Hibernate静袖,Python的Django觉鼻,PHP的 thinkphp、yin队橙,nodeJs的 express 等等坠陈。

在哪學:Courses.AngularClass.com

15本免費的Python電子書

3)前端技術(shù)

前端技術(shù)在今天的項目和產(chǎn)品研發(fā)過程中變得愈加重要。除了實現(xiàn)產(chǎn)品功能捐康,用戶體驗也是檢驗產(chǎn)品是否成功的標準之一仇矾。而這都依賴于前端技術(shù)的實現(xiàn),你至少需要掌握?HTML5解总、CSS3贮匕、JavaScript 等基本前端技術(shù),同時進一步學習 JQuery花枫、LESS刻盐、SASS掏膏、AngularJS或REACT等前端框架或第三方庫。

在哪學:You don’t know JS

4)數(shù)據(jù)庫與緩存

任何產(chǎn)品或項目都需要一個數(shù)據(jù)庫來存儲數(shù)據(jù)敦锌。作為全棧工程師馒疹,你也需要至少掌握一到兩個數(shù)據(jù)庫,并知道怎樣與數(shù)據(jù)庫進行交互乙墙。目前流行的數(shù)據(jù)庫主要有MySQL颖变、MongoDB、Redis伶丐、Oracle悼做、SQLServer等。MongoDB作為文檔型數(shù)據(jù)庫哗魂,在互聯(lián)網(wǎng)產(chǎn)品中正被越來越多地使用肛走,對于規(guī)模稍大一些的項目,我仍推薦使用MySQL或商用的Oracle作為后端數(shù)據(jù)庫录别。而Redis這樣的內(nèi)存數(shù)據(jù)庫則可以用于緩存朽色,以提升系統(tǒng)的性能。

在哪學:MongoDB MERN教程系列

Redis 教程

5)基本設計能力

大部分關(guān)于全棧工程師的文章或討論中都很少涉及到設計能力的要求组题。但我卻認為這項技能非常重要葫男,基本的原型設計,UI設計,UX設計都是需要了解的崔列。

在哪學:Mockplus博客


6)除了良好的開發(fā)技術(shù)知識梢褐,自我要求也是全棧工程師必備的因素:

全局性思維

良好的溝通能力

創(chuàng)造力

好奇心

時間管理能力

總結(jié)

根據(jù)格拉德威爾的一萬小時定律,希望熟練的掌握前端赵讯、后端盈咳、客戶端方向的知識內(nèi)容,每天都花時間來鉆研也得花10年左右的時間边翼。所以鱼响,全棧工程師決不是一夜練成的,你需要打好技術(shù)基礎组底,強化核心技能丈积,并持續(xù)學習才能應對更多的挑戰(zhàn)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末债鸡,一起剝皮案震驚了整個濱河市江滨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌厌均,老刑警劉巖唬滑,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡间雀,警方通過查閱死者的電腦和手機悔详,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來惹挟,“玉大人茄螃,你說我怎么就攤上這事×猓” “怎么了归苍?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長运怖。 經(jīng)常有香客問我拼弃,道長,這世上最難降的妖魔是什么摇展? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任吻氧,我火速辦了婚禮,結(jié)果婚禮上咏连,老公的妹妹穿的比我還像新娘盯孙。我一直安慰自己,他們只是感情好祟滴,可當我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布振惰。 她就那樣靜靜地躺著,像睡著了一般垄懂。 火紅的嫁衣襯著肌膚如雪骑晶。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天草慧,我揣著相機與錄音桶蛔,去河邊找鬼。 笑死冠蒋,一個胖子當著我的面吹牛羽圃,可吹牛的內(nèi)容都是我干的乾胶。 我是一名探鬼主播抖剿,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼识窿!你這毒婦竟也來了斩郎?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤喻频,失蹤者是張志新(化名)和其女友劉穎缩宜,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡锻煌,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年妓布,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宋梧。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡匣沼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出捂龄,到底是詐尸還是另有隱情释涛,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布倦沧,位于F島的核電站唇撬,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏展融。R本人自食惡果不足惜窖认,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望告希。 院中可真熱鬧耀态,春花似錦、人聲如沸暂雹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽杭跪。三九已至仙逻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間涧尿,已是汗流浹背系奉。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留姑廉,地道東北人缺亮。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像桥言,于是被迫代替她去往敵國和親萌踱。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容