📖 ZKIZ Archives


如何成為一名合格的CTO? | 黑馬薦文

來源: http://www.iheima.com/zixun/2016/0912/158694.shtml

如何成為一名合格的CTO? | 黑馬薦文
線性資本 線性資本

如何成為一名合格的CTO? | 黑馬薦文

並不是所有的技術問題都應該是 CTO 來回答。

推薦人:常皓靖

推薦星級:★★★★

閱讀時長:3130字,需用時5分鐘

推薦理由:如何成為一名合格的CTO?CTO最核心的職責是什麽?CTO需不需要做核心技術的選型?這些都是線性資本從被投公司的歷程中總結出來的,對於現在或者以後當CTO的你或許會有幫助。本文由線性資本(ID :LinearVenture)授權i黑馬發布。

成為一名合格 CTO

我們投過很多技術型的公司,對於什麽是合格的 CTO 有過自己的一些思考。最近關於什麽是一名合格的 CTO 有些爭論,我們以Q&A 的方式分享一些我們的看法。這些看法一方面有時候會影響到我們投不投一家公司,一方面也是從被投公司的歷程中總結出來的。

CTO 的定義是什麽?

根據其定義,Chief Technology Officer,就是技術方面的最高負責人。和Technology方面相關的問題的爭論在 CTO這層就停住了,CTO的回答將是最終回答。No appeal, no further escalation. CTO如果自己無法獨立回答該問題,他或者她應該想盡各種辦法尋找各種幫助最終做出決斷。但回答該技術問題將是他的最終責任。就好像司法上面的最高法院 - 判決將是最終的。即使是錯誤的,也是最終的。所以一個 CTO 的水平將會最終決定一家公司的技術水平。

但這不代表所有的技術問題都應該是 CTO 來回答。用司法系統再次做個類比,各級法院在其職責和能力範圍內盡可能的進行司法實踐。同樣的,盡可能的將技術問題控制在負責相關實踐的技術人員那邊,直到爭論產生或者技術小組無法獨立回答。

上面談的技術是事方面的責任,硬幣的另外一面是人方面的事務。CTO 里面除了Technology之外,另外一個不能忽視的關鍵詞就是 Officer。Officer 是一個 leadership role。一個領導位置。好的領導是一位管理者但多於管理者的角色。他需要打造團隊不然沒有隊伍可以領導,光棍司令要麽過勞死,要麽拖公司發展後腿;他需要發展(grow),激勵(inspire),刺激(motivate),挑戰(challenge)隊伍,不然隊伍無法發展超越自我;他是一個榜樣,他需要說一套就做這套,因為技術團隊里面的人會以他的言行作為自己行為的一個對標。最好的 leadership 是 lead by exmaple. 他需要去挖掘和培養團隊里面的其他有領導潛質的人不然團隊沒法 scale。我記得從工程師轉做 manager 的時候我們 VP 專門找我聊了下,其他都忘了,我記得這一句

『I don't care about your personal success. I care about your team's sucess. As a leader, your job is to make them successful.』

(我不在乎你的個人成功,我在乎的是你的團隊成功。作為領導,你的職責是使他們成功。)

一個 CTO需要在必要的時刻站出來保護自己的團隊,因為公司的政治在發展過程中會不可避免的出現;與其像某BAT公司那樣內部宣布不允許政治,但其實比誰的政治鬥爭都多,不如坦然的對待,把一些利益紛爭放在臺面上來討論。

所以純粹的只討論管技術不管人的 CTO 是不合格的。有些公司的選擇是到一定情況下,將 CTO 和 VP of Engineering 的角色分開,前者只管技術,後者更多管人和文化,也是一種選擇。這個時候的 CTO 里面的 T是重點,而非 O。

CTO 最核心的職責是什麽?

保證核心產品能夠保質按期發布。

不管是前面提到的技術,還是技術人員的管理,『最終』不是為了建立一個『偉大』的技術架構。最終目標是為了能夠發布產品,解決問題,滿足客戶,占領市場 - 這是一家商業公司的核心所在。CTO 的職責是為核心服務。

重點雖在今天,但也要為未來產品快速叠代和持續發布做好準備。

CTO 到底需不需要coding?

不需要。

但是,早期除外。

早期的時候啥都缺,很多事情都需要 CTO(有時候包括 CEO)親力親為。這個時候是不需要講太多規矩的。沒有隊員就自己上,沒人會,組織人學了上,包括自己。但CTO作為 IC (individual contributor) 應該是暫時的行為。盡可能通過尋找到更加專業的人來做具體業務的編程。不管是前端,後臺,數據,全棧等等,刀應該是越磨越鋒利。CTO 是操刀的人,不應該是刀本身。

CTO需不需要懂編程?

CTO 必須懂編程,很懂編程。

他應該是個很好的工程師。如果他需要,不應該超過3個月可以重操舊業成為很好的程序員。只有這樣他才能和其他工程師有好的溝通,在必要的時刻介入到技術框架討論中不會雞同鴨講,被自己的手下鄙視。

CTO 要不要參與做核心技術的選型?

只有在自己擅長的領域內或者團隊沒法自己做出有效決策的情況下才介入。

這里涉及一個做核心技術決策時候的原則"let the expert decide"。 如果你就是那個最好的 expert,你來。這個時候你不是以 CTO 的角色,而是以一個領域專家的角色參與討論。另外一個原則就是盡可能讓負責實踐的團隊來決策。一個施工團隊是受一個技術選型決定的影響最大的一方,他們最有動力花時間來深入研究,去做一個將來不會讓他們難堪的決定。如果有必要,CTO 可以利用自己在行業里的關系鏈邀請最合適的外面專家給團隊分享案例提供建議,但不要將決定權交給外面的專家。

而當團隊陷入一種爭論而無法獨立做出決斷的時候,假如你相信你的隊員們,這個時候你可以參與做個仲裁;因為如果膠著的雙方都優秀的話,被爭論的技術選項不應該存在一種會比另外一些選項明顯好很多的情況。Just pick one and move on. 作為 CTO,你要明白爭論在什麽時候是足夠了,什麽時候該做個決斷了。

CTO 要不要參與代碼審查(Code Review)?

首先,不積極推動 Code Review 的 CTO 不是合格 CTO。明顯沒有全局化視野和對長期效率的深入思考。

有了 Code Review 的機制後,我建議CTO應該經常看看核心部分的代碼,以保持對於自己團隊代碼的熟悉程度。

讀代碼就像讀書一樣,時間久了不讀書,會失去對文字的感覺。但不一定要全讀。核心系統的核心代碼,和公司碰上的大 bug 時候,都應該經常看看。前者對於自己公司的最核心的技術實現有個第一手的了解,知道強在哪里;後者可以了解自己的團隊通常是磕磕碰碰在什麽地方,知道弱在哪里。

CTO是否應該參加核心系統的架構討論?

應該。

如果一個 CTO 來自己最核心的系統的大體實踐都不了解的話,沒法在必要的時候介入做最終的技術仲裁;也沒法知道需要招什麽樣的技術人員來發展團隊。前者是做事,後者是做人。而事和人都是應該為了系統服務的。系統,當然是為了產品服務。

CTO是否應該參加核心產品的討論?

應該。

產品需要實現,只有清楚核心產品是什麽,才知道需要什麽樣的核心系統,然後才是什麽樣的技術和人才。所以CTO參與核心產品的討論非常重要。

CTO該不該主導工程師文化和制度建設?

CTO 的主要職責之一。

CTO 是一個 leadership role。團隊小的時候,管理相對容易,大家主要就事論事即可。團隊大了,不管你願不願意,會逐漸分層,你需要逐漸的去發展中層幹部,也要逐漸思考文化建設。所謂文化建設,就是一個形成共識的過程。這種共識是關於什麽樣做事做人的風格是被鼓勵。文化無關對錯,文化是一種選擇。

很多創始團隊的早期CTO 如果沒法隨著公司的成長而成長起來,還是天天陷入到某塊具體代碼的局部戰爭中去,動輒就介入具體的執行,一不放心就自己啥都管管,不懂得delegate,要不就是放手就完全不管,不懂得validate。師長做了排長的工作。

如果一家公司的 CTO 只想管事,不想管人。要麽加一個 VP of Engineering分管人,要麽把 CTO 的位置讓出來給到更合適的人選。

CTO應不應該經常走出去和外界交流?

雖然並非必須,但這是區別於一個合格 CTO 到卓越 CTO 的重要的點。

走出去,一方面可以將自己公司在技術這塊的事和人方面的問題暴露出去。達到高水平的前提是你和高水平之間是聯通的,這樣兩個水面才有機會平起來。除非你很自負的認為自己就是比剩下的世界要牛很多。另外一方面,可以將自己公司取得的一些成就展現出去,自己公司的文化特點展現出去,能夠更好的吸引牛人進來。前面提到CTO 一個重要的角色就是要打造團隊。團隊的前提是牛人;吸引牛人的前提是別人要知道你。CTO 不走出去和業內多交流,指望獵頭找來牛人多半是不靠譜的。

但要區別有效交流和飯飯之交。前者是需要紮實的去分享,去給社區做貢獻,花錢花精力把牛人請進來做分享,大家做深度的無保留的探討。後者主要是飯局交流,泛泛之交,並沒有討論到具體帶人處事的實例的交流。後者雖有些價值,我們作為投資人幹幹可以,對於CTO 意義不大。

在這一點上,可以借鑒下這篇文章(註:http://www.svpg.com/what-makes-a-great-cto/)關於 CTO 的Evangelism(布道)上的角色

The CTO will serve as the company spokesperson for the product development/technology organization, demonstrating leadership in the community, with developers, partners and customers. This is often measured by establishing a university relations/recruitment program, and sponsoring or participating in at least two events per year in the developer community.

CTO 應該和什麽人做經常性的1 on 1?

常規性的1 on 1 應該包括CEO + VP of Product + direct reports + 核心產品的技術負責人 + 架構師。另外對於即將從工程師轉到管理崗位,Manager升到 Director 等的人員,應該在考察期間交流一到兩次。

以上只是我們的一家之言。成功的 CTO 也許和成功的 CEO 一樣,可以出身迥異,風格不同,但最終到底,一定是圍繞 Technology 將 Chief Officer 的角色扮演好。

CTO 技術
贊(...)
文章評論
匿名用戶
發布
PermaLink: https://articles.zkiz.com/?id=214612

Next Page

ZKIZ Archives @ 2019