After Dr. Lee joined Google and served as the president of Google China, they recently launched a Google Code jam-China programming challenge to better understand the purpose and ideas behind the competition, we have an interview with Dr. Lee.
Reporter: The main purpose of this program competition is to examine the quality of programmers?
Kai-fu Lee:Our questions require contestants to have well-developed algorithms, strict processes, complete tests, fault tolerance, and speed. In addition, our questions may be more difficult.
The focus of the competition is whether the contestants have learned computer science well. We found that many students only look at the table, but more importantly, they learn the theory. I have already said the difference between external and internal functions. A person with excellent external skills will surely not be able to beat the station. The internal strength here is the basic knowledge of algorithms, data structures, operating systems, and databases. The basic courses of freshman, sophomore, and junior must be well learned. Some students claim to know many of the latest technologies, but these are just some languages. It is like a person who has learned dozens of languages but cannot write a good article.
Of course, we are still observing the ability to innovate. contestants should be quick enough to respond and be rigorous in thinking about things. There is a challenge in which someone else can find bugs in your program. Because when a programmer really does his work, there are several things that every programmer will do. For example, test and codereview. If you only want to write the program and do not test it, you can't just understand your own code and cannot understand others' code. In this competition, we have introduced a competition mechanism that requires us to add extra points to ourselves by making mistakes. In the future, we may have a better way to test the player's ability in this aspect.
Reporter: What information do you want to pass to programmers through the competition?
Kai-fu Lee: There are some phenomena in China. For example, if a programmer completes his job, he will be a manager, General Manager, and start a business. Programmers do not think that they are engaged in a very remarkable career. They think that being a scientist and a mathematician is very good, but it cannot be done when it comes to programmers. But Google has many excellent programmers who even reach the level of Vice President. They do not need to bring their teams, that is, programming all day. Google's No. 1 Programmer is Jeffrey Dean. He did a great job and developed a technology.MapreduceProgrammers can easily learn how to program thousands of servers. He is 38 years old now. Maybe he is not suitable for programming from the Chinese perspective, but this idea must be changed.
Therefore, we hope that more people can understand that being a programmer for life is not a bad thing.
Reporter: we have seen many reports on GoogleProduct development usually only involves a small team. I think this competition is also a form of individual competition. Do you think small teams are also a trend in software development?
Kai-Fu Li: team spirit is indeed very important, but it is not our goal in this competition. However, we will take the 50 winners out of a place to do some interesting things. These tasks will indirectly train their teams.
In fact, I think the Internet has given a new opportunity for personal development. Many of Google's new products have a new idea, so we put it into practice and then open the product to see the effect, and get feedback in real time. It regards the Internet as a lab, because it is free software, and there are deficiencies that users can accept. I found that at Google, even when the idea was still productized, there were only two or three people who finally turned into a very large product, but there were only 20 or 30 teams.
Opening up a large team is also costly. 100 people will lose 80% of the Efficiency of making a software program because they need to constantly meet, communicate, and cancel functions. Maybe 1000 people can only do things for 200 people, but 200 people can even do things for 1000 people if they don't need to work together.
Reporter: GoogleAre all recruitment in China from China?
Kai-fu Lee: This competition is not the same as recruitment. Of course, successful players may join Google, but this is not deliberate. We mainly aim to improve our respect for programmers. Understanding programmers is a lifelong career and demonstrates our philosophy.
In terms of recruitment in China, we have great characteristics. For example, we do not require English skills. These skills can be improved in the future. At the same time, there will be a large number of Chinese people who have returned from the Headquarters. The ratio may be. Each recruit 5 people here corresponds to one person who has returned from abroad. This effectively brings back the culture of Google's headquarters. Of course, Google's recruitment in China is equally strict and there is no need to relax.
Reporter: There is news that GoogleHalf of them are doctors. Are they academic or engineering? GoogleIs the work done in China biased towards scientific research or products?
Kai-Fu Li: There are two kinds of doctors, both of which are purely academic, but more importantly, they must have practical experience. Most of the doctors we hire are programmers. They don't assign jobs to programmers because they are doctors. Everyone is a programmer. They have to program. If they only write a few formulas and allocate them to others, it is not that bad, but not suitable for Google. Google's philosophy is that every engineer is a scientist and every scientist is an engineer. We need to make innovations, but we also have programming.
In addition, I am very surprised by the progress made by Chinese programmers over the past seven years. I think the ratio of people who meet our standards is 10-20 times higher this time. It should be said that the number of computer students has not increased much, but the level has increased a lot. There are reasons for the improvement in education, but more are the effects of the Internet. programmers can learn online, many websites and communication platforms similar to csdn participated in the competition. Moreover, as PC is getting cheaper, high school users may be able to buy one. In addition, many competitions have set up information for Chinese programmers. Based on these factors, I have great confidence in Google's development in China.
I think we don't need to hold this programming competition in China in a few years, because it can be included in the global competition. It is not convenient to compete abroad because of various factors, so we now provide this opportunity for programmers to come into touch with this competition.
Google China programming challenge website --