Google中國編程挑戰賽專(zhuān)訪(fǎng)李開(kāi)復: 做終身程序員是一件好事情
在李開(kāi)復博士加入Google公司并擔任google中國總裁后,最近他們推出了一項Google Code Jam - 中國編程挑戰賽,為了更好的了解這次大賽的目的和背后的一些想法,我們約到了李開(kāi)復博士進(jìn)行了專(zhuān)訪(fǎng)。
記者:那這次程序大賽主要是為了考察程序員哪些素質(zhì)?
李開(kāi)復:我們出的題目,需要選手具備很縝密的算法、嚴格的過(guò)程,完善的測試,容錯和速度也需要考慮的因素,而且我們的題目可能比較困難一些。
比賽考察的重點(diǎn)是選手有沒(méi)有把計算機科學(xué)學(xué)好。我們發(fā)現,很多學(xué)生只看表面的東西,其實(shí)更重要的是學(xué)懂理論。我原來(lái)就說(shuō)過(guò)外功和內功的差別,外功很好的人去打擂臺,肯定打不過(guò)一個(gè)內功很好的。這里的內功就是算法,數據結構,操作系統,數據庫方面的基礎知識,要把大一,大二,大三這些基礎課程學(xué)的特別扎實(shí),把這些課程學(xué)好。一些學(xué)生號稱(chēng)自己知道很多最新的技術(shù),但這些只是一些語(yǔ)言。就像一個(gè)人學(xué)會(huì )了幾十種語(yǔ)言,卻寫(xiě)不出一篇好文章。
當然,我們考察的還有創(chuàng )新能力,要選手反應要夠快,想事情要嚴謹。有一個(gè)挑戰賽的環(huán)節,是別人可以找你程序中的bug。因為當程序員真的去工作之后,有幾件事情是每個(gè)程序員都要去做的。比如測試和codereview。如果只會(huì )寫(xiě)程序而不會(huì )測試是不行的,而且也不能只看懂自己的代碼看不懂別人的代碼。這次比賽我們是引入了一種競爭的機制,需要靠給別人挑錯來(lái)給自己加分,以后可能有更好的方式來(lái)測試選手這方面的能力。
記者:您希望通過(guò)大賽向程序員傳遞怎樣的信息?
李開(kāi)復:中國有一些現象,比如一個(gè)程序員作好了就是做經(jīng)理、總經(jīng)理、創(chuàng )業(yè)。程序員并沒(méi)有認為他們從事的是一項非常了不起的事業(yè),大家覺(jué)得做科學(xué)家,數學(xué)家很好,但提到程序員就不行了。但google有很多優(yōu)秀的程序員,他們甚至到副總裁級別,他們也不要帶團隊,就是整天編程。Google的No.1的程序員叫Jeffrey Dean,他做了一件非常了不起事情,開(kāi)發(fā)了一個(gè)技術(shù)MapReduce可以讓程序員很容易的學(xué)會(huì )為幾千臺服務(wù)器編程。他現在38歲了,可能按照中國的觀(guān)點(diǎn)來(lái)說(shuō)他可能不適合編程了,但這種觀(guān)念必須要改掉。
所以我們希望更多人能夠理解做終身的程序員是一個(gè)好事情,并不是一個(gè)不好的事情。
記者:我們看到很多報道Google的產(chǎn)品開(kāi)發(fā)往往只有一個(gè)很小的團隊進(jìn)行的。聯(lián)想到這次大賽也是一種針對個(gè)人的比賽形式,是否您認為小團隊也是軟件開(kāi)發(fā)的一種趨勢呢?
李開(kāi)復:團隊精神的確非常重要,但不是我們這次比賽的目標。不過(guò)最后得獎的50個(gè)人我們會(huì )帶他們出去一個(gè)地方,做一些很有趣的事情。這些事情也會(huì )間接的培養他們的團隊。
其實(shí),我覺(jué)得互聯(lián)網(wǎng)又給了個(gè)人一個(gè)新的發(fā)展機會(huì )。google很多新產(chǎn)品就是一個(gè)人有了新的idea,于是實(shí)踐一下,然后把產(chǎn)品開(kāi)放出來(lái)看效果,并且可以實(shí)時(shí)的得到回饋。它是將互聯(lián)網(wǎng)當作實(shí)驗室,因為是free的軟件,有不足的地方用戶(hù)也可以接受。我發(fā)現在Google,即便是在這個(gè)idea要繼續產(chǎn)品化的時(shí)候,也不過(guò)二三個(gè)人,最后變成一個(gè)很大的產(chǎn)品,也不過(guò)二三十個(gè)人的團隊。
大的隊伍進(jìn)行開(kāi)放也是有代價(jià)的,100個(gè)人做一個(gè)軟件由于要不斷的會(huì )議、交流、作好的功能取消這些會(huì )喪失掉80%的效率?;蛟S1000個(gè)人一些做事只能做200個(gè)人所作的事情,但200個(gè)人如果不需要任何磨合,甚至可以做1000個(gè)人的事情。
記者:Google在中國的招聘全部來(lái)自國內嗎?
李開(kāi)復:我們這次比賽和招聘不是一回事,當然成功的選手可能會(huì )加入Google,但這不是刻意的。我們主要是為了提升對程序員的尊敬,理解程序員是一個(gè)終身的職業(yè),同時(shí)把我們的理念表現出來(lái)。
在國內的招聘方面,我們有很大的特色,比如不要求英文能力,這些能力可以要求他們以后提高。同時(shí),會(huì )有一大批從總部回來(lái)的中國人,比例可能會(huì )是5:1,這邊每招5個(gè)人,對應著(zhù)國外回來(lái)的1個(gè)人。這樣可以有效的將google總部的文化帶回來(lái)。當然,Google中國的招聘也是同樣嚴格的,沒(méi)有放松任何要求。
記者:有消息說(shuō)google招人一半是博士,他們偏學(xué)術(shù)化還是工程化?Google中國做的事情偏科研還是偏產(chǎn)品呢?
李開(kāi)復:這兩種博士都有,純學(xué)術(shù)化的我們也有,但更多的是要具有實(shí)戰經(jīng)驗的。我們雇的博士絕大部分也要做程序員,并不會(huì )因為是博士,就可以來(lái)分配工作給程序員。大家都是程序員。他們必須要編程,如果只是寫(xiě)幾個(gè)公式,分配給別人編程,不是說(shuō)這種不好,而是不適合Google公司。Google的理念是每個(gè)工程師都是科學(xué)家,每個(gè)科學(xué)家都是工程師。我們要做創(chuàng )新,但也有編程。
另外,我對中國程序員這些年來(lái)的進(jìn)步感到非常驚訝,這7年來(lái)的進(jìn)步很多。我想這次找到符合我們標準的人的比例要高10-20倍。應該說(shuō),計算機專(zhuān)業(yè)學(xué)生并沒(méi)有增加很多,但水平增高了很多,這里有教育方面提高的原因,但更多是互聯(lián)網(wǎng)的效果,程序員可以在網(wǎng)上學(xué)習,參加競賽,有很多類(lèi)似csdn這樣網(wǎng)站和交流平臺。而且,pc越來(lái)越便宜,高中就可能可以購買(mǎi)一臺使用。而且很多競賽也讓中國的程序員樹(shù)立了信息,基于這些因素,我對google在中國的發(fā)展有很大的信心。
我想,應該再過(guò)幾年,我們就不需要專(zhuān)門(mén)在中國舉行這種編程比賽了,因為可以納入全球的比賽?,F在因為各種因素到國外比賽還不太方便,于是我們現在提供給程序員這個(gè)機會(huì )可以先接觸一下這方面的大賽。
聯(lián)系客服