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