不知不覺,一晃年關將近,即將翻開2019,進入新的一頁。html
這周已經在朋友圈看到了來自公衆號《恰同窗少年》《Edi.Wang》和《吃草的羅漢》幾位老師寫下的年終總結,他們的年終總結讓我感想頗多,對本身的2019年也感想頗深,對2020年也充滿期待,是時候對過去一年的一些感悟作一個簡單的總結了。程序員
在2018年的年終總結中,與其說是一個總結,不如說是寫了一堆漂亮話,其實真正落地的flag太少,並且總結不夠完全,沒有起到總結經驗,反思教訓的意義。算法
整體上來講,我應該作個對技術充滿熱情和追求的開發者,而在去年的年終總結大概也只表達了一個意思,不要作雲程序員,不要作雲程序員,不要作雲程序員。架構
而2019年,個人目標就是迴歸本質,不作雲程序員,從如今來看,至少從思惟模式上,已經發生了很大的變化,至少「我以爲xxx技術也不過如此」「我覺得xxx技術不過是xxx」這樣的主觀評判的口氣已經不會在說了。框架
之因此成爲「雲程序員」,大概是來源於過去若干年有意無心的習慣使然。微服務
有時候得認可,越是中小公司,越容易培養所謂通才,由於公司的發展尚處於摸石頭過河的階段,每每須要在紛繁複雜的混沌亂局中尋找一切能夠生存的機會,這也意味着中小企業對開發者的要求幾乎都是招之能來,來之能戰,戰之能勝的通才。中小企業也並無太多職業生涯規劃或培訓指導的工做安排,因此工程師的成長每每須要靠本身的方式。工具
大部分所謂成長,實際上是在憋工齡,在一個又一個圈子中繞來繞去。你會用到許多東西,實際上你沒法學到真正屬於本身的技能。有時候會貪圖掌握更多知識,尤爲是新技術,因而就開始走在了雲程序員的路上。彷佛許多中小企業出來的開發者更喜歡自稱爲全棧工程師,並自稱本身什麼都會,有的甚至會所以而對那些真正從事技術領域的專業開發者帶有偏見,覺得他們是死腦筋,其實每每是井底之蛙的我的之見。單元測試
專業公司的培養形式是以提升效率爲目標的工業化培養形式,對專才的要求也愈來愈高。IT是一個複雜程度絲絕不亞於其餘產業的系統工程,它涉及的領域和技術很是多,幾乎每個方面都值得人花一生去認真探究。事實上只有優秀的公司纔有可能培養出專才,並且纔有這樣的土壤,可以讓一些開發者可以把時間花在某些專業領域持續學習和研究,而後讓知識產生價值。學習
規模越大、越優秀的公司越容易對開發者產生吸引力,除了其待遇問題外,每每是由於這些公司專業化程度更高,也意味着你更容易快速成長,由於專一於一個領域顯然比沒法專一於一個領域更能帶來更快的成長。從軟件研發崗位來講,當你在某些技術方向上的深度上到必定程度,再來擴充廣度時,也更容易吸取到有用的東西。固然,如今互聯網公司也逐漸開始往通才發展,由於掌握全局思惟的開發者更容易作出產品,可是互聯網公司和中小企業的通才區別依然比較大。互聯網公司須要的是具有互聯網思惟,可以把本身一塊小天地處理完美,還能兼顧其餘人工做的可複用型T字型人才,而小企業要的大概是一字型人才。測試
尤爲對於長沙這座小城市而言,更難以發現專一於某些領域的開發者,或許與企業規模和職業定位有必定的關係,其實哪怕優秀如BAT或華爲,也或許沒法找到太多某些領域的專業開發者,除了公司的客觀因素,與開發者們的主觀選擇也有關係。固然,無論在大公司或小公司,這不能妨礙咱們成爲專業開發者,只是意味着若是咱們要成爲某些領域的大牛,得花更多的時間和精力來經營本身的領域。
固然,專業/不專業,雲程序員/非雲程序員或許自己不重要,畢竟對於大部分開發者來講,選擇IT知識混口飯吃。而對於有追求的開發者來講,更應該長期的職業發展全局均衡,而不要僅僅關注眼前的利益。尤爲在目前這個時代,你的每一段職場,其實不只僅在爲金錢工做,而是爲你的簡歷工做。如何從你的職場中積累對將來發展有價值的東西,纔是核心關鍵的因素。不論你在哪家公司,總會有許多讓你收穫頗多的東西。常懷感恩之心,用心去發現價值,總能讓你成爲正能量的傳播者。這樣的你,既是公司最寶貴的財富,也同時會讓你成爲人羣中的閃光點。
如前文所說,軟件領域是一個很是複雜的系統工程,每個專業領域都值得人花一生去努力鑽研,可是對於大部分開發者來講其實無需如此,每每只需花幾年時間,就能快速吸收到IT軟件發展的精髓,併成長爲公司的核心人員。
當你成長起來以後,或許會覺得框架就是技術的王道;也會覺得軟件就是工具+框架的結合,而忽略了更具備廣泛意義的基礎技能和算法能力;在抽象化思惟上,在過程式思惟這條路上越走越遠,也極大的侷限了開發者的成長;你會覺得只有底層代碼纔是代碼,業務代碼或增刪改查就不是代碼;你會覺得寫文檔、寫PPT的人都是吹牛逼的。這些都是開發者的怪毛病
軟件研發技能確實是一個值得仔細探究的核心領域,哪怕簡單到一句需求的描述,也須要用系統性思惟來思考這個問題。
回顧過去,我老是在想,我真的懂得作項目麼,真的懂得如何作好一個軟件麼?我作的項目是否還有進一步能夠提升的空間?如何優雅的收集客戶需求,如何優雅的打造完美的產品?如何優雅的作好一個項目?如何讓每個項目都成爲標杆項目?如何從失敗中吸收經驗教訓。好吧,我有點囉嗦。
作一個軟件真的並不是想象中那麼簡單,須要將行業思惟與IT思惟更加完美的融合,既要從更高的戰略層面思考問題,又要從代碼的微觀層面思考問題,有思考有設計、有碰撞有火花,這剛好是軟件工程最大的魅力所在。
2019年看了大概20-30本書,並寫了超過15篇書評。包括如下書籍,我認爲這些書籍給我帶來的無窮收穫,遠超這些書自己的貨幣價值。
《領域驅動設計-軟件系統核心複雜性應對之道》:這本書來自埃文斯-埃裏克的書,是一本經典的領域驅動設計的書,在2018年8月我開始認真閱讀其中的每一個文字,並讓我對領域驅動有了更深層次的理解;今年我還經過GitChat購買了張逸老師的領域驅動設計的課程,張逸老師不愧爲領域驅動設計方面的專家,他用本身的經驗解釋了領域驅動設計,讓我對這本書、以及相關知識都有了系統而全面的瞭解,同時還經過這一個課程瞭解了更多的知識領域,對健全個人知識體系產生了巨大的做用。
《中臺》:來自阿里巴巴鍾春老師的中臺,這本書介紹了阿里巴巴中臺建設的歷程,這本書造出了一個獨特的中國概念,也刷新了個人知識觀,雖然短時間來看我所經歷的企業都沒有中臺的打算,但可以讓我具有全局性思惟來思考IT體系建設的問題。
《小團隊、大架構》:來自張清輝老師,這本書介紹了攜程的.NET技術架構轉型過程,讓我對.NET架構的演進方向有了明確的認識。固然這本書過多的介紹輪子,許多讀者或許不喜歡,若是跟《微服務架構模式》一塊兒交替的看,必定會產生不錯的效果。
《構建之法》:來自鄒欣老師,這本書介紹了軟件工程師的成長和微軟的IT管理模式,讓我可以靜下來思考當下本身的發展方向。做爲一個擁有十年工做經驗的開發者,已經陷入了一個以自我爲中心的乖蹇,而周筠老師對個人悉心教導,也讓我很是感動,我也要持續努力,堅決本身的發展方向,努力作一個腳踏實地的開發者。
《浪潮之巔》共兩卷:這是吳軍老師的做品,吳軍老師的質樸清新,不刻意使用過多的辭藻鋪墊的寫做風格讓我獲益匪淺,同時講述的一個個故事又是如此的引人入勝。從故事中,咱們看到了一羣充滿夢想的年輕人們,他們在互聯網的浪潮之下作出的選擇,是如何一點一點的改變了世界。
《實例化需求》:這是一本介紹BDD模式的書,介紹了行爲驅動開發這種模式,讓我得到了新的知識。固然短時間內用不起來,但多學一點總不會吃虧。
除此以外還有:《代碼整潔之道》、《重構-改善既有代碼的藝術2》、《持續交付2.0》、《PMBook》(好吧,考了12月的pmp,把pmbook看了四遍)、《程序員的三門課》、《Http/2基礎教程》、《混亂:如何成爲失控時代的掌控者》、《個人世界觀》、《算法圖解》、《將來簡史》、《刷新》、《修煉之道》、《獵豹行動》、《單元測試的藝術》和剛剛讀完的《華爲方法論》。
這20幾本書都是不一樣方向的書,與可以讀完50本書或更多的優秀前輩們相比確實還存在一點差距,固然這些書有精讀有略讀,甚至有的實際上是牛嚼牡丹,值得之後細細品味。
有的書着實發人深省帶來了許多啓迪,有的書則讓個人知識體系進一步全面,不過從書到知識到技能,還須要進一步實踐、修煉和理解,否則依然是走在雲程序員的路上。
2019年比較大的成績,拉了一個技術社區應該算是一個;從2月的醞釀,到4月的落地,花了很多的精力,並且這些都是利用業餘時間完成的,連籌款都是靠社區大佬、微軟、騰訊運加以及社區朋友們的大力支持。也把公衆號從80開始,作到了目前的5000+,這些也算是小收穫吧,不過沒什麼驕傲的,畢竟那麼多人都是從零開始,作到萬粉大號。
從某種意義上來講,社區彷佛離你們都比較遠。有時候會感受試圖打造社區來凝聚開發者,實際上是一廂情願。技術社區,或許只會給那些擁有開放性基因的企業和開發者帶來好處,並有望助力企業的進一步騰飛。尤爲在長沙,究竟有幾家企業擁有開放的技術心態?這是個問題。長沙的技術氛圍着實使人窒息。
咱們老是渴望打造一個優秀開發者社區。其實優秀開發者自己是一個很差衡量的問題,畢竟成爲前百分之二十已是優秀者,而張一鳴口中的那百分之一的精英,自己就並不是一朝一夕所能煉成。
最終仍是落在產出上,你助力企業騰飛、或者你作出了優秀的產品、或者你可以具有本身的系統性思惟,並能寫出一輛本書;優秀有太多種了,每一種都來之不易。
一個所謂社區,若是沒有造成長期有價值的積累,沒能打造優秀的平臺,最終走向消亡反而會是「衆望所歸」。如何讓社區避免成爲水羣、如何發掘更多優秀開發者,造成精英小圈子,我想說每一個人都得繼續努力,最起碼不能成爲一個菜市場,不然這樣的圈子,其實毫無價值。
有時候會發現,每一個羣都是那麼幾個固定的人,沉迷於羣其實根本不能帶來我的成長,真正的成長仍是得靜下來本身認真學習。
要成爲優秀開發者,有時候三天打魚,兩天曬網的刻意憋一點大招,表面上看能帶來一點好氣象,可是過了那個熱度就被客觀條件或主觀條件拋棄。技術這東西真得堅持個三五年,才真的可以成長起來。有的人,看到這個火,就追逐這個,看到那個熱門就趕潮流搞那個,一邊寫着代碼,一邊想着明年是否是該轉行,這樣的學習方式如何可以提升本身?
從這一點上來看,我只想說我已經在努力朝着好的方向進步,可是還遠遠不夠,與那些已經堅持優秀習慣五年、十年之久的開發者相比,我須要作的遠遠不止眼前這一點點。
有時候不太想列過於宏大的計劃,由於每每計劃會變成插紅旗,而後在本身的背上插滿了紅旗,變成了一個京劇裏面的大英雄。這樣的計劃或許毫無心義。
因此仍是得認真思考,踏踏實實的作幾個可以落地的計劃:
超過30歲的開發者老是會焦慮於本身的職業發展,不知道本身的將來該如何選擇,那大概是因爲想得太多,作得太少。
行走在IT這條路,成長太快反而不是好事,只有腳踏實地,一步一個腳印,才能真正無所畏懼。 「易定者無感,易感者無定。」,謀劃好將來,並經營本身的當下,纔有美好將來。