普通程序員該如何進(jìn)階為全棧工程師费韭?

文章開頭:本文是紅旗飄飄老師發(fā)表在產(chǎn)品壹佰的文章(http://www.chanpin100.com/article/105841 )轉(zhuǎn)載文章僅供大家習(xí),不作任何商業(yè)用途。

全棧工程師決不是一夜練成的蕊程,你需要打好技術(shù)基礎(chǔ),強(qiáng)化核心技能驼唱,并持續(xù)學(xué)習(xí)才能應(yīng)對(duì)更多的挑戰(zhàn)藻茂。

如何成為一名全棧工程師(full stack developer)?互聯(lián)網(wǎng)最熱的話題之一玫恳。LinkedIn, Facebook上標(biāo)榜自己是全棧工程師的人也越來越多辨赐,似乎正在成為IT行業(yè)的新潮流和新趨勢(shì)。Full Stack的概念早已不新鮮京办,廣大開發(fā)人員之間對(duì)”全椣菩颍”類話題的討論也從未停止。曾經(jīng)看到過一篇關(guān)于全棧設(shè)計(jì)師的文章惭婿,毀譽(yù)參半不恭。有的人認(rèn)為全棧只是一個(gè)頭銜而已叶雹,真正的還是看個(gè)人的能力和技術(shù)。

中國有句老話:魚和熊掌不可兼得县袱。而類似全棧工程師浑娜,全棧設(shè)計(jì)師這類的職業(yè),似乎正在挑戰(zhàn)這一可能性式散。因?yàn)樗麄儥M向發(fā)展的技能樹賦予了他們魚和熊掌兼得的能力筋遭。而國外對(duì)于全棧型人才,有這么一個(gè)說法:Jack of all trades, but master of none. 翻譯成中文就是無所不能便一無所精暴拄。如何避免成為廣而不精的全棧工程師漓滔,是廣大想要成為全棧設(shè)計(jì)師朋友們需要深入考慮的一個(gè)問題。

本質(zhì)上來講乖篷,這個(gè)話題其實(shí)是對(duì)互聯(lián)網(wǎng)行業(yè)“技多”是否等于“全椣炻浚”,“深度”和“廣度”哪個(gè)更重要的一場深層次的討論撕蔼。

1.?什么是全棧工程師豁鲤?

全棧工程師,也叫全端工程師鲸沮,英文Full Stack developer琳骡,是指掌握多種技能,并能利用多種技能獨(dú)立完成產(chǎn)品的人讼溺。

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

全棧工程師是指楣号,一個(gè)能處理數(shù)據(jù)庫、服務(wù)器怒坯、系統(tǒng)工程和客戶端的所有工作的工程師炫狱。根據(jù)項(xiàng)目的不同,客戶需要的可能是移動(dòng)棧剔猿、Web棧视译,或者原生應(yīng)用程序棧。

其實(shí)归敬,“全椏岷”指的是為了完成一個(gè)項(xiàng)目,所需要的一系列技術(shù)的集合弄慰。“椀妫”是指一系列子模塊的集合陆爽。這些軟件子模塊或者組件組合在一起即可實(shí)現(xiàn)既定功能,不再需要其他模塊扳缕。

2.?為什么全棧工程師會(huì)存在爭議慌闭?

上面提到過别威,全棧工程師的爭議在于對(duì)技能深度和廣度的探討。特別是在OSCON會(huì)議上驴剔,一名Facebook的工程師說他們只聘請(qǐng)“全棧(Full stack)的程序員省古。”此話題一出丧失,更引起了大家對(duì)成為全棧工程師的優(yōu)勢(shì)與劣勢(shì)的熱烈討論豺妓。

優(yōu)勢(shì):全棧工程師的技術(shù)發(fā)展是橫向的,涉獵技術(shù)很廣布讹,能快速的運(yùn)用他所掌握的技術(shù)知識(shí)開發(fā)出產(chǎn)品原型琳拭。因?yàn)樗麄円曇案鼘掗煟季S更活躍描验,對(duì)技術(shù)和產(chǎn)品都十分敏感白嘁,對(duì)于任何技術(shù)或設(shè)計(jì),他總是有話可說膘流⌒趺澹可以對(duì)團(tuán)隊(duì)中的每一個(gè)人都提供有益的幫助,能大大減少團(tuán)隊(duì)人員溝通呼股、技術(shù)對(duì)接的時(shí)間和技術(shù)成本耕魄。所以他們當(dāng)中,很多人成為了創(chuàng)業(yè)者或者在創(chuàng)業(yè)公司擔(dān)任技術(shù)合伙人卖怜。

劣勢(shì):正是由于橫向的技術(shù)發(fā)展屎开,導(dǎo)致全棧工程師往往博而不精。大多數(shù)自稱為“全椔砜浚”的工程師奄抽,都停留在一種淺嘗輒止的“略懂”的境界。至于具體如何實(shí)現(xiàn)甩鳄,如何讓架構(gòu)更適合后面階段的模塊化開發(fā)逞度,那就真不知道了。

3.?即便如此妙啃,仍有人在問档泽,如何成為全棧工程師?

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

1) 掌握多門編程語言

你需要精通多門編程語言馆匿,JAVA 、PHP燥滑、C#渐北、Python、Ruby铭拧、Perl 等赃蛛,因?yàn)槟愕拇蠖鄶?shù)核心業(yè)務(wù)處理都需要用這些語言來寫恃锉。你既要掌握這些語言的語法,又需要非常熟悉如何基于這些語言進(jìn)行項(xiàng)目的架構(gòu)呕臂、設(shè)計(jì)破托、實(shí)現(xiàn)以及測試。

在哪學(xué):Git / GitHub-你必須掌握如何使用Git來管理和分享你的代碼歧蒋。

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

流行的開發(fā)語言土砂,一般都伴有出色的開發(fā)框架,比如JAVA的Spring疏尿、MyBatis瘟芝、Hibernate,Python的Django褥琐,PHP的 thinkphp锌俱、yin,nodeJs的 express 等等敌呈。

在哪學(xué):Courses.AngularClass.com

15本免費(fèi)的Python電子書

3)?前端技術(shù)

前端技術(shù)在今天的項(xiàng)目和產(chǎn)品研發(fā)過程中變得愈加重要贸宏。除了實(shí)現(xiàn)產(chǎn)品功能,用戶體驗(yàn)也是檢驗(yàn)產(chǎn)品是否成功的標(biāo)準(zhǔn)之一磕洪。而這都依賴于前端技術(shù)的實(shí)現(xiàn)吭练,你至少需要掌握?HTML5、CSS3析显、JavaScript 等基本前端技術(shù)鲫咽,同時(shí)進(jìn)一步學(xué)習(xí) JQuery、LESS谷异、SASS分尸、AngularJS或REACT等前端框架或第三方庫。

在哪學(xué):You don’t know JS

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

任何產(chǎn)品或項(xiàng)目都需要一個(gè)數(shù)據(jù)庫來存儲(chǔ)數(shù)據(jù)歹嘹。作為全棧工程師箩绍,你也需要至少掌握一到兩個(gè)數(shù)據(jù)庫,并知道怎樣與數(shù)據(jù)庫進(jìn)行交互尺上。目前流行的數(shù)據(jù)庫主要有MySQL材蛛、MongoDB、Redis怎抛、Oracle卑吭、SQLServer等。MongoDB作為文檔型數(shù)據(jù)庫马绝,在互聯(lián)網(wǎng)產(chǎn)品中正被越來越多地使用豆赏,對(duì)于規(guī)模稍大一些的項(xiàng)目,我仍推薦使用MySQL或商用的Oracle作為后端數(shù)據(jù)庫。而Redis這樣的內(nèi)存數(shù)據(jù)庫則可以用于緩存河绽,以提升系統(tǒng)的性能。

在哪學(xué):MongoDB MERN教程系列

Redis 教程

5)?基本設(shè)計(jì)能力

大部分關(guān)于全棧工程師的文章或討論中都很少涉及到設(shè)計(jì)能力的要求唉窃。但我卻認(rèn)為這項(xiàng)技能非常重要耙饰,基本的原型設(shè)計(jì),UI設(shè)計(jì),UX設(shè)計(jì)都是需要了解的纹份。

在哪學(xué):Mockplus博客

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

全局性思維

良好的溝通能力

創(chuàng)造力

好奇心

時(shí)間管理能力

總結(jié)

根據(jù)格拉德威爾的一萬小時(shí)定律,希望熟練的掌握前端蔓涧、后端件已、客戶端方向的知識(shí)內(nèi)容,每天都花時(shí)間來鉆研也得花10年左右的時(shí)間元暴。所以篷扩,全棧工程師決不是一夜練成的,你需要打好技術(shù)基礎(chǔ)茉盏,強(qiáng)化核心技能鉴未,并持續(xù)學(xué)習(xí)才能應(yīng)對(duì)更多的挑戰(zhàn)。

文章結(jié)尾:再次申明所有轉(zhuǎn)載文章僅供學(xué)習(xí)鸠姨,感謝紅旗飄飄老師的分享铜秆,如果喜歡我們的文章點(diǎn)關(guān)注??吧!比心呦讶迁!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末连茧,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子巍糯,更是在濱河造成了極大的恐慌啸驯,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鳞贷,死亡現(xiàn)場離奇詭異坯汤,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)搀愧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門惰聂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人咱筛,你說我怎么就攤上這事搓幌。” “怎么了迅箩?”我有些...
    開封第一講書人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵溉愁,是天一觀的道長。 經(jīng)常有香客問我饲趋,道長拐揭,這世上最難降的妖魔是什么撤蟆? 我笑而不...
    開封第一講書人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮堂污,結(jié)果婚禮上家肯,老公的妹妹穿的比我還像新娘。我一直安慰自己盟猖,他們只是感情好讨衣,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著式镐,像睡著了一般反镇。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上娘汞,一...
    開封第一講書人閱讀 51,365評(píng)論 1 302
  • 那天歹茶,我揣著相機(jī)與錄音,去河邊找鬼你弦。 笑死辆亏,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鳖目。 我是一名探鬼主播扮叨,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼领迈!你這毒婦竟也來了彻磁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤狸捅,失蹤者是張志新(化名)和其女友劉穎衷蜓,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尘喝,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡磁浇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了朽褪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片置吓。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖缔赠,靈堂內(nèi)的尸體忽然破棺而出啸蜜,到底是詐尸還是另有隱情称近,我是刑警寧澤,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布芽狗,位于F島的核電站矮锈,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一戈抄、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧后专,春花似錦呛凶、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽模闲。三九已至建瘫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間尸折,已是汗流浹背啰脚。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留实夹,地道東北人橄浓。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像亮航,于是被迫代替她去往敵國和親荸实。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

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