IT技術人員的自我修養

1. 前言                

  在IT領域摸爬滾打多年,從一個普通程序員到技術主管,到技術經理,再到技術總監,踩過很多坑、加過很多班,也背過很多鍋,在提高自身技術能力與管理能力的同時,也一直在思考,做爲IT技術從業者,如何作才能讓咱們在這個領域裏發展得更好,在年齡漸長時能從容應對所謂的「中年危機」,或者說IT技術人員的自我修養,應從哪些方面去努力。本文不是所謂成功人士的經驗之談(做者離本身理解的成功還有十萬八千里),而是以一個技術人員的角度作的一些思考與總結,但願能給已在這個行業或有志於從事這個行業的同僚以參考,與之共勉。

html

2. 持續學習,構建本身的知識體系    

  學習能力應該是一我的最重要的能力之一,由於咱們絕大部分技能都須要經過學習得到,所謂天才,也不過是其學習效率或學習能力比通常人強而已。IT技術更新突飛猛進,不管是新版本的更新仍是新框架的產生,都以極快的速度在推動,使人眼花繚亂,目不暇接。所以,對IT技術人員來講,持續學習、有選擇地學習顯得尤其重要。前端

  那麼咱們平時應該怎麼來學習,不斷提高本身專業技能及綜合能力呢,我總結了以下幾種方式:程序員

1. 從書本學,從網絡學面試

  如今技術書籍市場也是魚龍混雜,參差不齊,而且價格都還不便宜。因此建議仍是有選擇地購買技術書籍,通常原理介紹類書籍,如介紹JVM基本原理,數據庫基本原理,設計模式、算法之類的書籍等等,具有必定的保值度,能夠購買不斷重溫學習,而框架介紹類書籍,我的不建議購買,由於框架更新迭代通常都比較快,有時候你買的時候可能就已通過時了,不具有保值度,因此建議從官方文檔、博客、公衆號等渠道學習,也就是從網絡學。從網絡學最好的方式是從官方文檔學,由於信息在傳播過程當中是有損耗的,尤爲是英文文檔,各人語言、理解水平不一樣,對原文的解析或多或少有些誤差,官方文檔最原始,損耗也最低。其次,從一些知名的優質的博客學,從公衆號學,而且最好能從頭至尾地看,瞭解學習做者總體的技術體系(那些東拼西湊、沒有通過實踐直接複製粘貼的最好就不要去看了)。算法

2. 向先進學數據庫

  三人行,必有我師焉,向比你厲害的人學。在一個團隊中,總有那麼幾個能力比較強的,而能力強的人總有一些不同的特質與習慣,多與這些人交流,善於去發現總結別人好的特質與習慣,而後模仿,吸取,最終造成本身的特質與習慣。後端

3. 從覆盤總結學設計模式

  任何一個組織或團隊,總會存在這樣那樣的一些問題,若是一個團隊沒有任何問題,那這自己就是一個問題。對問題的處理不該該終止於解決,還應及時對其覆盤總結,從中吸收經驗與教訓,避免一樣的問題再次發生。我曾就任的某公司數據部門,在第一次對跨年晚會現場直播作實時數據統計與分析時,因缺少經驗,產品運營部門給的預估併發用戶數是50w左右,因而團隊按這個預估作了壓測,準備了對應的服務器,結果當晚直播併發在線用戶數達到250w+,5倍還不止的壓力直接把整條實時分析鏈路沖垮,而且搞笑的是當初準備的服務器磁盤大可能是幾十G的配置,滾滾而來的日誌不到幾分鐘就把磁盤給打滿,幾我的光是遷移日誌文件保障數據不丟失就已經是手忙腳亂了,對實時分析服務只能撒手棄療,所幸數據都保存了下來,過後補救也創造了咱們連續工做36個小時的記錄。這是一次典型的失敗教訓,過後咱們覆盤總結了幾點,一是預估不足;二是沒有準備應急方案;三是沒有與其餘部門協同起來,好比運維。在第二年年末時,咱們作了三倍於預估量的準備,而且每一個服務作好鏡像,隨時準備擴容,而且把運維部門協同起來做戰,實時監視每項指標,順利應對了同時在線五六百萬用戶的現場直播。所以,從對問題與失敗的覆盤總結中學,是進步提升的一個主要方式,團隊如此,我的也如此。服務器

4. 作好知識管理微信

  聞道有前後,術業有專攻,對IT技術領域來講,真正的全棧是極少的,樣樣精通通常就意味着樣樣平庸。因此,選好本身的技術方向,並深耕下去,通常IT軟件技術領域的方向有服務端、WEB前端、移動端、大數據、人工智能等。在學習與工做的同時,對一些重點、難點及時作好記錄。好記性不如爛筆頭,不少人在上學階段都有作筆記的好習慣,可是參加工做後,卻把這個好習慣給丟了。對於IT技術人員, 天天大部分時間都對着電腦,因此能夠採用一些筆記軟件(如印象筆記、OneNote等)來對平時學習的一些知識點,遇到的一些問題及解決方案進行整理記錄,便於回顧與查閱,也能夠經過博客、公衆號的形式,定時對本身的知識體系進行梳理,既鞏固了本身的知識,又能給人以學習參考,何樂而不爲。若是這二者都尚未的,趕忙去選一個從今天開始用起來吧。


3. 
求甚解,知其然,知其因此然   
    

  所謂求甚解,就是理解事物背後的本質與根源,從而舉一反三,觸類旁通。好比你在某某博文中看到添加某個註解就能達到某某功能,你是直接拿來就用仍是會分析爲何這麼作就能達到效果;再好比某個程序崩潰了,你是直接重啓處理仍是在有條件的狀況下收集必要的數據分析緣由,或者在先保障程序服務可用以後再持續跟進定位。許多人都有過找人協助解決問題的經歷,我也幫助過不少人定位處理過問題,但其中至關一部分人在你幫他解決問題以後,來一句「牛叉」,而後,就沒有而後了。不會問這個問題出現的緣由是什麼,不會問爲何這麼處理就沒事了,不會問怎麼來避免這個或這類問題,而後下次找你過去協助,你會發現可能又是相似的問題。我也見過不少這樣的場景,線上服務故障了,某程序員經過重啓服務恢復了,但不久後又故障了,因而再重啓,以致於後面天天定時重啓一下,來避免故障再出現,卻歷來沒有想過去定位故障發生的緣由,可能會以爲沒有相似經驗,不知道從何處入手,但經驗都是積累的,沒有人從一開始就能掌握全部技能。這些都是一種浮於表面,不求甚解的不良習慣。

  怎麼求甚解,最簡單的方法就是多問幾個爲何,直至瞭解到某個問題或某個知識點的本源。 我曾與一個如今微軟工做的研究生同窗一塊兒跟隨一家公司作項目需求調研,當時那家公司組織去黃山旅遊,咱們就在黃山腳下的酒店裏整理文檔,晚上你們一塊兒吃飯喝酒,回到房間的時候,我已經只能在椅子上趴着了,卻發現我那同窗不急不慢地從包裏拿出電腦,而後開機,而後,打開了Eclipse……後來瞭解到是他一直在思考解決一個問題,吃飯的時候突發靈感,因此回來就立刻試驗一下。這個例子我並非說我那同窗酒後寫代碼的能力有多強,而是說優秀者之因此優秀,在於他們那種遇到問題力求甚解的習慣與品質。但另外一方面,求甚解並不意味着你要一頭鑽到底,花費大量功夫絞盡腦汁追溯到操做系統底層甚至硬件層次,由於畢竟工做不一樣於科研,是須要有高效產出的。通常而言,你瞭解到框架設計的基本原理及關鍵源碼,或問題產生的根本緣由與最優解決方案,防止同類問題再次發生便可。


4. 
責任感,作一個靠譜的人   
     

  衡量一個技術人員是否合格的標準我以爲無外乎三個:有態度、有技術、有素養。這裏我將態度放在第一位,責任感是態度的一個重要表現。技術人員的責任感表如今哪些方面呢,我認爲也是三點,是否具備自我驅動力、是否具備契約精神、是否具備主動擔當。自我驅動力就是把分配給你的任務真正當成本身的事情,保質保量定期去完成,主動去跟進你的依賴上游,主動跟團隊反饋問題與進度,主動去學習提高技能與工做效率;契約精神就是對本身承諾的事情說到作到,若是有變更也能及時溝通反饋協商;主動擔當就是敢於承擔本身應當承擔或者無人能承擔的責任,爲團隊出謀劃策,盡本身能力協助他人。作到這三點,就是一個有責任感的人,就是一個靠譜的人,這樣的人就是不管是老闆或上級,仍是同事都會信賴,尊重的人。


5. 
延伸視野,不止於增刪改查      

  常常聽到一些同行抱怨,在這裏天天就是增刪改查,沒什麼意思,也沒什麼成長。面對這種抱怨,我想說的是技術人員的視野不該該這麼狹隘。任何一個Web項目,都會涵蓋從產品定位、需求分析到系統架構設計、數據庫設計、先後端開發、測試到部署上線、運行維護,其中涉及的每個環節都包含一本書都沒法說清的內容,都有你能夠去學習的東西。有些人可能會說,我就是個開發,你讓我去管產品、架構、測試、運維的事?面對這種質問,我可能會說,那你接着去寫增刪改查吧。

  我認爲技術人員的價值,不在於你能寫出多麼優美的代碼(固然不是說代碼不須要寫得好),也不在於你能設計出一個多麼大而全高屋建瓴的架構,而在於你實實在在的解決問題的能力,在於你使用技術手段服務於業務的能力。增刪改查以外,你能夠了解的東西太多,好比你瞭解大家項目的總體架構嗎,瞭解系統的部署方案嗎,瞭解總體業務流程嗎,瞭解全部的重點難點嗎,若是都瞭解了,那你能找出現有各環節存在的問題嗎, 能給出解決這些問題的具體方案嗎。因此,不要抱怨只有增刪改查了,延伸你的視野,從軟件工程的角度而不僅是某個功能某個模塊的角度來提高本身的認知與能力吧。由於只有延伸你的視野,拓寬你的知識面,才能提高你實實在在的解決問題的能力。若是你一直停留在這事不歸我管的認知,那你的水平能力與發展空間也就基本止步於此了。


6. 
保持高度專一,提升工做效率    

  有人可能會說,你說的這麼輕巧,我天天寫代碼都寫不完,哪有那麼多時間來學習、求甚解、延伸視野。對於這類同窗,可能須要反問下本身爲何會一直這麼忙,是技術水平與崗位不匹配仍是工做效率過低?經歷過面試篩選的通常來講技術水平與崗位應該仍是匹配的,那怎麼來提升工做效率,我認爲一個主要方法是提升專一度。讀書的時候,你發現那些成績好的,每每下課或放學都不會一直捧着書看,而那些一天到晚都捧着書看的,每每成績都通常般,爲何?由於成績好的在學習的時候他能高度專一,心無旁騖,因此效率很高,而那些一天到晚捧着書看的不可能無時無刻都能集中注意力,由於人的精力是有限的,有可能一會聽聽音樂,一會放空下大腦,長此以往養成這種拖泥帶水的習慣,想不低效都難。工做也同樣。

  說一個我本身的例子,我屬於那種工做時候能高度專一的人,忙事情的時候可能一天下來水都忘了喝一口。臨畢業時曾在一家德企實習,一塊兒進來的有一位同濟的同窗與一位復旦的同窗(這裏沒有任何學校偏見,純屬個例討論),每週主管會給咱們三人分配同等工做量的任務,我通常兩到三天並能完成且不須要加班,而那兩位同窗卻幾乎天天加班卻還經常完不成,最後經過我協助才定期完成。有幾天我特地注意了一下他倆的工做狀態,發現一會看看新聞刷刷微博,一會去衝杯飲料,戴着耳機聽着音樂,不急不躁,悠然自在得很。這種工做狀態,除非能力很是強經驗很是豐富,能輕車熟路三下五除二把事情處理完,否則,想不低效都難。

  所以保持高度的專一,是提升工做效率的有效方式。工做效率提升了,你纔能有一些時間去學習去求甚解去延伸視野,從而提高能力促進工做效率的進一步提升,這是一個良性的循環;反之,工做效率提不高,你就沒有足夠的時間去學習提高,當任務過來的時候,只會愈來愈忙,這是一個惡性的循環。


7. 
提升軟實力,把握機會     
      

  對於不少IT技術人員來講,技術管理是其職業發展的一個方向,尤爲在國內環境中,很難有在40歲以上還能安心寫代碼的(除非你已經不須要靠工資生活了,寫代碼純粹成了一種興趣)。從一個普通程序員成長爲一個技術管理者,除了技術能力,還要有必定的軟實力,如溝通表達能力、組織協調能力、業務架構能力等。程序員廣泛性格內斂,溝通表達的慾望與技巧相對欠缺,所以在平時的工做中,應儘量有意識地在這些方面去提升本身,與人溝通表達好一點,主動擔當多一點,對業務瞭解深一點。機會永遠青睞有準備的人,只有平時的不斷積累,當機會降臨時,你纔有足夠的能力與自信去迎接。

  如何去尋找與把握技術管理方向發展的機會,通常而言,有以下幾種途徑:1. 去有潛力的創業公司;2. 去知名大企業鍍金,而後跳槽到中小企業;3. 現有上級離職;4. 公司新開業務線;5. 本身創業。任何一種途徑,都只是一種機會而已,可否把握一方面看機遇,另外一方面看本身的積累與準備。


8 . 
總結   
                  

  失敗者失敗的緣由各有不一樣,成功者的特質與習慣卻大同小異。IT技術人員的自我修養,能夠從持續學習,求甚解,責任感,延伸視野,高度專一,軟實力等方面去提高。不積跬步無以致千里,只有沉下心來,一步一個腳印踏踏實實地提升、進步,才能在一個領域裏紮下根基,脫穎而出,才能從容應對所謂「中年危機」。

以上,共勉。

 

本文發表於微信公衆號:jboost-ksxy (一個不僅有實戰乾貨的技術公衆號,歡迎關注、交流,及時獲取更新內容)

———————————————————————————————————————————————————————————————
微信公衆號

原文出處:https://www.cnblogs.com/spec-dog/p/11250336.html

相關文章
相關標籤/搜索