1. 程式人生 > >CTO集體怒吼:我到底要不要繼續寫程式碼(上篇)

CTO集體怒吼:我到底要不要繼續寫程式碼(上篇)

1、CTO有假期嗎?

黃鑫(極光推送):最近一次休假是今年2月份,過年的時候,平時沒有連續的休息的時間。

趙慶華(AppCan):我有兩個孩子,都比較小,一個4歲,一個2歲,所以我的重點是從工作中抽出一部分時間陪孩子。我是週一開會,週一到週五出差,週末陪孩子玩。

尹春鵬(Testin):我們一週上六天班,週日和節假日還是休息的,如果說到休假,我想應該是五六年以前了。

林魏(愛加密):我從來沒有休過假。正常休息,比如說週末、節假日,我就打個五折,一半時間在公司。

殷晉(雲智慧):這個問題蠻有挑戰的。因為我們都是創業公司。我最特殊一些,我不光是公司的CTO還兼著CEO。對我來說,休息跟生活是一樣的,幾乎就是同時在進行,基本上每天會工作到晚上12點。

肖文峰(TalkingData):正常是12點左右睡覺,這是很正常的狀態。要是說休息的很好,怕投資人聽到會…(笑)。但是對於創業者來說,生活和工作密不可分,很難掰扯這個事情。上次休假還是過年的時候正常休假。

2、第一份工作是什麼狀態?

林魏(愛加密):遊戲公司實習,打雞血似的敲程式碼。

第一份工作很久之前了。在遊戲公司實習,當時覺得做遊戲是技術含量最高的,炫酷嘛,當時的狀態就像打雞血,每天都是最晚一個離開公司的。

尹春鵬(Testin):從高大上的中科院辭職。

第一份工作,我大學畢業後到中科院的一個研究所,說實話,當時好清閒,無所事事,一年之後就果斷辭職了。

趙慶華(AppCan):我應聘去說我會做軟體,人家不要我。

我做軟體的,但是我第一份工作不是做軟體。我應聘去說我會做軟體,人家不要我。後來我說我會裝機組網,那時候算是比較先進的工作了,做了得有四年,後來做衛星通訊,這是第一份工作。

黃鑫(極光推送):重寫網站。

我第一份工作是2009年的時候,當時在汽車之家。我剛去的只有七八十人,技術團隊只有五個人,當時汽車之家剛收購了一家公司,我當時第一份工作,把當時那個收購的網站重新寫了一遍。持續了四個月,把前臺、後臺完完全全重新實現了一遍。這個工作給我完整性方面的成長還是蠻大的。

肖文峰(TalkingData):貝爾實驗室,基站出身。

我的第一份工作是畢業之後到貝爾實驗室,做核心交換機實時資料庫的開發。我的印象很深,前三個月是培訓,走了很長的流程。兩年以後,因為這個流程,讓一個新入行的年輕人建立起很規範的意識,帶上一些烙印,對於年輕人進外企熟悉這麼一套流程是非常好的。也因為這套流程太禁錮一個人的思想了,所以離開。

殷晉(雲智慧):奇葩經歷,銷售出身,自考清華計算機系。

聽完你們說了之後我都不好意思說了。大家猜我第一份工作是做什麼的?我第一份工作是2002年做銷售。我本科學的是市場營銷,市場營銷畢業了嘛自然做銷售。我剛才聽你們說有做研究、遊戲、通訊,我特別羨慕。當時覺得做銷售技術含量太低了,就決定學計算機,跑去買了一本書,又買了其他的資料結構、作業系統的書,看完之後考的清華計算機系,從此混進了計算機行業。當然這就變成第二份工作了,才搞計算機,到了一個外企,花了幾年時間成為那個公司全球排名前三的程式設計師。比較奇葩,不足以給各位借鑑。

3、什麼時候開始,把CTO定為努力的目標?

殷晉(雲智慧):一開始就感覺自己適合做CTO。

因為有銷售的經驗,剛開始做技術我就覺得我就成為CTO。我建議技術人,有機會學一下經濟學、市場管理的東西。因為想做一個好的CTO,必須要有市場的意識。我會站在使用者和市場角度,分析我寫的程式碼到底為使用者帶來什麼價值。每寫一行程式碼、每花的一點時間都要算投入產出,對於公司要有銷售的價值。作為CTO這些都是必須要考慮的,如果只是技術很牛肯定做不了好的CTO。

肖文峰(TalkingData):是不是CTO無所謂,初衷是做好產品。

我為什麼成為CTO?到現在還是有一點莫名其妙的感覺。我的初衷是帶著兄弟們把產品做好,是不是CTO倒無所謂。我同意剛才說的話,真正的CTO不只是技術精尖,所有的事情都要操心。

林魏(愛加密):我是不知不覺成了CTO。

愛加密從10多個人到現在的200人,擴充套件非常快,我是慢慢肩負起技術部的職責,什麼都管,不知不覺就到CTO這個職位了。

尹春鵬(Testin):程式設計師的都會有一個夢想,將來會像某某一樣,成為自己敬仰的人。

剛入行時我就想會成為一個CTO。我剛開始做CTO是純技術,後面有很多東西需要自己逐步的學習,慢慢的補上,這樣才能成為一個真正的CTO。

趙慶華(AppCan):不善溝通的技術,只能做到技術大拿。

我從1992年入行,但是沒有想到成為CTO,就是希望成為一個技術上的大拿。後來發展,覺得自己什麼都知道,但是什麼都不精,但是我能說能演講。在第一家公司做硬體、網路、衛星天線,後來發現公司的硬體、軟體全讓我一個人做了,我覺得自己挺厲害。

後來創業,老闆讓我當CTO。作為CTO來說,我在技術上鑽研不是很深。但我能保證技術人員做的事情不會偏離公司的目標。第二件事情就是要求可以溝通。技術人員不溝通,只能做到技術大拿。第三件事情就是要懂產品。研究技術是自己的娛樂,但是把技術轉化為產品這是一個工作。

黃鑫(極光推送):我是做技術裡資料最好的,資料裡產品最好的。

每個程式設計師在寫下第一行程式碼時,目標可能都是一樣的,成為架構師或者CTO。我當時寫程式碼時就是希望做CTO,當時我會把CTO和架構師混為一談,我以為他倆是一樣的。因為我的愛好特別廣泛,我經常調侃說“我是做技術裡資料最好的,資料裡產品最好的”。我這樣走著走著,因為我的興趣太寬泛,所以不適合做架構師。兩年前,調整了自己的職業發展方向,希望往產品CTO方向轉。去年有這樣的機會,極光推送大概一百多人,來這邊做CTO的角色還不錯,並且這邊的技術會有蠻大的挑戰也比較適合我現在的方向,技術、資料、產品三方面的結合。所以有這樣的機會,就做起了這樣的角色。

4、在網際網路公司、IT企業,技術是整個公司的根基,作為CTO到底要掌握多少門語言才算OK?在專署領域裡要深入挖掘到什麼程度才可以保持在技術上的常青?

黃鑫(極光推送):CTO的廣度遠遠比深度更重要。

先說多廣的問題。首先,我平時的工作安排,50%的精力學一些新東西。CTO的廣度遠遠比深度更重要。技術是相通的,我覺得至少有1-2門技能非常熟,行業裡排到很高的水平,這樣才能完成A技能到B技能的遷移。過去幾年內我都做資料探勘。最早的時候我一直以Web、伺服器架構為主。兩個最好的方面是Web客戶端+資料。你會發現一個好處,比如說公司做移動開發,雖然一些細節我不太懂的,比如說Android怎麼適配,或者現在這個方法調用出錯,讓我調我調不出來,但是我能看出錯資訊,可以很快定位到怎麼做才可以,或者出了一個問題,我比公司90%的人都能第一個提出正確的思路。所以深度廣度上面,深要1-2門深,廣要儘量鋪開,這樣才有保證。

趙慶華(AppCan):在網際網路時代,你要了解資訊化協議。

做CTO知識面廣是很關鍵的。如果說開發人員最少要深一門語言,我建議是C語言,這樣看別的也會比較方便。在網際網路時代,你要了解資訊化協議。比如說要做通訊組建,你給我講半天,但是如果不瞭解協議,那麼就是無根之水。我是做前端、後端的研發,網路方面,瞭解一些範圍就可以了。

尹春鵬(Testin):成為別人眼裡的專家。

深度和廣度都是需要的。先說深度,不管是某個開發語言還是某個領域,我覺得想成為一個CTO、架構師,都要在某個方面會成為別人眼裡的專家。說到廣度。不光是做CTO啊,我覺得所有做技術的同學們都應該對各種技術都多多的關注。

林魏(愛加密):技術、產品、邏輯融會貫通。

愛加密是做移動安全的,我就覺得我要把這塊做得夠好、夠精,不只從技術上,包括一個產品的思想、過程、邏輯、發展,要把這塊做到夠深,其他的就不是問題。

殷晉(雲智慧):判斷未來技術發展趨勢,這好像在賭博。

就CTO職位,100%一定是廣度。為什麼這麼說?公司越來越大就會發現,CTO一些決策會影響技術和產品的方向,你的大筆一揮,各種資源都會往這裡投。如果你廣度不夠就無法判斷趨勢。比如在判斷未來技術發展趨勢(比如五年),未來要做什麼技術什麼產品,這就是在賭博。有的公司押錯了技術方向,就可能面向滅亡。到今天為止,我也不再寫程式碼了,但是我會看很多東西(包括國外的)。我還會看雲端計算、大資料等方面的東西。因為我要想未來五年公司要幹什麼,如果判斷不了的話,未來的發展會受限制。因此廣度是CTO必須具備的。

深度,你在成長為CTO之前要有的。如果沒有的話,你就沒有機會成為一個CTO。

肖文峰(TalkingData):對“我想做全站工程師”的提法,深惡痛絕。

我們在座的都是上了一定規模的公司,還沒有在生死存亡線上掙扎的公司。所謂CTO的廣度和深度還是有條件的,要看在什麼階段。對於小團隊來講,CTO無疑是要在一線衝鋒陷陣。前提條件,要看公司是技術驅動還是業務驅動。如果是強運營的公司,那麼CTO的廣度就有一定要求,你要適應需求的變化。舉個例子,CTO的主要責任在於交付。不管是務實還是務虛。交付這個層面,我們具體問題具體分析。根據你創業或者行業的情況來決定。

最近我們團隊遇到一個問題,有些研發人員跟我說“我想做全站工程師”。我比較深惡痛絕,尤其是年輕一點的工程師跟我提全站工程師,我是非常痛恨這種提法的。為什麼呢?我相信只要做過幾年技術的人,沒有人會認為你在一年或者幾個月輕鬆掌握一門技術。我們公司在招聘時,就看最近的三份工作,如果沒有超過兩年以上經驗的話就直接Pass掉。我們問的第一個問題,就是問你最擅長什麼。我們就是從你一個點看到你鑽得多深、走得多遠。

我們說剛入行時就轉到中級,我覺得這樣對大家沒有好處只有壞處。一會兒做Android,一會兒做前端,一會兒做資料庫。對於年輕人,千萬不要這樣。當然了,肯定有全站工程師,我覺得這需要經過長期沉澱,有這樣的過程才可以。千萬不要信多少天入門到精通這樣的話。

下文繼續探討從哪些方面確定產品和技術佈局大方向,目前面臨的困惑,以及作為CTO的技術修煉等內容。