北京2016年5月20日電 /美通社/ -- 2016年,資本對移動醫療的態度從狂熱趨于冷靜,投資人遴選、投資好項目的標準也越來越嚴苛。恰在這個時期,耕耘近五年之久的移動醫療公司杏樹林在2016年1月宣布獲得3200萬美元的融資消息,讓整個行業都為之一振。杏(xing)樹(shu)林聯合創(chuang)始人(ren)、杏樹(shu)林CTO王哲接受騰訊云布道師專訪,解密(mi)一家公(gong)司(si)的技術(shu)領(ling)袖如何帶領(ling)技術(shu)團(tuan)隊走上C輪融(rong)資(zi)之路。
王哲畢業于英國約克大學,獲軟件工程碩士,在職博士研究生。目前負責杏樹林技術團隊管理和數據平臺業務建設,特別關注移動醫療創新方面的工作。他(ta)雖然一身程序(xu)(xu)員標配:眼鏡、襯衫加牛仔(zi)褲(ku),但笑成一條縫的(de)眼睛和(he)閃閃發(fa)光的(de)大白牙比常(chang)見的(de)程序(xu)(xu)員多了一點陽光。
除了寫代(dai)碼(ma),王哲在(zai)他的blog“杰克船長的小屋”還會不定期更新博文,他還用代(dai)碼(ma)寫了一(yi)首詩。
王哲博客:wangzhe.github.com
github代碼地址:github.com/wangzhe
“在公司發展的不同階段,CTO的角色和側重的重點也會有所(suo)改變(bian)”。對于初創團隊(dui)來說,CTO與技(ji)(ji)(ji)術合伙人是(shi)個種角色;對于走(zou)到(dao)B輪(lun)的CTO而言,重心(xin)應(ying)(ying)該從產品轉(zhuan)到(dao)團隊(dui)培養和新技(ji)(ji)(ji)術引進;對于走(zou)到(dao)C輪(lun)的CTO而言,應(ying)(ying)做好重要的三件事(shi):搭建(jian)技(ji)(ji)(ji)術體(ti)系(xi)、掌握(wo)業(ye)務(wu)發展和未雨綢繆。
同時,王哲還提出“程序員是工匠精神的代(dai)表”、“技術(shu)棧是個(ge)偽命題(ti)”等觀(guan)點,充分體現這個(ge)“有(you)意思(si)的(de)程序員”的(de)獨(du)到見解(jie)。
工匠精神
做杏(xing)樹林的(de)很重要(yao)(yao)(yao)的(de)一(yi)個邏輯(ji)是:程序猿和(he)醫(yi)生兩個群體高度相似,醫(yi)生需(xu)要(yao)(yao)(yao)把患(huan)者背過(guo)河,好的(de)程序猿也需(xu)要(yao)(yao)(yao)把業務(wu)背過(guo)河,他們都是工(gong)(gong)匠精神的(de)代表(biao),既(ji)可以(yi)獨立工(gong)(gong)作(zuo)同(tong)時(shi)也需(xu)要(yao)(yao)(yao)協作(zuo)。
杏樹林在做病歷夾和醫口袋的時候,初衷是要做醫生領域的stackoverflow和github,讓醫生之間可以更好地圍繞病歷進行協作。
A輪CTO和技術合伙人不一樣
對于(yu)A輪以前的(de)創業公司,技術人(ren)員的(de)數量一(yi)般從幾個(ge)到(dao)十幾個(ge)不等,對于(yu)像(xiang)騰(teng)訊(xun)云這(zhe)類云計算服務器的(de)需求,可能也就(jiu)只有(you)3到(dao)5臺。對于(yu)公司而(er)言,重要的(de)是(shi)盡快(kuai)開發能夠驗證自(zi)己(ji)商業模(mo)式的(de)技術產品,運(yun)維自(zi)動化、devops、大數據還都言之過早,基本(ben)顧不上。
那么對于這個階段的(de)(de)CTO而言(yan),重要的(de)(de)是研(yan)發(fa)過程的(de)(de)管理以及產品原型(xing)的(de)(de)快(kuai)速迭代,盡快(kuai)開發(fa)出(chu)技(ji)術產品,投放(fang)市場搜集行業和用戶的(de)(de)真實反饋。
從程序(xu)員(yuan)的(de)(de)(de)(de)角度來(lai)說(shuo),創業(ye)CTO作為會坐下(xia)來(lai)寫代碼的(de)(de)(de)(de)人,更希望是(shi)和自己相似的(de)(de)(de)(de)人一(yi)起工作。當我(wo)和其他程序(xu)員(yuan)吵程序(xu)命名和重構(gou)方法的(de)(de)(de)(de)時候(hou),會強(qiang)烈(lie)的(de)(de)(de)(de)覺(jue)得大(da)(da)家是(shi)一(yi)群“屌絲”,但大(da)(da)家在一(yi)起也很(hen)開心……
現在回憶起來(lai),之前一(yi)幫程序猿連著熬了(le)幾個通宵(xiao)寫出了(le)一(yi)個測試框架的(de)時(shi)候(hou),也是我(wo)在那個階段最high的(de)時(shi)候(hou)。但是從CTO的(de)角度來(lai)說,我(wo)會(hui)希望團(tuan)隊會(hui)更加異構和多元(yuan)的(de),有(you)些(xie)擅長項目、有(you)些(xie)擅長產品。
CTO和(he)技(ji)術合伙(huo)人(ren)是兩個角色。初創團隊需要的(de)(de)是把技(ji)術產品(pin)快速產出和(he)快速落地的(de)(de)人(ren)。但是之后(hou)CTO這(zhe)方面的(de)(de)責任就(jiu)已(yi)經(jing)減少了不(bu)少,身邊已(yi)經(jing)有(you)幾(ji)個靠譜的(de)(de)技(ji)術leader來幫忙撐著(zhu),CTO更多(duo)從蓬頭垢(gou)面寫(xie)代碼,轉為培養技(ji)術團隊,下(xia)一步就(jiu)是體(ti)系的(de)(de)建設。
B輪從產品到團隊培養+新技術引進
創業公司如(ru)果能走到(dao)B輪,技(ji)術團隊的人(ren)數可(ke)能會從(cong)十(shi)幾(ji)人(ren)增加到(dao)數十(shi)人(ren),對于云計算服務(wu)器的需求也會去到(dao)幾(ji)十(shi)臺(tai)或(huo)者是都更多。
對于這(zhe)一階段的(de)CTO,他們的(de)身(shen)邊基(ji)本上已經(jing)形(xing)成了一些可(ke)靠(kao)、核心的(de)技術骨干,能夠幫助其分擔技術管理(li)的(de)工作,比如說(shuo)具體的(de)研發管理(li)、測試(shi)管理(li)、運維(wei)管理(li)等(deng)等(deng)。
在(zai)這(zhe)個技術(shu)團隊人數(shu)和(he)產品的(de)業(ye)務需求(qiu)同時快速增長的(de)過程當中,對于(yu)這(zhe)些(xie)走到B輪的(de)CTO而言,是(shi)(shi)否(fou)敢于(yu)做出一(yi)些(xie)長遠、有助于(yu)提升整(zheng)體(ti)的(de)研發效率,但(dan)是(shi)(shi),又可能(neng)會影響產品交(jiao)付時間(jian)的(de)技術(shu)決策,可能(neng)是(shi)(shi)一(yi)個嚴(yan)峻的(de)考驗。
當年我在公司推(tui)廣node.js的時(shi)候,頂了很大(da)的業務壓(ya)力,招人(ren)+培訓+業務還在快速增長。厲(li)害(hai)的時(shi)候產品的上線(xian)晚了2個月,但是第3個月開始可以做(zuo)到(dao)2個產品、4個平臺的版本,每周迭(die)代一次(ci)。
Angualr JS在(zai)公司做過實(shi)驗,失敗了(le),主要原因(yin)mvc的(de)模式,不太適合前端研發的(de)場景需(xu)要。所(suo)以放(fang)棄了(le)。
技術棧是個偽命題
技術負責人(ren)這(zhe)段時(shi)間熟悉什(shen)么,CTO身邊的人(ren)最熟悉什(shen)么,可能(neng)就(jiu)(jiu)會選擇什(shen)么技術。就(jiu)(jiu)像最近有(you)消(xiao)息說(shuo)uber的技術棧從node.js換到go。
王哲也(ye)正是(shi)(shi)因為(wei)之(zhi)前2014年的時候項目(mu)用(yong)過node,所以會開始引(yin)入node。現(xian)在前端(duan)難招,反過來看看來之(zhi)前選(xuan)node.js的選(xuan)擇還是(shi)(shi)對的,因為(wei)現(xian)在他們可以幫我判斷哪些前端(duan)是(shi)(shi)靠譜的。
杏樹林(lin)的(de)技術棧(zhan)從Android、iOS+Java->Java +Angualr JS->Java+React+Node.js->又引(yin)入Go、Swift、Ruby目的(de)在于避(bi)免程序(xu)(xu)員的(de)技術思維僵化,Java的(de)門檻低(di)(di),大學和機構培(pei)訓了(le)很(hen)多年了(le),招人(ren)(ren)容易,有時(shi)(shi)受業務(wu)壓力的(de)時(shi)(shi)候會降低(di)(di)招人(ren)(ren)的(de)門檻,中低(di)(di)端的(de)程序(xu)(xu)猿會比較(jiao)保守。
通過引入Node.js和React這樣的新技術,研發團隊會開始有一些技術方向的爭論,我們技術團隊的氛圍也變得更活躍了。
創業公司(si)和大公司(si)比較而言,創業公司(si)在人(ren)才等(deng)等(deng)各個方面都是付(fu)不起代價的。
《創業(ye)維艱》那本書提(ti)過招人(ren)要快,開(kai)人(ren)也要快。但從(cong)我(wo)們自己來看,這個更(geng)多是做成事的(de)人(ren)的(de)馬后炮。當你在面臨業(ye)務(wu)壓力,是否要開(kai)除一個可能不合適的(de)技術人(ren)才(cai)的(de)時候,怎么做出(chu)選擇(ze)?
之前我們有一(yi)個很好的(de)(de)技(ji)(ji)術人才(cai),但(dan)是(shi)他(ta)(ta)的(de)(de)溝(gou)通能(neng)(neng)力和思維方式有問題(ti)(ti),業務返回的(de)(de)問題(ti)(ti)也不(bu)愿(yuan)意解決,但(dan)是(shi)之后一(yi)個小的(de)(de)業務方向(xiang)因此(ci)花多了(le)半年的(de)(de)時間來(lai)解決他(ta)(ta)留下的(de)(de)坑。其他(ta)(ta)的(de)(de)技(ji)(ji)術人員也會因此(ci)產生(sheng)疑問,這(zhe)個被開除(chu)的(de)(de)人比我技(ji)(ji)術能(neng)(neng)力還強,為什么會被開除(chu)。
C輪技術戰略與體系搭建
一般來說(shuo)CTO職責包括(kuo):參(can)與公司戰略計劃(hua)(hua)的制定(ding)(ding);制定(ding)(ding)技術(shu)(shu)發展規劃(hua)(hua);領導技術(shu)(shu)團隊實現產品(pin)目標;技術(shu)(shu)人員(yuan)的招(zhao)聘、培訓、考核。
走到C輪,我目(mu)前在(zai)這(zhe)幾類工(gong)(gong)作(zuo)上的(de)時間分(fen)配比例,技術戰略(lve)項目(mu)占1/2,主要基(ji)于對公司的(de)業務(wu)戰略(lve)的(de)理解,最近的(de)2個月特別關注devops方向,目(mu)前運維的(de)自動(dong)化(hua)程度還有(you)待提升,上個季度會關心大數據。團隊占到1/3,這(zhe)是(shi)是(shi)CTO工(gong)(gong)作(zuo)的(de)很重(zhong)要一部分(fen)。
最(zui)后1/6會(hui)處(chu)理(li)各(ge)種雜(za)事,比如和HR對接招(zhao)人的需求,做(zuo)招(zhao)人相關的數據分析,確定(ding)季度招(zhao)聘重點等等。
我會希望公司的技術團隊變化不會太大,但是不斷提升招人的標準,我們喜歡招能夠提升我的危機感的人……
2014年時,王哲重要的兩件事是(shi)R&D和Team,2016年重要的是(shi)戰略(lve)和R&D,Team這(zhe)塊會重點(dian)看文(wen)化和效率。
對于能夠帶技(ji)術團隊走(zou)到C輪的CTO而言,很(hen)重要的三件(jian)事(shi)分別是搭(da)建技(ji)術體(ti)系、掌握業務(wu)發展和多做未雨綢繆。
你(ni)不能(neng)等到(dao)需(xu)(xu)要devops運維研(yan)發體系的(de)時(shi)候(hou)再去研(yan)究devops,這(zhe)個時(shi)候(hou)你(ni)的(de)服(fu)務(wu)器可(ke)能(neng)已經宕機幾十回了(le),業(ye)務(wu)需(xu)(xu)要大數(shu)據(ju)的(de)時(shi)候(hou)再去建大數(shu)據(ju)的(de)體系,技術已經成為了(le)業(ye)務(wu)發展的(de)瓶(ping)頸。
了解了業務發展(zhan),我(wo)除了帶技術團隊外,還(huan)會(hui)帶醫(yi)療大數據商業化的(de)產(chan)品團隊,有助于加(jia)深他對于業務的(de)了解和掌控。
創業的過程可能(neng)也是(shi)CTO成長(chang)的較快(kuai)的時(shi)候,人在被逼得最緊的時(shi)候。因為(wei)不管是(shi)技術實踐還是(shi)管理能(neng)力的方面都會得到更(geng)全(quan)面的鍛煉。