一名程序員十年技術之路的思考與感悟
本文中,作者回顧了自己的十年技術生涯,從為什么進入互聯網,到初入職場,再到最后轉型運維成功后的思考與感悟。想想小編自己,職場中也混跡了有十 年了,喜憂中的種種,也無不感嘆!現在進入正題吧,看看一個程序員對自己十年技術工作生涯的是如何總結的。還有喲,我只摘錄了思考與感悟的部分,職場與轉 型運維請大家閱讀原書。
文:趙建春
回顧在騰訊的十年,作為一個本科畢業生,在管理上六年升任副總監,技術上七年半晉升 T4 專家。雖不是發展最好的,但相對平均速度來說都是比較快的。我總結主要的幾點是學習成長、合作共贏、總結呈現、思考前行。分享一下這些方面的體會,希望可 以幫助初入互聯網行業的技術人員或發展遇到困惑的人突破和提升自己,讓自己成為精兵再到骨干,并進一步成長為一名強將。
要成為一個團隊的精兵,必須是專業知識過硬,經驗豐富,指哪打哪,能夠非常讓人放心的完成領導安排的任務的人。要做到這些,學習和實踐是最直接 的路徑。通常一個畢業生,剛進入企業的時候,所學的知識并不能 100% 勝任崗位的需要,這個時候,快速地學習補充自己的知識缺陷就顯得非常重要。在企業里的學習和實踐,要注意以下幾點。
1.借助導師、同事資源。這樣可以讓自己快速解決遇到的問題,少走很多彎路。我剛畢業時的導師就對我有問必答,直到現在和同事講起我的導師時,我都會說他是我工作以來遇到的技術最全面的、最佩服的人之一。
2.系統化的學習工作所需要的是基礎知識,而不是到百度或谷歌查資料解決。這樣有助于遇到問題后通過相關知 識關聯分析,也有助于搭建更合理的技術架構,或改進現有技術架構的不足,讓知識形成協同效應。為了讓沒有做過研發的運維同事對研發不覺得神秘,能夠去分析 異常故障深層次原因,我特意開發了《直觀認識網絡通訊》、《直觀認識進程間通訊》、《直觀認識 HTTP 協議》等幾門課程,將這些知識體系化地通過一個個的小程序案例傳遞給我們的同事。
3.除了工作中需要的新知識外,建議在工作一段時間后再回頭系統性學習相關專業基礎知識。因為在學校的學習 多數都缺乏實踐,很多知識的掌握比較粗淺,在工作一段時間后重新再學,會有完全不同的收獲。比如,我有了一段時間排查業務異常和網絡問題的經驗后,又將學 校讀過的《TCP/IP 詳解卷1:協議》①讀了一遍,發現收獲特別多,很多實際業務在異常時表現的現象都和書上講的對應起來了。一些只在書上看過但無法在試驗環境模擬的現象都在 實際工作中找到了場景。
4.借助平臺學習成長。實際工作中,爆發式增長的業務或大平臺是一個人快速成長和進步非常好的資源。因為爆 發式增長的業務會讓你在很短的時間內遇到在其他地方好多年可能都不會遇到的問題,而大的平臺一定是從小而來,趟過很多的坑,在這樣的環境中,保持一個好奇 好學的心態,可以快速提高自己。比如,在 QQ 空間業務開始爆發增長的時候,有段時間我曾經十天里有六天夜里和同事一起分析解決業務異常,經常持續幾小時甚至到天明,也正是那段時間,遇到了別人幾年才 有可能遇到的各類問題,讓自己知道該補充什么知識,在后續的運維工作中對我有了很大的幫助。
5.如果可以對自己進行細分定位會更好。就如同我和我的團隊在過去的七年里都經歷了工作內容和崗位的細分一 樣,現今社會是一個信息爆炸的時代,IT 技術也是不斷地出現新的技術分支,要想每一樣都做到精通是非常困難的。所以結合自身情況以及工作需要,對自己有一個更加細分的定位,這樣做精力才能聚焦, 更有可能快速在你所做的領域不斷深入,進而成為專家。而如果你想要成為一個綜合性的人才,也可以考慮通過階段性專注于某一細分領域,重點學習積累,具有一 定深度后再切換重點關注領域。
隨著經驗的增長,從精兵變成骨干,我們所從事的工作會逐漸由簡單直接變得復雜綜合且無法獨立完成,這時候就需要團隊協作甚至跨團隊、跨部門推進。這個時候就需要我們很好地協調平衡各方資源,推進項目達成目標,并將團隊的業績最大化展現,獲得肯定。在這個過程中,要注意以下幾點。
1.保持開放的心態。需要在溝通合作中更多的換位思考,多創造一些雙贏的機會。平時先幫助兄弟團隊或同事完成目標,等到自己團隊需要幫助的時候,也一定會有兄弟團隊或同事出來幫助你。
2.找到一些對大家都有幫助,大家又都感興趣或可以學到新東西的事情。比如我前面提到的速度優化虛擬團隊就是一個例子。
3.注重成果總結和展現。我在公司職級晉升以及一些技術獎項評審中發現有不少人或團隊所做的工作成績非常突 出,但在答辯的時候講得很一般,平時很辛苦,最后呈現很糟糕,沒有通過評審或取得的成績比較靠后,很可惜。職場不是一個只有一次機會的演講,更像一個馬拉 松。對于不善表達的人來說,可以更多地注重利用日常工作中通過各類文本的形式表達場景,這樣可以在長期的工作中,讓周圍的同事和領導了解自己及團隊的工作 成果。
4.注重平時的資料積累。總結展現不好,很多情況也是由于內容不夠豐富有價值。為了解決這個問題可以養成將一些日常工作中堅持將成果郵件、PPT、數據圖表等案例分類匯總保留。這樣在需要總結的時候數據會很豐富,有內容就不怕講不出。
很多骨干走上管理崗位后,隨著管理人數和團隊的增加,會發現以前由領導指派的清晰目標逐漸沒有了。團隊部分成員甚至一些團隊整體都會困惑應該做 什么,除了不斷重復一些任務和工作外,團隊成員長遠的發展是什么等關鍵問題不明晰。如果這個問題得不到很好的解決,那么團隊就可能出現不穩定、士氣不高、 戰斗力差等情況。
這個時候是很難的一個坎,因為以前不管是單兵作戰,還是團隊項目,目標多數比較明確,但在帶領一個較大規模的團隊時會發現,自己的工作內容往往不再是如何完成一個既定的目標,而是思考該做什么,我該將團隊打造成一個什么樣的團隊,怎樣幫助團隊成員的發展,等等。
我自己也作了一些思考和探索,比如我在運維團隊里以減少運維對象以及按專業分工的思路將團隊分工不斷細化,并嘗試清晰地定義每個團隊的核心工作 職責,讓大家在自己團隊核心工作職責的方向上不斷沉淀,通過積累建立起和別的團隊差異化的經驗,形成自己獨有的經驗和平臺優勢。另外,提出“服務產品、服 務研發、服務自己”的理念,特意將產品放在第一位,研發第二位,希望引導運維團隊有產品意識,尋找更多的辦法去幫助產品、協助研發,從而讓產品更加成功。 而不是只著眼于自己的運維效率,做一個純粹的支持者。只有做好這個思考和探索,我覺得才能真正轉變為一個強將,我自己依然在這樣的思考與探索的路上。
希望每一個剛進入互聯網行業的技術人員或發展遇到困惑的人都能突破自己,從精兵成長為強將。
《進化:我們在互聯網上奮斗的故事》作者之一:趙建春
騰訊社交網絡事業群運營部運維總監,T4 專家工程師。2004 年西北工業大學軟件工程專業畢業后加入騰訊,先后參與過 QQ 交友、QQ 音樂、QQ 賀卡、QQ 空間等業務的開發。2006 年后和團隊一起專注于技術運維,現負責騰訊社交網絡事業群業務的運維建設工作。和團隊成員一起經歷了業務設備規模從數十臺到十萬級的快速發展歷程,在運維 環境標準化、業務 Set 化部署、多地分布、速度與體驗優化、運維自動化式部署等方面積累了豐富的實戰經驗。
33 位互聯網老兵傾力打造的成長勵志大作
聽我們講述百分百真實的互聯網上的奮斗故事
麒麟會 CEO 王錚錚 iTech Club 創始人吳華鵬作序推薦