如何成爲一名全棧開發工程師

我曾經有一個夢想是要成爲一名全棧開發工程師,由於我認爲一個程序員無所不精無所不能是一件很牛逼的事情。程序員

同時當一個程序員無所不精的時候,不只僅本身能夠開一家公司本身接活幹,同時即使不辦一家公司,在一家公司好歹能夠吃香的喝辣的。web

抱着這個理想目標,因而在那段時間我時而學Docker,時而學Nginx,時而學SpringBoot,時而學分佈式,時而學Node.js,時而學Vue.js等等,總而言之運維、測試、先後端等能學的都學了。可是學完後來,留下的僅僅只是HelloWorld。其餘有深度的少之又少。算法

以前那段時間我看書的速度很是快,幾乎是兩週三週一本書,技術方面的居多,可是呢?看了太多了,留下的太少。感受出來知道哪項技術的名字和簡單的Example以外,其餘都沒有了。編程

假設我將快速遍讀羣書的時間用來專攻一本或者兩本書,那麼我相信這一本或者兩本書我已經足夠吃透了。就算不足夠吃透的話,半透應該沒問題吧。後端

在知乎上我也搜索過很多關於如何成爲一名全棧開發工程師,可是最終我只能一個這樣的結論,那就是一專多能。因此我決定了接下來我所要作的就是一專。數據結構

曾經時常逛逛拉勾,不爲跳槽,只爲看看如今有哪些技術比較主流,而後就去學,記得當初學的時候,我那個時候學習是這樣的,百度搜索找到對應的Demo,而後將人家的例子練習一遍,發現能夠運行,十分高興,而後就無論了,我就認爲這項技術我已經懂了。固然了,若是遇到一些問題,我會先找找怎麼解決這個問題,可是通常狀況下是百度搜索出來的幾乎質量不是過高。框架

以致於不少Demo跑起來了,一旦測試這裏報錯那裏報錯我就不想試了,一每天這樣,最後發現技術廣度雖然增長了點,可是這個增長的點彷佛毫無心義,就像我前面說的那樣僅僅只是知道名字或者是寫簡單Demo,對於其餘的,好比技術的優缺點,應用場景等等一無所知。運維

我以前覺得在小公司裏面作先後端加運維和測試,就算是全棧了,可是後來我發現,這並非我想要的全棧。由於這樣一來我除了會用以外,彷佛什麼都不懂了,特別是有些時候出現問題時,我都忽略了日誌的做用,不先查看日誌直接找到對應的信息直接百度。變的慢慢缺少思考了。變的像真正的碼農了。這不是我想要的樣子。編程語言

以前我在一篇文章中說過,我不喜歡別人叫我碼農,由於碼農在我看來是將腦力勞動變爲體力勞動。有的時候我再想我寫的代碼到底有什麼用呢?僅僅只是複製粘貼嗎?分佈式

不,代碼應該表現的是個人思想,個人嚴謹思想,個人一絲不苟。因而我反思本身,想到以前的代碼,看到那堆糟糕的英文,我站在鏡子面前看着我,真有種想那拖板鞋砸本身。

站在鏡子面前我想,若是我當初寫的嚴謹的話會不會有這麼多問題,同時無效率的加班這麼長時間。

知乎上有很多人這樣認爲,他們認爲只有這樣作才能成爲全棧?好比:

 

 

 固然了,也不乏客觀求實的回答,例如:

 

 我比較偏向這位客觀求實的回答。

 

具體過多的我就很少說了,知乎或者其餘博客平臺有一大把這樣的。

以倚天屠龍記裏面的張無忌來講,張無忌自從學會的乾坤大挪移以後,在光明頂與少林、武當、峨眉、崑崙、崆峒、華山等六大門派對戰,並在與少林對戰的時候交戰過程當中輕易就將少林的龍爪手學會以此克敵。張無忌之因此能快速學會乾坤大挪移得益於身上的九陽神功。

 

在此我想說的是做爲一名程序員,要想無所不能舉一反三,必先將內功心法練好,否則的話再怎麼折騰感受也沒多大用。

或許有朋友說這個內功心法是什麼?

個人回答是這個內功心法就是你吃飯的傢伙,好比Java程序員一般吃飯的傢伙是Spring全家桶之類的,做爲Java程序員能夠從Spring源碼開始研究,等研究透了,就能舉一反三,其實我相信那些已經懂得了好幾門編程語言的朋友們他們很能體會到舉一反三的道理。至於如何研究,筆者也不知道,由於筆者正打算研究,不過好在目前市面上有不少資料,許多有上進心的工程師研讀源碼時,踩了很多坑並將這些寫成系列文章,以此讓廣大友友們受益。

 

我愈發的喜歡程序員這個職業,由於什麼呢?由於樂於分享,將本身所知道的和吃的虧寫成相關文章或者文檔分享給其餘朋友們,讓其餘朋友爲此少吃虧少浪費些沒必要要的時間。

換成像其餘職業的話,不免會遇到師傅帶徒弟時留後手之類的。

固然了,也並非說程序員這個羣體就沒有這樣的人,可是相對於那些傳統產業而言,程序員這行這種現象不是太多。由於每一個程序員朋友都知道,幫助他人就是在幫助本身。

同時在幫助他人的時候,本身所收穫的不只僅是自我成長,同時還有來自心裏的欣喜,你能夠理解爲成就感。

 

回到以前這個問題,如何成爲一名全棧開發工程師?

就我本身的想法我是這麼認爲的:

第1、作好當前的事情(好比在公司的時候認真編寫每一道程序,由於公司一旦交付出去後,不只僅表明的是公司的形象,同是也表明我本身的形象);

第2、不要三心二意看到這個厲害就去學這個,看到那個厲害就去學那個,應當根據當前的業務而言,好比當前SSM框架開發這個項目及其單體拆分已經足夠了而你仍是想要以本身的角度出發動輒微服務分佈式,這樣到頭來苦的仍是本身;

第3、仍是前面那個老兄說的對,全棧並非指全部方面都略知皮毛的工程師,而是指在某一方面具備深刻研究,同時能夠在其它方面快速上手,解決問題,或協調他人解決問題的那一類人,因此首先要專一於當前的,好比我是Java開發工程師,應當專一於Java相關的,好比我目前用的最多仍是Spring,最好仍是應當好好研究下Spring,能夠研讀它的源碼,畢竟目前相關的博文也很多,同時書籍更多,而不是去追求其餘之外的技術;

第4、興趣,將編碼當作一件快樂的事情總比對着它發愁要好吧,同時興趣也是不斷前行的力量之一;

第5、堅持,著名的一萬小時定律就是這樣,固然了,這個一萬小時我在前面一篇文章中說過,一萬小時並非像我以前那樣這裏學點那裏學點,而是要專一,我發現我以前這裏學點那裏學點感受編程語言彷佛沒有什麼不同的地方,都是基本語法,而後高級特性,而後web方面,而後就是框架了。

 

最後,我給我本身2019年定下的大目標和小目標,固然了,大目標是但願可以成爲一名高級開發工程師,可以獨當一面,帶動團隊。我知道這並非一會兒可以實現的,因此我將其定爲個人長期目標。

 

小目標分爲以下幾類:

生活類:

(1)培養良好的做息習慣,晚上11點00關燈睡覺,早上8點起來(無論是平時仍是節假日都遵循,由於我以爲時常熬夜的話,先不說傷身吧,美好的一天就由於睡覺過去了一半實在是太惋惜了);

(2)適當鍛鍊本身的廚藝(老是出去吃或者點外賣確實有些膩了);

(3)鍛鍊身體(跑跑步、羽毛球、散步等),身體是革命的本錢,我可不想有一天倒在電腦面前;

 

學習類:

(1)認真踏實的讀書(書中的例子,認真練習,模仿同時作筆記,不能只追求數量而不重質量了,先以數據結構與算法分析這本書爲例);

(2)堅持寫博客,並不斷提升文章的質量,以博客園這位仁兄爲楷模,五年裏一直在不斷堅持寫,同時也一直再給本身定目標並實現目標,我以爲這種拼搏精神和學習精神值得我和許多小夥伴們學習;

 

 

(3)對所使用的Spring全家桶中的Spring好好研讀一番;

(4)個人Github很久都沒有更新了,我以爲有必要將我在工做經常使用到以爲很不錯,應對編寫個類庫分享給你們;

(5)擴展知識面,感受知識面仍是太窄了,有一句名言叫作,人醜就是要多讀書,可是我自認爲我不醜,不過我以爲個人精神很匱乏,須要精神食糧;

 

工做類:

(1)來年我要實現代碼Review,並在團隊中推行,固然了,這個我須要溝通,之因此代碼Review,緣由在於我不想團隊編碼陷入各自爲戰的境地;

(2)代碼約束仍是要的,從我本身寫的代碼出發,問題很多,看到其餘同事的代碼,一樣有問題,我但願可以定下一個規範,能夠參考阿里巴巴的Java開發手冊,固然了同時也要結合實際狀況;

(3)今年以爲領導派給的很多任務,我沒有作好,雖然不必定是個人職責,可是沒作好就是沒作好,不想找太多的藉口,我但願從如今開始可以將事情作好,無論最終是否完成,起碼態度上要好,我不但願個人心態變成面向工資編程,畢竟就我而言,成長比工資更重要,固然了吃飽飯睡好仍是要的;

(4)更好的協助同事完成任務,同時也保障本身完成的前提下(以前我犯了一個錯誤就是我幫助同事把他的任務作完了,卻沒有把本身的作完,我之因此認爲是一個錯誤是由於那位同事並無開始作這個任務時,沒有思考怎麼作,我就已經幫她作完了,這纔是最讓我痛心的,應該檢討的,我總但願本身變的更強,自認爲幫助同事把他們的任務所有搞定是一件很牛逼的事情,可是本身的卻沒有作好,弄的我在領導面前都有些擡不起頭了);

 

愛情類:

一句話,我要嫁給愛情,雖然我是一個Boy。即使天天生活如此繁忙,節奏如此快,我相信我必定可以遇到與我共此一簾幽夢的女孩。

 

財務類:

這個我要小小的保密了哈,總之我相信我可以實現。

 

旅行類:

這個看狀況吧,我是但願來年北京回暖的時候,可以去登爬山,爬山但是個人愛好之一。固然了,節假日的時候,若是能夠的話出去走走,世界那麼大,出去看看也挺好的。

 

最後但願每一個IT小夥伴們在即將到來的新的一年給本身定下一個目標而後爲之努力去實現它。

 

再祝各位IT小夥伴新的一年,身體健康,家庭和氣,工做順利。

相關文章
相關標籤/搜索