寫在最前
我的前一篇文章
《給職場新人的10點職涯建議》
發表後,得到了很多簡友,特別是年輕程式設計師朋友們的喜愛,這令我頗感意外,但又很受鼓舞。同時,我也收到了一些簡信,大多來自那些畢業不久,剛步入工作崗位的職場新人。詢問的內容也大多是如何選擇職業方向,如何成為一名優秀的軟體工程師,以及怎樣快速提高自身的技能等。我在一一回覆的同時,不禁想結合自身的經歷,談談如何才能成為一名優秀的全棧工程師。
什麼是全棧工程師
全棧工程師一詞,最早出現於facebook工程師calos bueno的一篇文章 -
full stack
(需fq)。他把全棧工程師定義為對效能影響有著深入理解的技術通才。自那以後全棧這個詞便流行起來,我看到過的就有全棧工程師,全棧設計師,全棧運維,全棧市場營銷人員等等。而在「拉鉤」,「100offer」等針對網際網路人才的招聘**上,全棧工程師更是一躍成為熱門招聘職位,其薪資水平也比一般的開發工程師職位要高出一截。那麼,什麼是全棧工程師,我們又應該如何定義一名全棧工程師呢?
全棧工程師的價值
隨著時間的推移,全棧工程師的作用和價值在越來越多的產品或專案中得到了印證。那麼,我們來看看全棧工程師對於個人或公司意味著什麼。
全棧工程師的技能棧
看到這裡你一定會問,到底需要具備怎樣的技能才能成為一名全棧工程呢?下面這張圖來自medium,作者將軟體開發所涉及的各個方面分為層,又將每個層所包含的主要技術作為元件,製作了這張全棧技術圖。
從上面這張圖,我們不難發現,現在的技術體系是多麼龐大,每一年又會有新的技術加入到這些層中,而已有的技術又在不斷地更新。因此要掌握所有技術是根本不可能的,而成為全棧工程師也並不需要你真的掌握所有的技術,你應該將自己的精力聚焦於關鍵開發技能以及一些必須掌握的附加技能上。
關鍵開發技能(硬實力):
在掌握了這些核心技能之後,你可以根據自己的興趣與發展方向,學習其他方面的技術。比如,如果你對資料處理感興趣,那麼你可以學習大資料方面的技術。如果你對移動網際網路更感興趣,那麼你可以學習swift,開發ios應用。知識總是相通的,在有了良好的技術基礎後,學習其他知識將會變得非常容易。
附加技能(軟實力):
有經驗的技術領導者在招聘時,往往會同時考察應聘者技術能力與上述附加技能,而對於初級程式設計師的招聘來說,那些附加技能往往更被優秀的技術公司所看重。開發技能是你的硬實力,而附加技能則可以看作是你的軟實力,只有同時具備這兩方面技能,才能成為一名優秀的全棧工程師。
優秀的全棧工程師需要走出去
優秀的全棧工程師不應侷限於自己的工作,他更應該走出去,接觸不同的技術,分享自己的經驗和心得,認識更多的朋友。下面便是我的一些做法。
全棧工程師決不是一夜練成的,你需要打好技術基礎,強化核心技能,並持續學習。相信有一天你也能像我一樣,感受到自由地運用技術,開發出優秀產品所帶來的樂趣的。
如何成為一名優秀的iOS開發工程師
如果你是一位專業的ios開發工程師,你應該為自己感到自豪。因為你能在強大的ios系統下,一展身手實現自己和他人的想法,這是一件令人無比激動的事情。作為一名ios開發工程師,你一定想成為行業的佼佼者。那麼,如何成為一名優秀的ios開發工程師呢?我覺得做到以下幾點,你就離優秀越來越近了。作為碼農,英語水...
如何成為一名優秀的iOS開發工程師
如果你是一位專業的ios開發工程師,你應該為自己感到自豪。因為你能在強大的ios系統下,一展身手實現自己和他人的想法,這是一件令人無比激動的事情。作為一名ios開發工程師,你一定想成為行業的佼佼者。那麼,如何成為一名優秀的ios開發工程師呢?我覺得做到以下幾點,你就離優秀越來越近了。作為碼農,英語水...
如何成為一名優秀的軟體工程師
nicholas c.zakas 不多的心靈雞湯,呵呵,獻醜簡譯 原文 what makes a great software engineer?精益求精 無論什麼情況下,比如緊急的專案,時間不足還是專案複雜,不要妥協,你工作的質量 代表了你是否是乙個稱職的工程師,確保你的 任何時候都是正確的,嚴格...