主持人 | 汪丹
采訪嘉賓 | 朱賢曼、霍太穩
編輯 | 凌敏
從程序員到架構師,技術成長之路分為哪幾個階段?架構師是如何持續學習,提升認知的?切換技術賽道后,如何才能快速適應新方向?企業如何做好開源合規治理?
本期《超級連麥》,我們邀請到了安勢信息資深解決方案架構師、ArchSummit 深圳 2022 講師朱賢曼,和極客邦科技創始人兼 CEO & TGO 鯤鵬會發起人、校長霍太穩,極客邦科技事業合伙人、InfoQ 極客傳媒總經理汪丹,共話程序員到架構師的技術成長之路。內容有刪減,感興趣的同學可進入“霍太穩視頻號”觀看直播回放。
1 技術人如何快速適應新方向?
汪丹:朱賢曼老師這些年一直在不停地踏進新領域,從最開始寫 C++,到做出口管制合規、數字化轉型,再到后來做開源合規治理。您在一個新的領域里,是如何保持不斷向上,快速適應新方向的?
朱賢曼:我很贊同一句話,人生在于折騰。我這幾年也是一直在折騰,不管是換崗位還是換公司等等。但是折騰也一定要有自己的規劃,比如我會盡可能地朝著復合型方面去發展,發揮自己的優勢。
這也是一個不斷積累的過程,可能需要經歷幾個關鍵階段。在最初的學習階段,比如剛開始參與工作的那段時間里,那會面對的通常是一個系統中的某個小模塊,對整個系統的理解也不太足。但隨著越來越深入,不斷地主動學習,自己經驗多了,也會逐漸站到更高的角度去看待問題。
當然在這個過程中也會經歷陣痛期,有挫敗感,但隨著你視野的提升,你的想法真的也會改變許多?,F在大家都在聊 T 型人才,那個豎就是你專注的方向,橫就是你拓寬的視野。
做架構師,理解技術是基礎,但是在技術之外,也要能夠理解業務。當你對業務理解得非常透徹,甚至比用戶更理解的時候,你才能更好地去設計架構。再進一步,架構師還需要和各種角色打交道,比如客戶、供應商、法務等等。
汪丹:您提到需要站在更高的角度去看待問題,就這一點而言,在實際工作中還是比較難做到的。普通技術人怎樣才能從更高的角度去看待自己的工作,實現自身的認知跨越?
朱賢曼:在回答這個問題之前,我想和大家分享一個我曾經走過的彎路。過去剛畢業參加工作的時候,我也會對一些領導交代給我的工作產生疑問:工資就這么多,我就是一個普通的程序員,為什么要讓我做系統架構?那個時候只是覺得領導在給我分活兒,對這個行為也不太理解。但后來才發現,在這個過程中,你成長的速度會非???。
所以后來,我也會站在更高的位置看待自己的工作,對自己的要求高一點,并試著站在領導的角度去考慮問題,想象如果我是他,我會怎么做,他做的和我想的是不是一樣。這也是我的一點小經驗。
可能你一開始不太理解,但當你最終反應過來的時候才會明白,這些經歷并沒有讓你吃虧,最終都是自己得到了成長。其實這個道理在過去也有人和我說過,但當你沒有悟到其中奧義的時候,你很難轉變自己的認知,最終錯過了多年成長期,一直停滯不前。
汪丹:對于這個話題,我也想問一下 Kevin,Kevin 站在 CEO 的角度,是如何挖掘團隊同學潛力的?怎樣才能讓團隊成員更快地站在更高角度看問題,實現認知跨越?
霍太穩:我覺得不是每個人都能有這樣的覺悟的,一百個人里面可能有一兩個就已經很不錯了。所以對于團隊的負責人來說,不要抱特別大的希望,先接受這樣的現實,因為這條路注定艱辛,失敗概率也比較高,大部分人是不太會選擇的。
另外,很重要的一點就是要從源頭上去找到優秀的人才,讓那些想向上發展、有野心的同學加入進來。作為領導,你需要判斷哪些人對名和利是有追求的,這里的名和利不是貶義詞,而是褒義詞。用一句俗語來講,不想當將軍的士兵不是一個好士兵。如果他本身是一個特別佛系,對待任何事情都無所謂的人,那么不要把他硬架上去,否則只會兩敗俱傷。
2 從程序員到架構師,如何快速學習、提升自我?
汪丹:世界上第一位程序員就是女性,女性在技術開發上有哪些優勢和痛點?
朱賢曼:我本科和碩士讀的都是計算機專業,在我們這個專業里,確實女同學比較少。工作之后我發現,在個別公司,女性要想拿到 offer,需要比男生更優秀。
我的個人觀點是,女性在技術開發上既有優勢,也有劣勢。優勢方面,女性會偏穩重,且更細心。架構設計并不是說技術越牛越新,就是最適合的。事實上架構設計有很多約束條件,比如時間、成本、質量等等,需要更穩重地從多個角度進行思考。另外女性普遍更擅長溝通,架構師通常需要和各種角色打交道,協調各個部門,良好的溝通可以大幅提高效率。劣勢主要來自于精力方面,軟件行業技術變化比較快,需要持續深耕才能保證自己不會落伍。
汪丹:Kevin 針對這個話題有什么見解嗎?
霍太穩:我們不會把性別當做一個問題,在我們公司,大部分高管都是女孩子。所以我的觀點是,誰行誰上。公司需要做的就是,根據自身的特點和運營模式,去找到合適的人。
汪丹:從程序員到架構師,技術成長之路分為哪幾個階段?
朱賢曼:第一個階段就是學習階段,從專注實現系統中的某個模塊開始。我是一個相對比較好奇的人,在這個過程中我也會漸漸地思考,一點點地對整個系統有了更全面的認識。另外,我也會經??辞拜厒兞粝碌脑O計文檔,從中可以學習他們的所做所想,這里面不僅涉及到技術問題,還包括很多業務問題。
在第二個階段,當你有了一定的思考后,也需要進行輸出。技術人需要有意識地參加一些技術會議,寫技術博客等等,不僅能幫助到別人,也能對自己的知識進行梳理,準備的過程也是一個能讓自己學習提升的過程。
汪丹:有用戶提問說,做業務架構一定要懂技術嗎?
朱賢曼:做業務架構設計需要你了解行業、客戶,并且對需求進行分析。不過,要想做好業務架構,最好還是得懂技術,可能你不一定精通,但至少要有基本的技術知識,比如掌握通用的框架以及計算語言等等,否則你會遇到很多困難。
汪丹:朱賢曼老師平時是如何學習,提升自己的?Kevin 作為 CEO,又是怎么進行個人學習的?
朱賢曼:說到學習,我認為最好的方式就是先和項目組里的高人學,看看他們是怎么做、怎么想的。另外就是我剛提到的多輸出,做好技術積累的同時,也能開闊自身的視野。
還有很重要的一點是,一定要找到一個項目鍛煉自己。我們常說“聽過很多道理,依然過不好這一生”,很多東西只有你在實踐中得到鍛煉,才能獲得進步。機會是靠自己爭取的,比如,當你在一個項目上步入瓶頸期,就需要主動申請參加其他項目,讓自己獲得成長。如果有哪些項目涉及到了新領域,你也可以主動請纓,雖然新項目會讓你遇到更多的挑戰,但也能讓你有機會獲得成長。
霍太穩:每個人在學習上可能都會有個出發點。比如朱賢曼老師希望能成為一個更好的架構師,對于我來說,作為公司 CEO,我的出發點是希望公司可以更好地活著。
就學習而言,我認為效果比較好的方式有以下三種:
-
向高人學習。這也是極客邦這家公司一直強調的,我們在內部會開設精進學堂、未來領袖訓練營等等,通過邀請一些公司內部、外部的優秀同學過來做分享,把他們在某個領域的見解傳遞給大家,從而讓大家有所收獲。
-
從書里學習。已經有人把這些知識整理得非常清楚了,你從中能找到共鳴,并且也能快速提升自己。很多優秀的同學都保持了主動閱讀的習慣,無論是閱讀紙質書籍、電子書,還是像極客時間這樣的知識服務內容,我認為不管什么形式,只要是開卷就是有益的。
-
到項目中去練。如果你一直只聽別人怎么講,不去自己實際地應用,那么即便你學習了很多東西,也很難沉淀出自己的。與其臨淵羨魚,不如退而結網。但需要清楚的一個邏輯是,不要指望今天學習完,明天就能用上,后天就能看到效果,這個相當于天方夜譚。現實情況是,可能你做的大量工作都是無用的、重復的,甚至是錯誤的,但如果沒有這些工作作為積累,很難做出正確的事情。
我想表達的是,對于普通人而言,還是要保持學習的習慣,多和別人溝通學習,三人行必有我師。另外還要多閱讀大量的資料,找到項目操練。臺上一分鐘,臺下十年功。這種方式看上去比較慢,但卻很務實,也是最有效果的。
3 企業做開源合規,具備安全意識是基礎
汪丹:朱賢曼老師目前在做開源合規治理相關的工作,根據您的觀察,目前的科技公司是否都應該關注開源軟件安全問題?
朱賢曼:理論上來說,都應該關注這個問題。但目前的現狀是,國內偏大型公司在這一方面做的比較好,對于中小公司而言,更多還是會優先關注功能等問題。因為開源合規對于公司而言是一個成本中心,而不是創收中心,中小公司更多考慮的還是如何活下來。但可以看到的是,這幾年國內對于開源的討論越來越多,相信慢慢也會有更多的人開始關注開源合規與安全問題。
汪丹:中小公司怎樣才能規避開源安全問題?
霍太穩:這個問題比較大,也是大家現在比較關心的一個話題。我最近在和專家交流后發現,從大的層面上來講,安全在任何情況下都是第一位的,公司高管尤其是技術高管,需要特別注意這些問題,并且安全問題怎么強調都不為過。
但是坦白來講,具體到實現層面,包括程序設計等,挑戰還是比較大的。但只要你有了安全的意識,并且愿意在技術上投入成本去解決這個事情,并且說服自己的老板也來關注安全問題,那么這個問題終將迎刃而解。
朱賢曼:Kevin 說的很專業。企業做開源合規治理,最重要的就是先具備安全合規意識,這個是基礎,甚至比其他層面還要重要。
汪丹:現在行業里是否有一些軟件或工具可以幫助企業規避開源合規與安全方面的問題?
朱賢曼:有很多這類的軟件。比如安勢信息的 SCA(軟件組成分析)工具,能夠幫助企業清楚自身使用哪些開源軟件,在這個基礎上,再來看這些開源軟件是否存在風險,比如許可證、漏洞等等。作為架構師,不僅只關注軟件的功能設計,也需要關注安全合規,如果在設計時沒有考慮到這些問題,后續再整改的話,也會非常痛苦。