编者按:2003年到2010年期间,原文作者Matt Welsh是哈佛大学工程和应用科学学院的计算机科学系教授。 2010年加入Google,是一名高级工程师。他当前的工作重点是广域网性能和健壮性。下文由Matt所写,文章对比了Matt在Google和哈佛大学时的一天作息,译文由伯乐在线编译。
最近我在想,和在哈佛时的院系工作相比,在Google上班日子到底有多么不同。最大的差别就是,相比之下,我曾在哈佛比较幸运,一周花半个小时做编程相关的事。而在Google,我花费将近(或超过)90%的时间在编写代码。另外,我拖延所耗费的时间和浏览大量“无意义”网站的时间更少了,这大致是因为我更享受工作带来的乐趣。
下面就是我在Google典型一天的过程:
6:30 - 起床、把儿子叫起床、洗漱、早餐、带狗遛公园。
8:30 - 去上班(大多数时间是乘地铁)。
9:00 - 到公司。输入6个不同的窗口密码,让我的工作场所返回正常状态。检查邮件。检查我在不同数据中心的几个部署任务的状态,然后接着昨天的工作。
9:30 - 10:15 - 开始编码,给我所在的系统增加请求的功能。一直调试,直至正常运作,编写一到两个单元测试。处理代码变动列表。去拿当日的三瓶免费的无糖可乐。
10:15 - 11:00 - 转到另外一个项目Git分支。查看同事给我所写代码的Review评论。仔细检查代码,并着手处理评论中所提问题。构建新版本,重新测试,重新修改代码,以确保代码看起来和运作都不错。提交修改后的变动列表,回应评论。
11:00 - 11:30 - 再次切换Git分支。安全起见,重构代码,然后启动一个需运行三小时的MapReduce任务,生成日志数据,来分析网络延迟。
11:30 - 12:00 - 和在山景城的团队成员开快速的视频会议。
12:00 - 12:35 - 在餐厅品尝免费的美味午餐。和同事一起逗乐,分享我在中学时破解 Apple IIgs的故事。
12:35 - 14:00 - 返回办公桌。检查邮件。检查MapReduce的工作状态 - 基本完成一大半。回应上午已完成的代码Review的最新评论,然后提交代码。合并并清理Git分支。查看任务列表,决定接下来做什么事。
14:00 - 15:00 - 和在剑桥、山景城和其他地方的团队开视频项目会议。这个会议是我一周之内唯一时长一小时的会议。这段时间比较有趣,我用来对笔记本做些小检查,点击“重载”MapReduce的状态页面,查看是否已经完成。检查Buzz,并匿名发布一到两条评论。
15:00 - 16:00 - 灌点红牛,保持能量,继续奋战剩余时间。MapReduce已经完成。生成(MapReduce的)结果数据图,并仔细凝视观察一会。分析结果为什么和预期结果不一样,并编写新版本代码,来生成另外一套统计数据。在结束当日工作之前,尽可能把代码整理到可以启动另一个MapReduce。
16:00 - 17:00 - Whiskey Thursday!一群同事聚集到一块,喝苏格兰威士忌并弹吉他。(我办公桌下面收集一些苏格兰威士忌。不知怎么的,我被指派为“酒会”的护卫,不过这挺适合我的。)
17:00 - 收拾笔记本,回家。
17:30 - 20:00 - 晚餐,家庭时间直至儿子去睡觉。
20:00直至睡觉 - 如果晚上有事做,就做事。如果没事,就喝些鸡尾酒。
相比之下,我在哈佛典型的一天工作:
6:30 - 起床、把儿子叫起床、洗漱、早餐、带狗遛公园。
8:30 - 去上班(从家走到办公室是20分钟路程,我会带着狗一起去)。
9:00 - 到办公室。检查邮件。抱怨下午会议之前我必须要做的大量工作。
9:15 - 开始写资助申请书。大约三分钟后,我不知道我要写些什么东西,所以接下来的约45分钟时间是在看Engadget、Hacker News和Facebook。
10:00 - 尽力迅速从看网站的昏迷状态中恢复过来,尽力在一堆必须写的推荐信中有所进展。幸运的是,这些工作容易,可以借鉴我以前写给其他人的推荐信,大部分是“拷贝粘贴”的工作。
11:00 - 查看日历,发现我仅剩一个小时来完成实质性的工作。回复一些在我收件箱呆了几周的邮件。给助手发邮件,安排下周的三次以上的会议。
11:30 - 起草一份预算,给不同的支持人员发送三封邮件,尽力在资助申请书方面有所进展。给申请书取一个标题和全额预算,使其听起来合理。不过仍然还不知道项目内容会是什么样的。
12:00 - 带着狗狗,在校园溜达20分钟。如果遇到其他狗狗,花的时间会更多些。
12:30 - 跑到法学院餐厅,打超贵又不怎么好吃的午饭。回到办公室一个人郁郁寡欢地吃,边吃边看Engadget和Hacker News。
13:00 - 当日的第一个会议,和随机来自台湾公司的随机人员开会。他们并没有给我任何费用,但却想让我花费半个小时时间,来超详细地解释我给他们做的研究项目。
13:30 - 当日的第二个会议,和一位二年级的学生开。他突然决定,在漫无目的的四年大学生活后,他想去伯克利或麻省理工攻读哲学博士。虽然我解释说,没有相关研究记录,不大可能有机会了,但他最后请求我无论如何要写一封推荐信。(于是)狡黠地留意可以借鉴哪些推荐信。
14:00 - 想到不得不做半个小时的讲课。(于是)找出去年的讲课笔记,把幻灯片标题中的“2009”改成“2010”。大概浏览一下,虽然想起来这个讲课完全是个灾难,但我并没有时间来修正了。
14:30 - 16:00 - 向大约70名又困又烦的本科生讲了缓存算法。为了让讲课更加令人兴奋,我用了大量的PPT动画,也用激光笔狂热地做手势。在回答大量问题后,让我想起来,这个幻灯片去年为什么是灾难了,发誓一定要在来年再次使用这个幻灯片之前要修改它。
16:00 - 16:10 - 关门躲在办公室,尽力平静心情,平复在讲课过程中飙升的肾上/腺。狂灌可乐来补充能力和水分。
16:10 - 16:20 - 查看邮件;浏览Engadget;查看Facebook。
16:30 - 17:00 - 当日的最后一次会议,和两位研究生讨论所剩时间不到一周就要提交的论文。尽管他们没有大纲和结果,但他们非常乐观,相信能及时完成。我在白板上花约半个小时概述思想和可能的图表,他们则在笔记本上龙飞凤舞地记录。许下一个模糊的承诺,如果本周我可以看到草稿,我可以检查。
17:00 - 带着狗狗走路回家。这是一天中最爽的时候。
17:30 - 回到家,立刻坐下来查看我在演讲和会议中积累的大量邮件。给我助手发送五个新的会议请求,让他在下周安排好。
17:45 - 20:00 - 家庭时间,晚餐。
20:00 - 通过查看邮件和修改我下周要用到的幻灯片,来假装“工作”。由于太累,啥正事也干不了了,喝点酒,然后再次浏览Engadget网站。
编者后话
也许你看过此文后,会觉得哈佛教授的一天工作时间怎么有点懒散,其实原文评论中也有类似疑问,Matt在回复中解释说,这是他个人不善于时间管理,并非所有哈佛同事都和他一样。
来源:伯乐在线投稿,原文链接。