首頁/ 遊戲/ 正文

“當你不再是程式設計師,很多事會脫離掌控”—— 對話全球最大獨立開源

【CSDN 編者按】作為全球企業級開源解決方案領導者SUSE的CTO,Brent Schroeder見證了一波又一波技術潮流賦能企業創新發展,為企業注入新活力。同時,他也感受到技術革新給企業的商業策略、運營方式和IT基礎設施所帶來的衝擊。他認為,在如今開源和雲原生大潮來臨的時代,企業需要做好新一輪乘風破浪的準備。

“當你不再是程式設計師,很多事會脫離掌控”—— 對話全球最大獨立開源

Brent Schroeder在文中所表達的多項觀點,也特別值得引起開發者共鳴與探討:

CTO 最重要的是預判未來,提前佈局,完成商業目標;

當你不在是執行者,是程式設計師轉型管理的最大挑戰;

從學生、程式設計師到CTO,所做事情的本質都是一樣的,即解決問題,只是問題的深度和廣度不一樣;

將程式設計師、管理者、CTO 真正分開的並不是技術能力,而是軟實力;

運作好企業級開源解決方案,除了開放協作,還要關注軟體的可控性和社群治理機制;

所有行業都會受到雲原生的衝擊

雲原生會對企業的技術、人才、商業戰略等方面帶來衝擊,如果企業不做好周全的準備,雲原生技術引入會對企業產生負面影響

Kubernetes和Linux正在成為一切的平臺。

本文選自《

新程式設計師:我們的技術時代,我們的程式人生

1992年,三名來自德國的數學系學生和一名剛畢業不久的軟體工程師共同成立了一個UNIX服務小組,這也是SUSE的雛形。兩年後,SUSE釋出了其首個Linux發行版—SUSE Linux1。0。此後,SUSE與IBM、SAP等頭部科技企業逐漸達成合作,並鞏固了自身在企業級Linux解決方案供應商中的地位。經過三十年的發展,SUSE已然成為了頭部開源技術供應商之一,除了原有的企業級Linux產品外,它還向客戶提供Kubernetes管理平臺和邊緣解決方案,利用團隊專業的開源技術幫助企業使用者實現業務增長。

作為SUSE的CTO,Brent Schroeder在概括自己的日常工作時說道:“我現在做的事和我作為學生、程式設計師時本質上沒有區別,都是在解決問題,變化的是所解決問題的深度和廣度。”他表示,現在往往需要跳出這個時代,預判十至二十年後的技術發展趨勢,從而提前佈局SUSE的產品和研發方向,在未來持續地為使用者提供適應時代的解決方案。在從事技術行業的幾十年中,Brent Schroeder見證了網際網路興起、大資料時代,再到如今的開源、雲原生髮展壯大,一波又一波的技術浪潮不斷衝擊著企業的商業策略、運營方式。在新技術,新思潮帶來的變革中,企業唯有在人才、技術、基礎設施等方面提前做好準備,才能更好地抓住機遇,應對不斷變化的外部環境。除了技術方面的思考,為SUSE團隊提供必要的支援也是他管理工作的核心。回想他從程式設計師向管理層的轉型經歷,Brent Schroeder坦誠地說:“當你不再是執行者時,很多事都脫離了你的掌控,這令人沮喪。”他認為軟技能的培養對想要從事管理工作的技術人尤為重要。

在本期《

新程式設計師 004

》的採訪中,Brent Schroeder就程式設計師向管理層轉型所遇到的挑戰及企業該如何應對新技術潮流的衝擊分享了他的觀點。以下是本次訪談的詳細內容。

“當你不再是程式設計師,很多事會脫離掌控”—— 對話全球最大獨立開源

學生時期與程式碼邂逅

鄒欣:20世紀80年代,你在美國愛荷華州立大學攻讀計算機和工商管理雙學位,那時計算機科學還不像現在這麼火熱,是什麼引起了你對程式設計的興趣並決定學習這個專業,直到成為一名技術專家?

Brent Schroeder:

決定修雙學位是因為我那時就感受到了技術賦能商業運作的潛力。我與程式設計的淵源可以追溯到高中時的程式設計課,我在Apple II上開發了一個課表管理程式,幫我在排課表時省去了很多麻煩。儘管最初只是用程式實現一些簡單的功能,但在那個紙質檔案盛行的年代,程式設計對效率的提升作用深深吸引了我。

在後來的職業生涯中,我致力於探究解決問題的方式,這個習慣也一直驅動著我。作為一名技術專家,我從事的工作可以概括為理解企業在業務中遇到的挑戰,並使用技術方式幫助他們解決那些被認為太困難、太昂貴或太耗時的問題,這是非常令人興奮的。

鄒欣:大學期間你印象最深刻的一個人或一件事是什麼?

Brent Schroeder:

老實說,選出一件事或一個人還是挺難的,因為實在太多了。美國愛荷華州立大學的計算機科學專業非常有競爭力,歷史悠久。第一臺數位電子計算機—ABC計算機(Atanasoff-Berry Computer)就是在愛荷華州立大學誕生的。但至今我時常會想起一位離散邏輯學的教授在開學第一天對我們的“挑釁”:“向你右邊及左邊的同學作自我介紹,因為到期中考試的時候,你們之中將有一個不會再出現在這兒了(因為課程很難)。”

鄒欣:你提及,在大學期間你就感受到了技術賦能商業的潛力,那時你是否為自己作出了清晰的職業規劃?

Brent Schroeder:

我二十多歲時,其實沒有長遠的規劃和目標,只是單純地享受解決問題的過程和學習新技術。直到進入職場十年後我才開始規劃自己的職業藍圖。我最初給自己定下的目標是成為一名技術部門經理,後來慢慢地開始承擔管理責任、熟悉CTO的角色,這對我很有吸引力。

SUSE CTO的“崗位描述”

鄒欣:從一名學生,到程式設計師,再到技術專家、CTO,這一路你的思考方式和對技術的理解一定在不停變化,能否與我們分享在不同階段它們是如何變化的?

Brent Schroeder:

從學生到進入職場至今,我所做的事本質上都是解決問題。但變化的是所解決問題的深度、廣度和時效。

當我還是一個程式設計師時,我關注的是趕緊把程式碼寫好,與客戶對接,思考如何滿足他們實時的業務需求,多數時間需要我解決的問題都是具象的。我的產出看得見、摸得到,在短期內就可以生效並能馬上得到客戶反饋。

當我進入管理層後,大部分精力都花在了打破團隊隔閡,解決他們的問題。比如給團隊提供合適的工具,幫助他們提升培養能力,定位團隊中的問題,使他們更好地協同等,所處理的事物越來越多樣,我需要去平衡自己可用的時間,並且產出不會在短期有直觀效果的成果。

成為CTO之後,我思考問題的眼界和層次有了天翻地覆的變化,需要以超前於現有技術環境一代甚至兩代的視野來分析整個技術生態的發展趨勢。包括預判哪些技術會出現、哪些會成功、哪些不會向預期的方向發展。並以此為依據,結合目前客戶和行業所面臨的挑戰,使用適當的技術組合來幫助他們提前佈局,實現商業目標。

鄒欣:的確,當作為一位程式設計師時,你只需要解決具象的問題,產出馬上就能被看到。但當你進入管理層,級別越高,你做的事影響越深遠,同時也需要更長的時間才能見效。在適應這種變化的過程中你可曾遇到過挑戰?

Brent Schroeder:

無論是我自己,還是在幫助其他人從程式設計師向管理層轉型的過程中,我發現最大的挑戰是“你不再是執行者”。因為在之前的職業生涯中我們已經習慣參與到專案的具體事宜中,透過自己的產出來推進專案的程序。如此,專案成功與否、質量如何,對我來說完全可控。

當你進入管理層之後一切都變了。規劃好方向後,剩下的工作需要依靠團隊來完成,我能做的只是給他們許可權和支援,不能再切實地控制專案走向。尤其是當專案進展不順利時,這會使人非常沮喪,你會忍不住地想深入細節,自己動手完成一些工作。但你必須摒棄這種想法,如果你把時間花在專案執行層面,就沒時間做你的本職工作,為團隊成員提供必要的支援。

所以,在角色的過渡中,個人心理建設很重要。需要認清自己的動力是馬上得到別人的認可,還是從更宏觀、長遠的角度來推動事情的發展。

鄒欣:許多學生和年輕技術人都認為只要掌握了過硬的技術,自己就無所不能。但當他們慢慢深入職場,參與到更大的團隊中,開始參與管理工作時,除了技術能力外,軟實力也開始變得重要。你對此有何見解?你認為想要自己的職業生涯能更好地發展,哪些軟實力是不可或缺的?

Brent Schroeder: 我認為對於技術人而言,技術實力固然重要,但真正將開發者、管理者和CTO區分開的正是軟實力。有很多開發者儘管資歷很深,但他們還是寧願留在一線,因為他們認為軟實力的提升對他們是很大的挑戰。

對於未來想要參與管理的技術人而言,與人交往的能力往往比技術實力更重要。比如,你所帶領的團隊中有表現較好的成員,這時你就需要思考如何在工作上給他們挑戰從而幫助他們更好地成長,如何透過獎勵機制激勵他們,如何使他們發揮帶頭作用從而使整個團隊得到提升。同時,你的團隊中也會有表現欠佳的成員,你需要給他們適當的引導、培訓,鼓勵他們,透過管理手段改善他們的表現,使其成為團隊的貢獻者而不是團隊的“拖油瓶”。此外,你的團隊可能還需要與其他團隊合作,你需要說服他們和你一起為了共同的目標努力。

這些都是作為管理者每天都會遇到的挑戰,想要克服這些困難,人際交往能力是不可或缺的。不幸的是,這種能力是從課本上學不到的,只能透過不斷地實踐來培養。

開源與軟體的強強聯合

鄒欣:前面提到,你初學程式設計時使用的是閉源的Apple II,但如今的學生學習時剛接觸的大多是開源系統。對於這種變化,你怎麼看?

Brent Schroeder:

我認為這種變化是令人興奮的。雖然Apple II不是現在意義上的開源系統,但我們也有對其進行修改的許可權。記得當時我和幾個同學在學校機房的電腦上惡作劇,在命令列中動手腳,這樣別人在執行這些命令時系統就會給出奇奇怪怪的反饋,至今想起這些我依然感到非常有趣。如今的學生能夠看到底層程式碼並自由地對其進行修改,這能使程式設計的學習充滿樂趣。

鄒欣:在如今的科技產業中,許多企業都在使用開源協作來驅動創新。你認為開源為什麼能成為推動科技創新的主要實踐?

Brent Schroeder:

開源能推動創新是因為它激發了工程師們與同行合作的熱情,從而把世界上最優秀的工程師們聚集在一起,透過開放協作的方式共同攻克業內難題。

開源社群是多元化的,這體現在社群成員擁有不同的背景、經驗,來自不同的環境。將這些多元化的經驗、特點綜合在一起,所產生的能力要遠遠超過公司內部一群身處“與世隔絕”環境中的程式設計師。透過這種大規模合作,多元化的社群,開源軟體才能實現快速的迭代和創新。

鄒欣:假如一個專案的參與者越多,專案中的Bug就越容易被發現和修復,質量也會變得越來越好,這無可厚非。但對於企業級開源軟體來說,因為它們在企業運作中扮演重要角色,很多企業對於如此開放的軟體難免會不信任。那麼,該如何解決這些企業使用者的擔憂?

Brent Schroeder:

不可否認的是,我們這些沉浸在開源中的人常常會忽視外行人對開源軟體的誤解。我上週參加了一個金融行業的專題討論,很多出席的行業人士都表示了他們對引入開源軟體的擔憂。

我認為要做好企業級開源解決方案,除了促進開放協作,同時也要關注軟體的可控性和社群治理機制來確保產品的質量和安全性,這些是企業使用者最關切的。儘管在開源協作中社群的多元性和活躍度非常重要,但開源專案必須要向著既定的方向發展,這就需要社群治理能力,保證社群內的成員都向著同一目標貢獻。有許多開源專案都是由於缺乏共同的方向,導致了開發過程中不必要的複雜性和優先順序衝突因而越做越差。

因此,要解決企業使用者的擔憂,可以從以下方面著手:

確認專案目標,使社群成員保持同步。

從開發流程上重視軟體的完整度和安全性,手段包括嚴格的程式碼審查機制、測試製度,並保證每一次上線都經過此流程。

如果開發中使用到了外部軟體,需注意外部軟體是否存在漏洞和安全問題。

假如開源開發嚴格按照完善的流程執行,所產出軟體的安全性、可控性會超過閉源軟體,因為它從設計到落地得到了無數社群精英的關注。你可以想象假如在閉源公司中要僱傭這麼多人來審查程式碼和進行安全測試成本會有多高!

雲原生浪潮下的科技公司

鄒欣:除了開源之外,雲原生在近幾年也異常火熱。自雲原生概念被首次提出以來,大家對雲原生的定義彷彿一直在變化。我們該如何理解這種定義的變化?基於現在的環境和你的理解,你如何定義雲原生?

Brent Schroeder:

雖然雲原生在迅速發展,但我不認為它定義的本質在改變,變化的是在定義範圍內我們能實現什麼。行業對雲原生最初的描述中提及了許多概念,包括DevOps、微服務、敏捷開發、持續交付、公司文化和流程,更多的是過程和結果,而不是特定技術。這代表雲原生所使用的技術可以不斷髮展、變化,以構建可伸縮、有彈性、持續迭代、在雲上可靠的應用程式。

在早期,大家還在討論什麼型別的應用與雲原生更匹配,但隨著雲原生產出了越來越多的價值,如今人們希望將它應用到更多的場景中,所以必須開拓新的技術手段。

我對雲原生的定義非常簡單—它是流程和技術的結合,讓企業可以構建和快速迭代應用,使應用具有動態伸縮的能力,賦予基礎設施更高的容錯率,並可移植到所需的業務領域以滿足業務需求—這意味著它可以執行在公有云、私有資料中心中,或廣泛分佈在各種邊緣節點上。

鄒欣:雲原生如今已成為實現企業數字化轉型的技術趨勢。在引入雲原生之前企業應該有何準備?企業該如何擁抱雲原生趨勢?

Brent Schroeder:

雲原生會對企業的技術、人才、商業戰略等方面帶來衝擊,如果企業不做好周全的準備,雲原生技術引入會對企業產生負面影響。

引入雲原生技術從企業購買雲服務開始,因為雲原生不會在一夜之間發生。它需要企業加大對IT部門和業務部門所需人員,以及必要技術的投資。

人才方面,從IT運營團隊、平臺架構師到開發人員,他們必須經過適當的培訓,學習雲原生開發所需技能。人才投資會大大提高成功的機率和效率。

企業和員工必須熟悉雲原生架構下的開發流程,採用以CI/CD開發和交付方法為核心的DevOps文化。

選擇合適的技術。容器、Kubernetes、基礎設施,透過自動化程式碼來管理許可權管控或安全策略,都是雲原生技術概念。

總的來說,企業擁抱雲原生首要考慮的應該是思想、策略和人才培養,最後才是技術。雖然大多數雲原生基礎設施的技術都是開源的,但我們強烈鼓勵企業與技術提供商加強合作,藉助技術提供商的豐富經驗來協助技術引入和專案的生命週期管理。

鄒欣:雲原生技術正在滲透傳統行業,在未來十年,哪些行業受到的雲原生影響最大?雲原生將如何改變它們?

Brent Schroeder:

我認為所有行業都會受到雲原生的衝擊。如今,每個行業的公司都在變成技術公司。無論是零售、製造、金融、運輸、醫療,甚至是政府服務,都面臨著向客戶提供多樣化服務和新功能的挑戰。企業必須能夠更快地作出反應,來支援多樣化的需求,應對變化—而云原生方法和技術可以實現這一點。

前段時間,我與一家石油公司就邊緣計算技術進行了溝通,我驚訝地發現他們也將自己定位成一家科技公司。他們認為雲原生技術可以提升內部系統對石油基礎設施的監控能力,提升其解決和預判問題的效率,使企業運作更平穩、可靠。

鄒欣:對於雲原生時代的開發者來說,他們必須具備哪些技能才能滿足行業的需求?

Brent Schroeder:

我認為開發者必須掌握雲原生相關的方法論,包括DevOps、CI/CD、微服務等。技術行業的發展目標是儘可能從業務開發中抽象出底層技術,這使得業務開發人員能專注於業務交付,而不是IT基礎設施。但對於底層架構工程師來說,他們有更多需要掌握的技能,包括容器、Kubernetes等。

SUSE成功的“秘訣”

鄒欣:SUSE的研發團隊目前主要關注哪些研究領域?

Brent Schroeder:

SUSE是創新、可靠、安全的企業級開源解決方案的全球領導者,超過60%的財富500強企業依賴SUSE來驅動他們的業務。我們專注於企業級Linux、Kubernetes管理平臺和邊緣解決方案的研發,並與社群合作,使我們的客戶能在各個領域創新。

簡化和擴充套件雲原生應用是我們研發的重點領域,因為企業對它的需求日漸緊迫。時至今日,雲原生開發需要很多專業技能和新技術。為了讓更多的企業享受雲原生的紅利,SUSE專注於簡化容器、Kubernetes、邊緣計算等企業級解決方案。這些解決方案將在2022年及以後走向企業,幫助他們實現應用程序升級和資料整合。

鄒欣:Kubernetes正在成為“一切”的平臺,SUSE如何幫助使用者更好地融入這個技術潮流?

Brent Schroeder:

我想擴充套件一下此觀點—Kubernetes和Linux正在成為一切的平臺,Linux作為企業基礎設施和操作環境,而Kubernetes被用來編配平臺,它們相互配合。SUSE的產品正在為客戶提供完整的企業級解決方案。首先,我們有可適配企業使用者幾乎所有基礎設施的企業級Linux作業系統——SUSE Linux Enterprise。然後基於Kubernetes的企業容器管理平臺SUSE Rancher—它是業內可擴充套件性最高、最開放的Kubernetes平臺,幫助使用者管理分佈在多個數據中心、多個雲和邊緣結點的叢集,部署混合和多雲架構以解決業務痛點問題。最後,為提升開發人員的生產力和靈活性,SUSE提供Rancher Desktop和SLE BCI(基於容器映象)。

鄒欣:“如何從開源中賺錢”仍然是中國所有開源創業公司所面臨的主要問題之一,SUSE有什麼經驗或建議可以分享?

Brent Schroeder:

開源是SUSE的核心,它推動我們與客戶合作創新。開源技術的原始碼面向所有人開放,因此開源商業化的業務模型是要向客戶提供程式碼之外的增量價值。

SUSE透過提供大量開源專案的發行版來傳遞這種價值。這使得客戶不必成為開源專案的專家,也能專注自身的業務,將人力主要投入在服務客戶層面而不用擔心基礎設施。

這種業務方式的挑戰是客戶認為他們可以自己構建和支援這些開源專案。這無可厚非,如果有足夠的時間和資源,很多企業都可以這樣做。但是,我總是會反問考慮這種模式的潛在客戶:“你們的業務目標是什麼?既然引入開源是為了支援業務或服務客戶,為什麼不允許專業的開源供應商來為你們部署開源基礎設施?”

新程式設計師001-004 已全面上市,歡迎掃描下方二維碼或

點選

進入立即訂閱即可暢享電子書及精美紙質書。

相關文章

頂部