奔三路 - 你30岁前的学习路!

奔三路学习网

当前位置: 主页 > 挨踢职场 > 职场 >

对话美团首席科学家夏华夏:程序员的人生抉择

时间:2018-12-20 22:11来源: 作者:小邱
千里之行,始于足下 对神秘事物充满好奇


大学篇:千里之行,始于足下

对神秘事物充满好奇,误打误撞报考清华计算机专业

1993年6月,夏华夏面临人生的第一次选择——高考。“当时在小县城,几乎没有人会对专业有概念,大家只在意你考上哪所大学。”对年轻的夏华夏来说,报专业纯属瞎报,当时是看哪个专业的名字有趣就选择一个,而选择计算机是完全是“蒙的”,要知道在上世纪90年代的小县城,大家都没有见过计算机,最多只是听过这个概念。“我觉得,计算机是一个非常神秘的东西,越是神秘的东西就越有意思,对我的吸引力也更大。”夏华夏说,当时他的班主任也不知道哪个系好,在班主任看来,有学生能考上清华大学,“KPI”就完成了。所幸在高考中,夏华夏发挥出色,以山东省第一名的成绩顺利考入清华大学。

进入清华实验班,系院士领入计算机世界的大门

清华有一个实验班,入学摸底考试后,从电子类相关的专业选择了大概五十个同学有资格进入,夏华夏名列前茅。“我们很幸运,因为实验班给我们创造了很好的条件,而且可以直接向系里云集的院士泰斗(张钹、李三立、唐泽圣等老师)请益。”

不过,最开始夏华夏都不知道应该请教什么问题,因为这是他第一次跟计算机世界打交道。现在回忆起第一次上级课的情景,夏华夏记忆犹新,当时电脑配置的是386的处理器,找了老半天都不知道怎么开机,怎么进入系统。

90年代,几乎所有学编程的人都是从C语言开始。这门看起来有些古老的语言,一度耗费了夏华夏几乎全部的精力。“那个时候还不会双打,用两个指头打字,所以编程学习特别慢,现在已经很难想象那种情景了”。人生第一个应用程序,花了夏华夏整整一节课的时间,他记得很清楚,那是一个画图的程序,编译之后也没问题,但是后续检查中,发现目录里有两个没有见过的文件,“.”和“..”(DOS操作系统下的当前目录和父目录),貌似感染了“病毒”,吓得赶紧执行了一个“deltree .”的命令,试图把“病毒”删除,然后就发现整个程序都找不到了。所以夏华夏的第一个程序,其实是一个失败项目。

虽然最开始很窘迫,但一个全新的世界已经向这个懵懂的少年敞开了大门。

小试牛刀,做数据库系统挣到人生的第一桶金

当然,对刚刚接触编程世界的夏华夏来说,每个项目都会倾注很多的精力去完成,而且实验室学习气氛很好,所有同学都会把项目看得非常重要。现在,机器学习、图像识别、人工智能的概念几乎已经众人皆知了,当时还没有这么火爆,其实夏华夏很早就参与了一个人工智能相关的项目,严格来说属于图像识别范畴,项目要求识别一张图上的飞鸟的总数。这是一个难度不小的挑战,夏华夏使用了很多模型进行实践,当时也没有“模式识别”方法可以使用,后来他通过应用算法把“鸟”的边界线数出来,然后逐渐对周围进行“腐蚀”,“腐蚀”到最小的一个点,就认为这是一个“鸟”。夏华夏一直都相信,只要勤思考,肯定能找到解决问题的办法。

在那个年代,人工智能正在经历又一次的低谷期,绝大多数保送的研究生都不愿意去人工智能实验室。“其实很多时候,我们对某些事的认知,确实是受制于环境因素的。可能没有人能够想象到,二十多年后,人工智能领域的人才,已经成为了最为稀缺的资源。”夏华夏非常感叹。

后来,夏华夏又开始接触了Windows编程,做了一个非常炫酷的界面系统,被系里很多同学复制,要知道当时可视化的编程环境比如Visual C++等还没有进入中国,能够做出这种效果,在大家看来已经属于“高手”了。 所以,“钱”也开始找上门了。

对夏华夏来说,印象最深的就是大学时做的一个软件外包项目,这是一个仓库的管理查询项目,老板希望通过一个管理软件,可以将货物输入到数据库系统,能够查询货品的信息和库存信息。夏华夏当时刚刚读大二,他就利用几个月的时间,学习了编程和数据库相关的技术,然后通过各种途径学习研究,搞定了这个系统,挣到了人生第一个5000块钱。

这是夏华夏挣的人生第一笔钱,虽然现在看起并不多,但是当时在校普通学生的生活费,基本上也就是每月一两百块钱,所以绝对是一笔“巨款”。当然,清华计算机系人才济济,很多同学开始在外面写书,做各种软件,收入几千也并不特别稀奇。但这是夏华夏第一次通过计算机技术挣到了钱,意义非同一般。

做自己喜欢做的事情,进步会非常快

1993年到2000年,互联网开始在中国风起云涌,后来成为巨头的BAT都诞生在那个时代。夏华夏也触网了。他跟同年级的几个同学一起做了一个“酒井BBS”,名字源自他们住的9#男生楼的谐音。计算机系的女生住7号楼,刚好离的比较近,所以他们搭了一根线连通两个楼,让系里的男生女生可以一起聊天。

9#BBS最初是秦浩澜、卿芳慧、周霖等人带头做出来的。周霖就睡在夏华夏的上铺,他也是水木清华的BBS的站长(周霖后来曾任搜狐负责技术的高级副总裁,现在是搜狐旗下狐狸金服集团的联合创始人兼CTO)。

大学时期,夏华夏和他的同学们就接触了很多最新鲜的东西,一个全新的世界向他们敞开了怀抱。“我们开始去学习新的技术,学习网络相关的知识,这些都是兴趣驱动的,当时也没有就业压力。其实课堂上的知识带给的成长并是有限的,当你真正动手去做一些事情的时候,进步会非常快,成长也会非常大。”

夏华夏告诉我们,当时有个同学写了一款打升级的扑克游戏,后来很多年之后,发现很多扑克游戏还是基于当时他写的代码。“大学是比较单纯的,我们当时写了很多程序,大多都是因为有趣、好玩,功利性是很少的。”

不过当时,即使是顶尖的学府也没有开职业规划课,大家都是靠自己摸索。夏华夏刚读大学的时候,只想到能够保送研究生,并没有考虑太多。“我们班很多同学选择了出国,因为每个人接触的人不一样,看到的世界也不同。”夏华夏回忆说,即使是清华学习相对较差的同学,出路也都非常好,有个同学因好几门功课不及格而被推迟毕业,不得已去了一家小创业公司,这家小公司的创始人是一个海归,名字叫张朝阳,后来这位同学还成了张朝阳的重要副手。

每个人都有自己的路,关键是选择

“其实,每个人都有自己的路,出国是一种选择,保研是一种选择,工作也是一种选择,关键是看你怎么走。”夏华夏说,当时创业的人几乎没有,因为大家对互联网创业几乎是没有概念的,清华的创业协会应该是1997年左右才开始做(王兴是其中的积极分子),后续很多留学生回国创业,那已经是很多年之后了。

在大学时代,对夏华夏影响最大的一个人是研究生期间的导师郑纬民老师。夏华夏大三和大四时期就跟恩师在高性能计算所做项目,而且郑老师对最新出现的计算机技术都跟的很紧,从并行计算,到后来的分布式计算、云计算、大数据、异构计算等。夏华夏一直在学习和实践,这也为后来读博和工作打下特别好的基础。“如果不出国的话,我还准备跟郑老师读博士,后面因为一些原因决定退学出国留学,郑老师也给予很大的支持,还帮忙写了推荐信。”所以夏华夏一直到今天,都特别感谢郑老师的栽培之恩。

谷歌篇:重剑无锋,大巧不工

6年异国求学路,名师出高徒

本以为读完研究生读完博士,然后找一份稳定的工作,然后就跟大多数人一样平静的度过此生。但命运,变幻无常,夏华夏遇到了生命中最重要的一个人,他又再次踏上了未知的旅程。清华的计算机专业是五年制,夏华夏大五的下学期就认识了自己的女朋友,现在已经成了他太太。

爱情,总是在不经意间,悄然而至。夏太太是同年级的同学,本科毕业后在清华继续读两年制硕士。夏华夏当时正在读博士,因为太太想出国发展,思虑良久后他也决定退学,跟太太一起远赴大洋彼岸继续深造。“其实,从来没有考虑过会遇到自己一生的爱人,也没有想到会出国。因为入学最初的想法就是读个研究生或者博士,出国其实是一个偶然,完全不在人生的规划之中。”

加州大学圣迭戈分校(Universityof California, San Diego,简称UCSD)位于南加州拉荷亚社区,那里环境优美,气候宜人,且坐拥全美国最顶级海滩,被称之为美国“最性感”的理工科学习院校。2000年,夏华夏开启了异国他乡的的求学之路,并度过了人生中重要的6年。“我在美国读了很长时间的书,但玩得也很开心,加州可能是全美最适合居住的一个地方,一年四季都不冷不热。”

夏华夏的博士导师是知名的华裔计算机科学家Andrew A.Chien(中文名钱安达,ACM、IEEE和AAAS会士,现为芝加哥大学教授,著名技术刊物《Communications fo ACM》的主编)。在1990到1998年期间,钱安达老师在伊利诺伊大学(UIUC)任教授。1998年,钱老师转到UCSD当教授。所以夏华夏就跟随钱老师在UCSD继续做计算机相关的研究工作。钱老师研究的领域也比较广泛,后来研究的方向包括数据中心与超大规模系统架构与编程、弹性,数据密集计算工具,嵌入式与移动计算等。2017年钱老师还受邀来美团TopTalk讲座讲过课。

追寻自己的兴趣,实践出真知

在读博期间,夏华夏依然追寻自己的乐趣,做一些好玩的事情。“实验室有很多机器,我们可以在上面做任何东西,每个人都可以在机器上建网站,建个人主页。”当时,夏华夏和同学们搭建了当地的一个BBS,到目前这个网站还在,后来这个网站被迁移到云端,夏华夏和朋友还会发布一些住房的信息,然后进行一些社交活动。

2000年,MP3开始流行。夏华夏从国内下载了4万多首MP3歌曲。回到美国后,就跟同学一起建立了一个音乐库,对收集歌曲进行打分,开始没有对外开放,但是因为工作量比较大,然后就邀请更多的人参与到这个项目中来共同完成,很快就将想法落地了。“其实,当你有很好的想法时,都是可以去实践的,即使没有收到太多的关注,但你自己会有很大的收获。”

在夏华夏看来,整个读书阶段就是不断的去折腾,参与了很多计算机相关的项目,这才让他积累了很多编程的经验。即使读博阶段做了很多研究型的工作,但是其中参与的一个项目也写了几万行的代码。在夏华夏看来,如果没有去做很多这种小型的、有趣的编程实践项目,很多的知识自己也不会知道,也不会对计算机有那么全面的了解。仅仅靠课程内掌握的技术,可能也很难去面试成功一家公司,而且还是世界上最好的互联网公司。

经过7轮面试,成功加入谷歌

2000年,互联网泡沫破灭。整个IT行业进入低谷,一直到2004年才开始复苏,那一年,谷歌在纳斯达克上市。2006年,夏华夏读完博士,同年10月1日正式加入谷歌,当时最好的互联网公司。谷歌纯技术面试有7轮,前两轮都是通过电话进行技术面试,电话面试通过后,再去谷歌总部面试。总部的面试从早晨一直持续到下午,候选人坐在同一个会议室里;每过45分钟就有一个新的面试官进到会议室来,用各种算法、系统、编程、数学的难题来“刁难”候选人。

“无论是电话面试,还是总部面试,都会强调算法与编程,没有太多网上传言的那种类似脑筋急转弯那类的题目,更多的是算法编程、算法能力、分析能力、编程能力。很多人认为谷歌的面试不太公平,有的工作七八年了,还问这么简单的算法和系统问题,但真实情况就是这样,谷歌的标准是希望大家进入谷歌以后,能够写出更高质量的代码。”因为夏华夏大学和研究生期间的实践经验非常多,所以加入谷歌相对比较顺利。

在谷歌,想要“改变世界”是一件很容易的事情,因为谷歌服务全球市场,拥有的计算机的数量也是非常庞大的,用户数量也非常庞大,只要随便找一个项目去优化一下,那么就会产生特别巨大的效果,不仅仅可以提升用户体验,甚至能够影响公司的运营成本。

很多书中或者网上也提到,在谷歌工作往往是工程师自己找事情去做,很多团队中甚至没有产品经理。相比之下,国内很多大型的互联网公司对产品经理的要求其实很高,而谷歌属于工程师文化,偏技术主导。包括后面谷歌做PaaS平台,组建了一个两三百人的团队,但是产品人员只有个位数,谷歌的工程师都是凭借很强的自我驱动能力来把事情做完。

夏华夏在谷歌的经历主要分成两个阶段。第一个阶段,2006年谷歌进入中国,面临很多特殊的问题,包括访问受限,数据的存储问题,中国要求有些数据必须放在中国,而谷歌对自己的敏感数据不愿意放在中国,所以需要一个专门的团队去解决这些问题,然后再做一些新的技术解决方案。夏华夏加入了一个名为China SRE的项目组,去解决这些富有挑战性的工作。

第二个阶段,夏华夏参与了Google+的研发。由于看到了Facebook发展的非常迅速,当时谷歌也希望在社交领域加大投入,所以谷歌在2009年启动了一个代号“Emerald Sea”(“翡翠海”)的项目,目标是研发功能强大的Google+社交平台。当时谷歌把”翡翠海“视为战略级项目,调集了几百人的精英团队去做这个项目,时任CEO的Larry Page也把办公室搬到了项目所在的楼。

注重开放能力,勇于改变

从2006年到2011年,夏华夏在谷歌度过了非常美好的一段时光。谷歌的架构设计非常有特色,后来搭建美团整个架构体系时,夏华夏也借鉴了谷歌架构的很多设计理念,包括容灾系统的设计,到现在也没有过时。“在谷歌6年,让我感触最深的就是谷歌非常、非常注重开放,所以在美团我也非常鼓励工程师开放、多分享技术。”夏华夏说,谷歌几乎所有的代码都是开放的,除了很极少数的核心代码,比如搜索算法、排序算法等等。如果谷歌的同学觉得别人的代码里哪个地方设计的不够好,可以直接上去改。

夏华夏说:“谷歌的理念对我的影响比较大,在后来的工作中,特别是到美团后,我一直都试图往这个方向靠近,包括现在新组建的团队,我们希望让每个工程师都有对代码的控制和访问权,对代码质量的把控权,包括运维和安全的责任,这种理念能够帮助提升整个技术团队的主动性。”还有很重要的一点,谷歌的工程师都具备体系化的思维方式。比如谷歌的工程师,从产品到架构设计,再到最后的上线测试,工程师都是从头跟到尾,所有的代码包括后续优化的代码都统一放到一个代码仓库中,所有的文档也放在Git中,所有的培训资料,工程师可以随时进行修改和优化,这些对夏华夏都产生了影响。

谷歌投入了很多时间和精力去构建公司的课程体系,包括一套名为EngEDU的线上学习系统,这套体系中包括很多编程语言、内部工具、内部研发流程的学习,每个员工都可以从最初级的语言开始学习,还可以学习谷歌公司的一些系统的使用、公司的一些工具和代码库、以及网络系统的配置方法等等,每节课还会有编程的练习。夏华夏说,“未来美团也会向这个方向努力,现在美团技术学院推出了自己的学习平台,还制作了很多技术课程,向公司内部的同学开放,我们也希望能够沉淀成一些体系化的课程,帮助更多的工程师成长。”

其实,从大学毕业到进入谷歌,夏华夏一直没有刻意去选择自己要走那条路,感觉一切都是顺其自然的。对他来说,这些可能都算不上“很重大的决定”。如果说人生很重要的一个抉择,那么放弃谷歌的工作,回国发展,肯定算是夏华夏最重要的决定之一。

内容来自:https://tech.meituan.com/renwuzhi_xiahuaxia.html

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
发布者资料
小邱 查看详细资料 发送留言 加为好友 用户等级:注册会员 注册时间:2017-11-26 17:11 最后登录:2019-01-02 18:01

奔三路小程序已改版