從技術小白到獨角獸CTO,有哪些“必殺技”?
一線工程師→技術經理→技術VP→CTO,是不少技術從業者為自己規劃的理想職業路徑。
然而,CTO 在公司中到底承擔著怎樣的角色?從一線工程師一步步進階到 CTO 之前,又有哪些關鍵的職業技能和工具需要掌握?
光憑站在起點的空想,很難支撐你順利走向職業規劃的終點,此時過來人的親身經驗就尤其重要。
自如 CTO 王迪分享了他從小白到 CTO 的 15 年職場路、CTO 的角色定位、所需技能,以及他在自如的實踐經驗。
從小白到 CTO 的 15 年職場路
學生時代的第一份工作,親歷精益創業
我本科和研究生在清華讀計算機專業讀了七年。2003 年,我正好遇到了幾個在學校邊開公司做網絡安全的師兄,就去他們的公司兼職做軟件研發。
從兼職到畢業后正式入職,一不小心就在這里工作了四年。我逐漸從基層的程序員,寫安全產品服務器、客戶端代碼,做企業集成,到慢慢開始帶團隊。
公司發展也不錯, 雖然也就是二三十人的一個軟件開發團隊,但我一路做下來,算是里頭資歷最深的技術負責人,期間也經歷了售前售后各個方面的鍛煉。
那時我也不懂「精益創業」和「敏捷開發」,但卻在事實上經歷了整個過程——從 0 到 1,完整走過從 MVP 到實驗室到最終產品的每一步;再把它銷售出去,從 1 個客戶到 10 個、100 個客戶,迭代地驗證產品的市場價值。
初次試水互聯網,從一線員工到總經理
2007 年,我感受到自己在這家小公司能積累的東西已經到了一定程度,希望有進一步提升;另一方面,創業中我踩了很多坑,也想學學正規的公司到底是如何運作的。
于是,我給自己立了兩個短期職業目標:
- 去互聯網公司,互聯網是未來的發展方向。
- 去一家硅谷公司,畢竟那里是科技公司的發源地。
在這樣的樸素理念下,我就進入了第二家公司:FreeWheel。
FreeWheel 在 2007 年才剛成立,三位創始人都是 Double Click 的前高管——這是一家當年被 Google 收購的、美國領先的互聯網廣告公司。
這個公司很神奇的一點在于,它從最初起,所有的研發崗就 Base 在北京,我老板就是從美國回國來建立研發中心的,我是 FreeWheel 在北京招的第一個人。
接下來,我在 FreeWheel 又一口氣待了七年半。這場 7 年半的長跑里,我確實學到了很多:我觀察到了創始人前輩們是怎么做事情,怎么思考商業,怎么設計產品的。
美國公司真的是在創業之初規模還很小的時候,就抱有改變行業、改變世界的雄心壯志。
我和團隊一起設計產品、招聘團隊、做編碼、做開發……
剛加入公司時我是技術經理,一步步做到了整個公司主管技術的 SVP 兼中國區總經理,基本上也做到頭了。這時,新的機會正好又來敲門了。
在 LinkedIn,打造本土職場社交平臺
2015 年初 LinkedIn 入華不到一年時間,中國區總經理 Derek Shen 找到我,提出了他的想法:用全新的架構、團隊和產品策略做本土創業的新產品,打破跨國公司在華發展的魔咒。
為此,他希望找一個既有海外公司經驗(畢竟要跟美國人打交道),還具備創業激情和經驗的人。正好我的經歷符合他的標準,就這么加入了領英中國。
我加入領英中國時,公司在國內還沒有任何產品、技術研發的團隊,產品的基礎架構和設計也全都沒有。
在五個月內,我們又是從 0 到 1 的招聘團隊、設計產品、搭建基礎設施,開發測試到最后上線,做出了一款本土職場社交產品:赤兔。
在 LinkedIn 的這 3 年,我收獲了:
- 第一次嘗試 To C 產品。
- 研發的是針對本土用戶的產品。這是我當時職業規劃里非常確定的一步,希望做跟本土市場相關的事。
加盟獨角獸,成為 CTO
2018 年初,本圖民營企業自如宣布完成了 40 億人民幣的 A 輪融資,全面發力產品技術研發,并開始尋找一位 CTO。
經人推薦,我有機會和 CEO 熊林做了深入交流,在理念、愿景高度一致的情況下,最終決定加盟自如。因此今年 5 月,我終于回到了本土民營企業。
CTO 到底要做些啥?聊聊 CTO 的角色定位
我們來看看企業中的 CTO 是一個什么樣的角色,給有志于此的同學一些啟示:
產品技術專家
首先 CTO 得在某些領域(最好不止一個)有特長。既然已經到了 CTO 這個位置,遇到的問題往往不止一類,對要處理的問題要有基本的判斷能力。
研發戰略的決策者
或者叫決策發起者。開始可以帶領大家一起 Brain Storming,但是最后要 CTO 做決定。這一點在創業型公司尤為重要。
當年我做赤兔的時候,最難的事情不是在那五個月里面加了多少班,封閉開發,或者帶團隊。最難的是,在時間有限的情況下做決策。
很多時候我面臨的情況是,幾種選擇都不能保證正確,但是時間有限,大家等不了。這種時刻 CTO 就必須決定,產品向哪個方向發展,把資源投向哪里。
而決策的依據,有些是需要經過長期的積累和思考獲得的,另一些則需要通過讀書、和人交流去積累。
研發團隊的 Leader
任何項目都不是一帆風順的。在團隊面臨壓力,產品出現波動的時候,需要有 Leader 帶領團隊往前走。這件事會占據 CTO 日常工作的很大部分。
比如,我多年來都堅持和向下兩級的下屬保持定期的 One-One(一對一面談),一般是 45 分鐘到一個小時,至少每個月一次。
公司產品技術的代言人
作為 CTO,當別人問到公司有關產品的技術問題時,不管了解到什么程度,都得去講。無論對內對外都是如此,可能對內的溝通更重要。
因為一般技術團隊相對偏后臺,很多業務、營銷團隊都在面對用戶,CTO 需要用產品和技術的知識去賦能他們,幫助他們拓展市場。
CTO 的使命
現在來說說 CTO 的使命,我認為主要有以下幾點。
開發好的產品
每個人對「好的產品」的定義可能都不同。我認為,好產品首先要有價值,無論它的目標用戶是內部員工還是外部客戶。
當然任何產品都不是第一天就能“好”的,都需要細細打磨,所以 CTO 在產品日常開發方面要投入較多精力,參加產品的討論。
推進新技術的開發與應用
作為技術企業,我們都希望自己的產品和技術能夠與時俱進。這就要緊跟新技術并應用到產品、項目中去,這是需要 CTO 來推動的。
其中的挑戰是,如何把握新技術的成熟度、風險以及應用之后可能獲取的收益。這里舉個我的親身經歷。
2007 年下半年我在 FreeWheel,我們開發第一版數據后臺時,就用到了剛剛發布的 Hadoop 0.1 版。
當時 Hadoop 剛從雅虎開源社區分離出來,還很不穩定,但是我們還是大膽采用了這個框架,基于它開發了第一版的 MapReduce ETL 系統。
后來過了大概一年半,我們用自研的 C++ MapReduce 系統替換了 Hadoop,主要是因為我們的業務發展到了一定規模后對性能的要求提升了,而當時 Hadoop 的性能不夠好。
技術采用中經常會有這種現象,架構要因時而用,因時而適應。
有意思的是,我離開 FreeWheel 兩年后,我原來的團隊又著手用新的 Hadoop 系統替換了自己研發的 C++ 版本。
技術變遷的過程,就是不斷地擁抱變化,拋棄和接受的過程。
吸引和培養優秀的人才
怎么把各種各樣的人用好,如何吸引大家優勢互補,是挺有意思的一件事。大家可以在這方面去做一些思考和練習。
有本書叫《現在發現你的優勢》,英文叫《Strengths Finder》,里面有個測試可以測每個人最大的 5 個優勢(西方講究要用人所長,而不是補他的短處)。
這些年我在公司里,都會讓直接匯報給我的同學去測他們各自的優勢,這也是一個有意思的一對一討論話題。
有一種特殊的人才,可能有某一個專長非常厲害,但是 ta 也有非常明顯的缺陷。
這樣的人才你敢不敢用,能不能用好?曾經有句話講「偏執狂才能生存」。我經歷的團隊里都有這類人才。
打造高效的組織,營造研發文化
每個企業都在講「企業文化」,但真正讓人感覺有文化特色的企業并不多。很多企業要不就是散養,要不就是管得太嚴。
團隊的文化和組織的效率之間有一定的聯系。打造一個什么樣文化的研發團隊,是 CTO 要思考的。
我個人的體會是:研發團隊需要建立相對獨立的文化,可以和公司其他團隊稍有區別,但是大方向上還是要一致的。不能太特殊,但是又要有一定的特殊。
從人力資源管理的角度上來說,要讓員工高效工作,首先要解決意愿的問題,其次是能力的問題。
以我所在的團隊為例,不論是之前的外企還是現在的自如,我們都在廣泛使用 OKR(Object Key Results)績效管理工具。
每個季度,團隊的每個成員都需要設定清晰的目標,當然這個目標 Leader 一定要跟員工本人商量。
目標的設定至關重要,直接關系到意愿和方向的問題。目標管好了,后期再輔以激勵,或者管控的措施,最后做績效評估的時候才有據可循,大家才會覺得公平。所以我們會花相當多的時間去討論目標。
在 OKR 的制定當中要運用 SMART 原則:
- 具體(Specific)、定量可衡量(Measurable)。
- 夠一夠能夠得著的(Attainable),不能太高,也不能太容易達到。
- 相關的(Relevant),跟個人和公司目標相關。
- 最后要有時間限制(Time-bound)。
發動團隊破解難題
每個企業都會遇到急難險重的問題,這時候 CTO 作為技術團隊的 Leader,要第一時間帶領團隊去解決。
這里分享一個例子,是在我的第一份工作——網絡安全創業公司的時候發生的。
因為當時開發的安全產品是涉及到保密系統和單位使用的,對質量的要求非常高,而且當時軟件安裝的環境是不能連接公共互聯網的。
當出現問題后,只能通過電話和客戶聯絡,客戶用自然語言去描述出了什么問題,連截圖都沒有。所以破解這類技術支持難題還是挺難的。
有些可以遠程電話解決,有些可能要去現場,有些可能要想辦法重現環境。我有很多次都是帶著團隊一起沖過去解決這類問題。這其實是團隊成員所希望看到的。
CTO 的技能包
我們再來看看作為 CTO 需要的技能:
技術的寬度和深度
CTO 應該是「T字型」人才。技術寬度上,前端、后端、數據庫、移動端的各種問題多少要聽說過;深度則是需要在某些(最好不止一個)領域有比較權威的知識,在團隊里應該是技術最好或者經驗最豐富的。
比如我,我感覺我有兩點吸引了自如 CEO:
- 我做過媒體廣告管理,本質是一個 ERP 系統。雖然當時管理的是數字資產,但和自如管理實體資產的 ERP 在本質上還挺像的,也就是說這種復雜的 To B 商業流程我是有深度經驗的。
- 我做過 To C 的移動端產品、社交平臺。這又和自如現在 To C 的客戶端,以及在嘗試中的社區產品不謀而合。
從 0 到 1 的產品經驗
成為技術團隊領導者之后,我特別感謝第一份工作——那個非常小的民營創業公司——它使我在職業生涯剛開始的時候就有機會親手操刀從 0 到 1 做一個產品。這和中間去接一個項目,做迭代式更新的挑戰是不一樣的。
從長期職業發展來看,我非常推薦大家至少有一次這樣的產品經驗,它帶給你的收獲和做從 10 到 100 會非常不同。
解決復雜問題的經驗
讀研的時候學過一門課叫「最優化算法」,那個時候就給我建立起這樣的概念:世界是復雜的,有時候要做出局部犧牲,放棄局部最優解,才有可能找到全局最優解。
還有的時候,全局最優解你可能永遠都找不到。這和我們的人生,包括創業有些相似之處。
復雜系統的經驗帶來的好處是:如果有機會挑戰復雜系統,之后你看問題的視角、解決問題的經驗會提高一個檔次——這也是大型科技公司看重的地方。如果從來沒有解決過復雜的問題,在這方面是有所欠缺的。
理解業務
做技術的人大部分是學工科的,缺少人文社會、商業等方面的科班訓練。
我也是學工科的,但是現在越來越感覺到人文、商業知識的重要。世界變化這么快,光靠努力是不夠的,很多時候要做選擇。
而選擇其實是基于對商業模式的理解和思考的。既要看得遠又要腳踏實地,腳下帶泥。
管理能力和領導力
管理沒有對和錯,只有適合或不適合。這種能力是要慢慢修煉的。經歷了這些年的經驗,我有一個簡單的總結:管理一定是可學的,同時就像德魯克講的,管理的核心不在于知,而在于行,唯一衡量它結果的就是績效。
對研發流程和工具的掌握
現在除了特別小型的公司,大家都會用敏捷開發方法,用這樣那樣的流程框架管理項目,推進研發。工具化、流程化的普及水平已經非常高了。
這和十年前的 IT 互聯網行業、軟件行業的現狀很不一樣。作為團隊領導者,一定要知道這些。
創新思維和方法論
現在越來越多技術的基本開發門檻降低了,包括 AI 未來可能都會平臺化。但是有些東西很難被替代,會形成競爭壁壘,創新思維就是其中之一。
創新是有方法(套路)的,也可以叫做工具箱。創新思維和方法,比較有名的就是克里斯坦森寫的幾本書:《創新者的窘境》、《創新者的解答》,里面對創業包括創新有些系統的描述。
《精益創業》、《創業維艱》等書里面也都提到了許多創新企業探索的方法。
原來迅雷的創始人程浩最近在 36 氪和混沌大學上分享他的創業創新的方法論,大家也可以找來看一看。
職場人脈
隨著社交網絡的發展,職場人脈在未來會越來越重要。這方面的工具和平臺都是現成的,微信、領英、脈脈之類,都可以去用。
但是工具只是工具,我們需要把握職場人脈建立的核心:職場社交是一種價值型社交,大家需要提供互相價值。畢竟都是陌生人,你到底能幫助別人做什么?
所以在拓展職場人脈的時候,你先要思索「我能帶給對方的價值是什么」,然后再來開啟對話。
工程師的個人成長
在此分享一些我的工程師生涯中的經驗和體會:
從工程師到管理者的角色轉變
很多工程師從技術專家變成技術團隊領導者的時候,都會遇到一個問題:突然不知道該干什么了。
Ta 感到驚慌失措:「我原來把自己的事做好就行了,現在突然有了 10 個 20 個人要管,都不知道每天時間該怎么分配」。這種惶恐和彷徨我也經歷過,現在回頭想想,其實也是有套路的。
管理學家亨利·明茨伯格有一本經典著作《管理工作的本質》中講過的管理者角色理論——管理者兼顧三個方面的十種角色(見下圖),只要安排好自己在這十件事情上該花的精力就好。
把該做的事情有計劃地管理起來,就不會覺得慌,然后用 OKR 去考核,就會看到實際效果。
很多人因為沒有經過這種訓練,只好本色出演——自己覺得該干什么就干什么,結果還是干以前當工程師的那些事兒。
成為好的領導者,是要從本色出演變成專業出演,明確自己作為管理者的職責,清楚組織出現了什么問題,并知道這時候需要自己扮演什么角色。逐漸訓練自己往職業化方向去發展。
可以從一些小事做起,最簡單的:學會組織會議,什么是有效的會議;學會寫郵件,什么是好的電子郵件,如何有效地去撰寫等等。
這方面網上都有很多總結,還有書籍專門講解,大家可以去看。
日程的管理
要成為優秀人才,就要保持一個好的工作習慣,用日歷管理時間。
我現在時間管理以半小時為單位,把每一項工作管到半小時的時間粒度,可以比較有效地利用時間。
社交媒體禮儀
社交媒體禮儀其實也是職業化的一個體現,雖然很多人還沒意識到這一點。
比如說用微信和別人發消息,我找比較忙的人幫我的時候,會用簡短的文字,一句話告訴 Ta,我想求他做的事情。而不會先寒暄一番,發個「Hi」,「在嘛」之類的。
人家正在忙的時候,可能很窘迫,Ta 想知道你到底要問什么,這就是社交媒體禮儀。
尊重不同
不同,又稱多樣性(Diversity)。事實有真假,觀點無對錯。美國尤其是硅谷的公司特別強調這一點。
慢慢地,越來越多 90 后,95 后的小朋友加入團隊,真的不能再用過去傳統的方式來管理。尊重不同其實也是一種職業化的體現。
重視細節
有些小失誤在工作中一定要避免,比如失信、遲到、打擾等等。把小節做好,對于職業發展也是很有用處的。
王迪,現任自如 CTO,曾任領英(LinkedIn)副總裁、赤兔技術創始人、FreeWheel 高級副總裁及中國區總經理。清華大學計算機碩士,持續創業者,天文發燒友,長跑達人。