1. 程式人生 > >技術成長經驗分享

技術成長經驗分享

一、如何制定自己的成長計劃

1.確立自己的目標。
技術有如下發展方向:
    首席架構師
    技術專家
    技術總監
    技術經理
    敏捷教練
    測試
    運維

轉型:業務、銷售、產品

轉行:徹底離開IT行業。

首先,要確定自己的發展方向,堅定是向技術的方向發展並堅持走下去。

2.培養興趣
技術學習是一條漫長而艱辛的道路,如果沒有足夠的興趣,是很難堅持下去的,也是很難將技術做到極致的,所以要努力培養自己在技術上的興趣。

3.合理規劃自己的成長週期。
架構師成長不是一蹴而就的,一般需要 5-10年,並需要豐富的技術積累和專案經驗,所以給自己制定一個合理的成長週期是很重要的,切忌急於求成、拔苗助長,基礎積累得越多,架構師這條路就走得越遠。

4.每年制定自己的年度成長計劃,階段性地成長。
初期,夯實計算機基礎(資料結構及演算法、計算機網路、作業系統、編譯原理)、語言基礎(java、c、c++、js、python、go)、資料庫。
然後,提高設計能力(主流框架、設計模式、UML、軟體設計過程、分析能力、邏輯思維能力)。
再次,提高架構能力(主流架構、技術選型、架構演進、邏輯思維能力、分析能力、溝通能力、管理能力)。

    大型專案架構經驗也是非常重要,多多研讀大型專案的架構,並努力給自己創造大型專案的實踐機會。

5.堅持,每天哪怕進步一點點,堅持下去就是最好的。

6.平時多瀏覽技術網站:CSDN、部落格園、SegmentFault、開源中國、W3School、51CTO、ChinaUnix、伯樂線上、ITEye、開發者頭條、GitChat。

7.關注一些技術公眾號。

8.多關注一下主流技術和新技術的動態。

二、如何看待新技術

                      

作為技術愛好者,要時刻關注新技術。

對於新技術,著重關注以下幾點:

    新技術出現的原因?

    新技術解決當下什麼痛點?

    新技術帶來了什麼變化,是否帶來了革命性的變化?

    新技術底層實現機制是什麼?

不做新技術的盲目追隨者。新技術總是技術牛人創造出來,供大家使用,好處是解決了我們的痛點,提高了我們的效率,但是扼殺了我們的創造力。

立志做新技術的創造者。不一定能實現,但要向這個方向去努力。

       有沒有想過自己寫一個作業系統?哪怕僅具備最基本的功能。

       有沒有想過自己寫一個數據庫?哪怕是一個最簡單的資料庫。

       有沒有想過自己發明一種語言?哪怕僅支援一兩個語法。

       有沒有想過對當前使用的主流技術進行改造?

三、選擇什麼樣的書籍

看書,還是要選擇經典的書籍,用大師的思維方式去思考。選擇經典,用規範的方法去解決問題。

書籍推薦:

                                         

                                                            《java程式設計思想》

                 

                                                                    《java核心技術 卷I / 卷II》

                                   

                                                                《effective java》

                                

                                                              《深入理解java虛擬機器》

                                

                                                                  《演算法》

                         

                                                                《演算法導論》

                            

                                                           《TCP/IP詳解》

                                        

                                                           《人月神話》

             

                                                                       《人件》

                                   

                                                                     《程式碼大全》

                                   

                                                                     《程式設計珠璣》

                                     

                                                                 《大象Think in UML》

                               

                                         《設計模式:可複用面向物件軟體的基礎》

                                             

                                                          《Unix環境高階程式設計》

                             

                                                               《Unix網路程式設計》

                                         

                                                                   《Spring in Action》

                                         

                                                               《Spring技術內幕》

                                           

                                                                《高效能Mysql》

                               

                                                         《PostgreSQL修煉之道》

                               

                                                     《深入分析java web技術內幕》

                                           

                                               《大型分散式網站架構設計與實踐》

                                         

                                                《分散式服務框架原理與實踐》

                              

                                                       《Spring cloud 微服務實戰》

                                              

                                                              《大型網站技術架構》

                             

                                                      《億級流量網站架構核心技術》

 

中介軟體書籍:PostgreSQL、Activiti、Redis、Dubbo、zookeeper、RabbitMQ、kafka

伺服器書籍:Linux、Nginx、Jboss、Jetty

                                 

                                                      《卓有成效的管理者》

四、看書

書有很多種,有的書適合精讀,有的書適合泛讀,有的書適合做工具書。

每年,給自己制定一個讀書計劃,和自己的成長計劃相結合,選擇相對應的知識領域去學習。

看書,我建議看紙質書,因為可以在書上劃重點,記錄筆記,越難懂的書越要記筆記。

看書先看目錄,首先仔細研究一下目錄,瞭解本書的主要內容,每個章節所敘述的內容、章節下的分類目錄、各章節之間的關係。作者在寫書時,在劃分章節上一定是經過一番思考的,通過章節劃分可以對知識點做一個梳理,先有個印象,對我們瞭解該書的知識體系是非常重要的。

看書過程中,每看完1-2個章節,是回顧總結的最佳時間,這時候回顧,大腦中還有大部分記憶,能夠快速的回顧一遍並加以總結,此時可以做總結筆記,等全書看完後,再對此處的筆記進行整理修改。

比較難懂的書,要想完全看懂並融會貫通,是需要多遍閱讀才能做到的,有時需要看3-4遍,採用好的看書方式能夠減少看書的遍數,節約時間。

看過的書不要丟,重點和筆記都是寶貴的財富。

五、查詢資料

當我們查詢資料時,搜尋引擎是最快的方式,比如百度、Google、Bing,多嘗試幾種搜尋引擎,有時,一個上搜索不到,換一個搜尋引擎,也許就搜尋到了。還有一些情況,當你用中文搜尋不到時,可以嘗試用英文搜尋試試,說不定就能有所意外的收穫。

官網能夠提供權威的資料,是獲取資料的比較好的渠道。

從官網上個下載的官方文件,是查詢問題時的第一手資料。

當你用以上的方法,都不能解決問題時,可以嘗試看看原始碼,從原始碼中說不定就能找到解決問題的辦法。

六、整理技術日誌和技術資料

我們在日常工作中,常常會有許多資料需要儲存,並希望隨手可得,比如開發環境資訊、系統開發指南;開發工具幫助文件、快捷鍵;各類問題解決方案、各類技術的優秀資料彙總;工具箱、雜貨鋪等等,這些都需要整理好,並能夠很方便地查詢。同事有用印象筆記,或有道雲筆記,都是非常不錯的選擇。我現在用的是Typora,可以結構化顯示本地目錄下的檔案,相對比較方便。

七、編寫文件的一些心得

 

技術人員,大多數不太喜歡寫文件,但是工作需要,還是有許多時候需要寫文件。在寫文件方面,分享一下我的心得。

當寫一個文件時,先列出提綱,比如我想寫5方面內容,那我就先把5先寫上。

然後,從自己最熟悉的章節開始填充。

對於其他章節,可以是零星的思維碎片,然後逐漸補充完善。

對於無從下手的章節,可以多找一些參考資料,比如百度或一些文件模板。或者暫時放在那裡不寫,等靈感來了再寫。

注重文件質量:

    文件要保證格式一致、字型一致、標題風格一致。

    語法、語句要通順。

    不要有錯別字。

    用書面用語,不要用口頭語:比如“機器掛了”應該說“宕機”,“敲入命令列”應該說“鍵入命令列”。

    文件風格能夠從一個側面反映出人的個人修養。

七、提高英語閱讀能力

 

技術書籍和資料大多是英文,官方網站也都是英文,所以不要間斷英語的學習,提高自己的英語閱讀能力。

嘗試去讀一本英文技術書籍,開始可能會很慢,堅持讀完,英語閱讀能力就會有很大的提高。

一本英文新書在國外出版到暢銷,差不多半年的時間,然後被國內的出版商關注並引入,請人翻譯並出版,差不多又至少半年多時間,到國內的技術愛好者手中,距離新書上市已經一年多的時間,所以我們從時間上已經落後歐美一年多。另一方面,譯本的水平也取決於譯者對書的理解和翻譯的水平,如果僅能反映出原著的百分之八十,而讀者又僅理解譯本的百分之八十,實際上,僅僅理解了原著的百分之六十的內容,所以,建議大家嘗試著看英文原版的原著作品。

八、提高編碼速度的心得

鍛鍊手指的靈活度能夠提高編碼的速度。

我們手的幾個手指的靈活度是不同的,我們的編碼速度取決於我最慢的那個手指。

大腦的思維速度和手的打字速度是不同的,多數情況下,大腦的思維速度是比手要快的,所以如果手的速度跟不上大腦的速度,就會拖累編碼的速度。

編碼速度的提升反過來又可以促進思維速度的提升。

經驗證明,編碼速度快的程式設計師的輸出可以是編碼慢的程式設計師的3-10倍。

九、努力給自己創造實踐的機會

多利用業餘的時間去實踐,比如看一本書時,可以把書上的程式碼編寫一遍。

工作中盡力多承擔一些工作,多創造一些鍛鍊的機會,平時,可以動手開發一些輔助工具,比如測試工具等。

可以嘗試著找一些開源專案,加入開源團隊,增加自己的專案經歷。

多參加社群活動,拓寬自己的視野。

十、勤奮是技術進步的鑰匙

天才畢竟是少數,勤能補拙,勤奮能彌補我們身上其他的不足。

積極去工作。

積極去學習。

積極去實踐。

只要我們勤奮努力,堅持下去,定能在技術的道路上不斷進步、茁壯成長。