2013年1月6日星期日

Death Valley 四日露营 (Part 2)

前两天的行程请看 Part 1

12/24

由于前一天晚上下了决心一定要 4:00 起来看星星,然后开车上 Dantes View 看日出,所以闹钟响后就很齐心地起床了。4:30 开车到 Zabriskie Point,然后看头顶上的星星认星座。在月亮下山后,能够看到的星星果然更多啊,不过除了能看出不同的亮度和不同的颜色以外,我也看不出什么特别来。

接下来开车上 Dantes View 的山顶看日出。上到山顶感觉超级冷,拍几张照片就要把手放回衣服口袋里。其实日出只能在太阳真正升起来前对着太阳方向拍几张,只要太阳有一点点出来了就不能拍了,能拍的就是反方向刚刚被阳光照射到的山脉了。除了山脉,还有两个山脉之间的峡谷,包括我们下山后要去的 Bad Water。

Untitled

山顶的景点介绍有说 Death Valley 的地貌来源。两座平行的山脉是由于地壳运动造成的,中间峡谷低于海平面近 300 ft 本来是应该成为湖泊的,结果因为山脉挡住了海洋湿润空气导致缺乏降水,同时气温又足够高,结果山上流下来的水最终都被蒸干了,只留下了一篇盐田,也就是 Bad Water 白茫茫一片的地区。

Untitled

UntitledUntitledUntitledUntitled

从 Dantes View 下来到 Bad Water 上晒太阳,因为山顶上实在是太冷了,所以必须到有阳光的地方晒一晒。Bad Water 这个名字很奇怪,官方的解释是估计曾经有一个地图测绘者经过这个地方,他看到有水就想喝,但不知道这是一个快要完全蒸干的盐田,结果尝了一口发现水是苦的,就在地图上留下了「bad water」的标注。尽管 Bad Water 整体上是个晒干的盐田,但在公路旁边的角落里却总是有一块片是有水的,估计因为这一个区域总是在山脉的阴影之下吧,所以地图测绘者才尝到了苦水。

Untitled

离开 Bad Water 后,我开了一小段碎石路进去旁边的 Devil’s Golf Course 。同样是盐田,Bad Water 的地面相对平整,而 Devil’s Golf Course 却凹凸不平。再往前开就是 Artists Palette 了。这是一段单行观光峡谷,由于两侧大石块颜色斑斓而得名。在这条观光路线上,我们最喜欢的部分应该是路牌写着 DIP 的地方了,不踩刹车的话就好像过山车一样(其实我的脚还是放在刹车上的)。

Untitled

早上的最后一个景点是 Golden Canyon,这是一条 hiking trail。我们开头想要在一个小时内完成往返的,这样能够准时在正午前回到 campsite 收拾东西(campsite 跟酒店一样正午 check out),结果走进去后就感觉不走到尽头不罢休,于是走了两个小时才出来。所谓的尽头就是 Red Cathedral,一条长长的红色悬崖,悬崖上方大概就是 Zabriskie Point 吧。

Untitled

UntitledUntitledUntitled

中午回 campsite 收拾帐篷和炊具,发现 ranger 其实不是很介意我们晚来,而且也没有新的游客要来赶着入驻。回顾一下早上如此丰富的行程,才发现早起是多么的重要!如果不早起的话,相当于有半天的时间就被浪费掉了,而完整的一天时间其实可以去很多很多的地方哦。

下午要准备离开了,离开前还去 Visitor Center 多拿了几份地图,保证每人手上有一份可以留念。我们想要在返程时看看之前错过了的 Darwin Fall,结果被 ranger 告知开车到那里后还要 hiking 一段才能看到瀑布,我们不可能在日落之前抵达,也就不可能看到什么。于是我们只好选择探索另外一条路径,去 Wildrose Canyon 看看。

车还是由我来开,路还是铺好的沥青路,就是山有点陡峭,只能用 low gear 放在 3 档开,保证上坡不会有问题,下坡不会超过 30 mph。这段路开起来还是挺刺激的,不会像碎石路那样颠簸,但在盘山时有不少急弯。快开到尽头的时候,沥青路消失了,变成了碎石路。继续往前开发现路上有积雪,大家都不知道是否应该继续往前走,然后说由开车的决定,于是我说绕过这个弯后看看。绕过去之后发现路边有两辆空车,那至少证明是有人来过的,人去哪里就不知道了。继续往前开看到有人穿着短裤在雪地上跑步,他告诉我们前面很快就到尽头所以我就决定继续开到底。

原来所谓的尽头就是 Charcoal Kilns,一个一百多年前用来烧炭的窑。话说这座山脉很有意思,我们现在所在的这一侧是西侧,有乔木有降雪,因为这一侧面朝太平洋(实际上离太平洋有几百英里)。早上我们在山脉的另外一侧,也就是 Bad Water,由于山脉把湿润的空气都挡住了,结果形成了 Death Valley。这个 Charcoal Kilns 就建在山脉的西侧,砍伐这边的树木烧成煤炭,然后运往山脉的东侧用来冶炼金属。

Untitled

我们看到 Charcoal Kilns 时,就有人说要下车在雪地上走过去。我就把车停下来让他们下车,然后想把车开过去再掉头。结果发现车一停下来就没办法继续往前开了,雪地加轻微的坡度足以打滑,于是只好倒车掉头靠边停。考虑到这个地方都积雪了,开过去也不知道哪里是停车位,停路边也不会影响到别人(因为根本没有「别人」),那就先停在路边吧。

Untitled

下山时,我们没有选择原路返回,而是走了 Wildrose Canyon 这条烂路。这又是我最享受的部分了,弯弯区区的沥青路,沥青已经一块块地烂掉,留下地上一个又一个的大坑。当然,享受的前提是我来开车,坐车的话可能比较晕。从山谷里绕出来后,又是大直路。限速 55 mph,我都不知道是否该把它叫做高速了。我开了一个小时左右,由于黄昏光线比较暗,眼睛一直要睁大才能看清楚,最后眼睛受不了了就只能靠边换人。

随后我们开车到洛杉矶附近的 Arcadia 吃了一餐鼎泰丰,感觉还不错,就是要等位。比较搞笑的是,鼎泰豐的新店和老店很近,估计很多人都同时在两边拿号等位,结果是两边都会叫一些空号。考虑到鼎泰丰支持短信叫号,拿号后可以回车上等,哪边先有位就开去哪边停,感觉还是挺方便的。饭后本来还想去 Half & Half 吃甜品的,去到发现关门了,只好回酒店休息。

我们选择了住 Oxnard 的 Best Western Plus,原因是靠近海边,第二天上 CA–1 方便。两天没洗澡,终于有机会洗澡咯!不管住什么酒店,能够洗个热水澡我就很开心了。比较搞笑的是,我们几个人轮番打电话给前台,都没把 Wi-Fi 密码搞明白,最后不想再找前台了,于是拿出各自的设备来 tethering 上网。

晚上躺下后发现这一天特别充实,因为早上一早起来了,所以时间很够用,能够去很多地方。不过想想其实不能每天都如此,因为 4 点起床 1 点睡觉实际上只睡了 3 个小时,算上轮流开车能在车上睡时间也不够 8 个小时。

12/25

最后一天,我们计划是开 CA–1 回家的,结果起床自然不可能早,加上在酒店烧水煮面,出门时已经没掉了小半天。由于不是所有人都吃了面,开车上路时就开始觉得有点饿(包括我在内),于是想找 In-N-Out 吃个汉堡,绕了两家 In-N-Out 都没开门。圣诞节果然所有人都放假了,想找吃的都不容易。于是我继续往前开,大家在车上上网搜索有什么好吃的,最后决定去 Santa Barbara 的 State Street,看看那条街上哪家开门有好吃的就吃哪家。

Untitled

开到 Santa Barbara 时已经下午 1 点了,在纠结了一段时间后终于选择在 Santa Barbara Brewing Company 坐下来吃 brunch。有朋友选择了 beer sample tasting,我因为要继续开车所以就不尝了,只是闻了一下不同酒的不同香味有什么区别而已。吃完 brunch 就 2 点了,继续赶路。由于 US–101 不靠海,所以我们想尽快开到 CA–1 和 US–101 分离并且靠海的路段看海。

快到海边时,我们找了个尚且营业的 Starbucks 买咖啡上洗手间,然后换人接着开。我第一次长时间坐这辆 GMC Acadia 的后排,发现跟坐飞机经济舱一样累。等我们赶到海边之后,发现很快就要日落了,之后要在 CA–1 上开夜路,于是决定只在海边拍日落,然后返回 US–101 继续开。

Untitled

UntitledUntitledUntitled

最后该来的风雨还是来了,走在 US–101 上一直在下雨,顺便也把我们这俩脏脏的车冲刷干净了。回到湾区吃了个饭,就各自回家了。唯一的小意外就是我们想提前还车但发现租车给我们的那一家 Enterprise 停车场锁门了。看来圣诞节真的该避免跟任何商业打交道。最后我们跑去附近酒店的另一家 Enterprise 还车了,幸好没有收我们额外的异地还车费用。

小结

旅行费用人均 $400,个人的露营用品投资则是额外的 $350,感觉还是挺划算的,比去一趟 Las Vegas 要省钱。很开心的是这次露营做了很多过去没做过的事情,包括在野外搭帐篷睡睡袋(上一次睡睡袋是北京暴雨那晚的豌豆荚 Hack Day),包括清晨起来看星星和看日出,还包括开车走碎石路走雪地。同时,因为是跟一班有 camping 经验的朋友一起去,所以要烦恼的问题少很多,旅途也不算辛苦。

如果大家有兴趣参考我们的路线的话,可以看这份 Google Maps 路线图。这是我第一次去露营,不知道什么时候才会有下一次,只能期待下一次的长周末了。

Death Valley 四日露营 (Part 1)

之前一直没想好圣诞节的 4 天假期做什么好,曾经想过要去 Las Vegas 不过后来看看往返机票要 $400 又放弃了。后来有 3 个朋友说不如去 Death Valley 吧,就决定参与讨论。因为我从来没去过 camping,所以不知道会不会很辛苦,也不知道该担心些什么。在帐篷和睡袋里睡两三个晚上会不会很不舒服?很可能没有机会洗澡哦?Death Valley 的生存环境是不是真的很糟糕?我统统都不知道,只好翻开 Lonely Planet 看看。朋友说我们去的是 car camping 而非 backpacking,所以要什么就带上车好了,不会缺乏物资,不需要负重步行,所以不会很辛苦的。于是我就决定参与一下,挑战一下自己的 comfort zone。(既然都跑来美国了,当然要去做一些自己原本不太愿意做的事情。)

由于朋友比较有 camping 经验,所以公共的帐篷和炊具由他们负责,我只要考虑自己的需求。我在 REI 买了一个 10°F(差不多 –12°C)的睡袋,意思是在 10°F 时仍然能够让人舒服睡觉,考虑到 Death Valley 现在还不会低于 0°C,感觉足够了。然后我还买了自充气的床垫和枕头,还有野外用的杯子和碗碟,总共投资约 $350。(其实我还想买一双 $130 的鞋用于 hiking 的,不过店里有的唯一一双有点问题,决定下次去 hiking 前再买。)

12/21

星期五下班后先吃饭,然后把租来的 GMC Acadia 开上 I–5 往南。我们大概花了 4 个小时抵达 Bakersfield,在 Hilton 住下来后已经是凌晨一点了。

12/22

Untitled

UntitledUntitledUntitledUntitledUntitledUntitled

由于有朋友建议去看 Isabella Lake,所以我们没有走好走的 CA–58 和 CA–14,而选择了走 CA–178 穿越山谷。其实这段路比较难开,要上山后走一段高原再下山,不过我们就是为求风景好而选择这样走。随后我们走 CA–395 和 CA–190 进入 Death Valley 国家公园(免不了在入口处拍照留念),经过老的区域中心 Stovepipe Wells,最后抵达新的区域中心 Furnace Creek。

Untitled

UntitledUntitledUntitledUntitledUntitledUntitledUntitledUntitled

在 Furnace Creek 注册好 campsite 后,已经差不多到日落时间了。我们想要上山顶看日落,可惜已经来不及了,在附近转了一下就开始生火搭帐篷了。由于我们带了小罐的液化石油气,晚餐就不依赖于柴火了,炉打着就开始煮水准备打火锅。有 4 个人的好处就是,可以分成两组同时搭帐篷和煮面。天黑了就用头灯,看清楚自己面前要操作的工具还是不成问题的。

Untitled

我们的晚餐吃了好几个小时。由于第一次再 Death Valley 野外过夜,我也不知道要穿多少衣服合适,所以衣服一件一件地往上加,最后连羽绒服都穿上了还是觉得手脚有点冷,只好靠着烧柴来取暖。最后实在受不了了,我只好选择睡觉去,因为睡袋是我最保暖的装备。事实证明,我的睡袋确实是超级暖,整个晚上都没有感觉到冷的。睡袋的空间还可以,不会觉得特别挤,就是原地转身有点麻烦。

12/23

尽管前一天由于没看成日落而说好要 5:30 起床开车上 Dantes View 看日出的,但没有一个人能在日出前起来,所有闹钟都在响过后被按灭了。早上 9:00 起来,烧水冲热可可,还有人要做越南手冲咖啡,结果吃完早餐出发就已经没掉小半天了。

正式的景点观光由 Mesquite Flat Sand Dunes 开始。所谓 Sand Dunes 就真的是起起伏伏的沙丘,除此之外没什么非常特别的地方,估计要长时间观察沙丘随风移动才有意义。接下来为了准备进入 The Racetrack 而必须做一件十分重要的事情,那就是加满油。

Untitled

UntitledUntitled

实际上 The Racetrack 离 Stovepipe Well 的直线距离不远,连 30 mi 都不到,不过由于中间隔着山脉,所以必须走到山脉的尽头再绕回来,结果要走差不多 75 mi,中间还包括 25 mi 碎石路。我来 Death Valley 的首要动机是开一段碎石路,而且是要拿租来上足保险的车开(当然不能拿自己的新车做这种事情),所以在完全不知道 The Racetrack 有什么看的情况下我也觉得很兴奋。

Untitled

朋友把前面 50 mi 的平原大直路开完后,就把车交给我开碎石路。我觉得这挺好玩的,道路弯弯区区的必须控制好速度,还要注意躲开路上的大石头,完全不像走 I–5 那样无聊得受不了(虽然我自己没开过 I–5,但别人开 I–5 时我总想睡觉)。由于碎石路不够两车道宽,所以遇到反方向有车来就要把车开上右侧斜着的路肩上避让。路上遇到的司机素质都很好,反方向车如果他那一侧有 turnout 则会停在那里让我们先过,避免双方都要侧着车走上路肩;同方向车如果觉得自己开得不够快,就会在下一个 turnout 靠边让我们超车。

尽管碎石路只有 25 mi,但我开了一个小时才走完,在高原大直路上一个小时都能走完 50 mi 了。到了 The Racetrack 后,看了景点介绍我才知道名字的来由。这是一个已经被蒸干的湖泊,现在就只剩下龟裂的湖底和中央的小岛了。之所以叫做 racetrack,是因为湖底上有一些像是在「竞速」的石头——没有人知道这些石头到底有没有动过,也没有人知道是什么让它们动起来,但石头后面的总会有长长的划痕让人感觉石头是动过的。

Untitled

Untitled

UntitledUntitledUntitled

从 The Racetrack 返回全程都是我开的,中间路过了 Ubehebe Crater 并且下车拍了几张照。开头以为这么大一个坑肯定是陨石坑,结果看了景点介绍才知道是火山坑。简单来说,如果把水迅速混入岩浆的话,水就会立即变成蒸汽并且膨胀,然后爆炸就会导致大坑。虽然有小路能够走到大坑中间凹下去的底部,并且走下去也不难,不过考虑到走回来会很吃力所以我们还是没有走下去。

Untitled

由于我们错过了日出,自然想去看日落。尽管我已经尽量开快一点,不过还是不可能在日落之前赶到 Dantes View,只能开到 Zabriskie Point 看看。由于太阳大半都被山挡住了,我的 iPhone 5 也拍不出什么来,只好不拍。

晚上回 campsite,发现新买的柴点不着,幸好隔壁的人拿过来一些他们劈好的柴给我们烧。我们怀疑这次买到的柴都是湿的,因为烤了一个晚上都没点着。晚餐还是一样的晚餐,唯一不同的是找到了可以用柴来烧烤的食物——香肠,于是我们就玩了一会儿明火烤香肠。

Untitled

Untitled

睡觉之前我们还看了一会儿星星,有朋友很专业地教大家认星座,尽管我认了也记不住,不过还是觉得很好看,同时也意识到其实月亮真的是很亮的!可能因为几乎没有人造光源(除了背后将要灭掉的柴火),所以能够看到月光照在树上投射到地上的影子。不是在野外的话,估计不会注意到这一点,因为人造光源投射出来的影子够多了。

后两天的行程请看 Part 2

2012年11月3日星期六

面试体验:Facebook 篇

GoogleMicrosoftYahoo 都是去年的事情了,接下来说说今年的吧。其实我在豌豆荚非常爽,跟身边的设计师和工程师合作都很愉快,所以唯一能够诱惑我去面试的就只有 Facebook 了。最初接受 Facebook 面试邀请的原因并不是追求它的 offer,而是我就想了解一下 Facebook 是怎么面试的,有什么是值得豌豆荚招聘借鉴的。

过去在百度做面试官,只是面试而已,公司招不招得到人我没什么感觉。我觉得公司招不到人就招不到人咯,我们没必要扩张得那么快啊,先专注于做好手头上的项目再说嘛。豌豆荚其实不是着急要招前端工程师,我们还是坚持只招一流人才,只不过长期发不出 offer 还是让人感觉招聘有问题——我们浪费了大量的资源在面试上,发不出 offer 意味着回报率低,因此我们总要想办法研究如何提高回报率。

回到正题上来,我选择参加 Facebook 的面试,就是想看看他们是如何选拔人才的,他们所使用的题目是如何设计考点的,是不是设计得比我们的要好。因此,在收到 Facebook HR 的邮件后,我回信说愿意聊一下,然后跟他约了一个时间进行电话沟通。因为 Facebook 总部在美国西岸,所以之后的电话沟通和电话面试都约在了早上 8:00。尽管这导致他们要晚一个小时下班(按朝九晚五算的话),不过 HR 也很通情达理地接受了。(我猜大多数工程师都不会采用朝九晚五的正常作息时间吧。)

HR 在电话里先简单介绍了一下 Facebook 现在的情况,然后说明这是 Menlo Park 总部的职位,让我确认如果顺利应聘的话我会愿意到美国去。接着 HR 问了我两个很基础的 CSS 问题:display block 和 inline 有什么区别?position 有哪些取值?我觉得 HR 能够问这样的问题对于工程师来说是很爽的事情,因为纯粹的小白就被过滤掉了,也不需要浪费工程师的时间来面试。(我在之前的文章中说到过,在中国大多数面试前端工程师职位的候选人无法回答这两个如此基础的问题,不知道在美国是否也如此。)随后 HR 问我还有没有什么不明白的,或者关于 Facebook 想要了解的,我说没有了。HR 的最后一个问题是「你为什么选择 Facebook?」我当时心里想的是,「是你主动联系我的,我没想过这个问题哦」。于是我跟他说,「我暂时没有答案。我现在在豌豆荚工作很开心,不过我也乐意多地了解 Facebook。」

电话沟通后,HR 给我发了两道 puzzle,选做其中一道就可以了。两道题目都是前端相关的,其中一道需要设计一个简单的算法,另一道则需要支持移动设备触击交互。这种解 puzzle 的面试方法我不是第一次遇到了,4 年前申请 Google 的 Web Developer 职位时也遇到过类似的 exercise,只不过题目只有一道,没有选择的余地而已。相比起 4 年前 Google 的 exercise 而言,这两道 puzzle 的考点更加 update。(4 年前的 exercise 还需要考你如何做圆角和背景渐变,现在都是用 CSS 3 搞掂的了。)

我花了一周的时间完成了一个 puzzle,搞掂了算法设计和界面实现,连 unit test 也都写了,然后提交给 HR。HR 在 review 的结果出来后,把我介绍给另一位 HR,说她会帮我安排接下来的面试。第一轮面试感觉有点像 Google 的,主要由 3 道题目构成。题目的考点设计得很好,基础知识能被覆盖到,常用技法也需要用到,但又绝对不需要某一方面很高深的知识。(设计得不好的题目往往是依赖于面试官很熟悉的一个难点,如果你不知道这个难点,或者你的理解跟面试官不一样,你就完蛋了。)

第一轮面试的最终通话时间为 90 分钟,我猜这意味着我做得不够好,因为如果以 Google 的标准来衡量的话,45 分钟解 3 道题才算及格。经过后面几轮面试我才发现,原来 Facebook 面试一般是要求 60 分钟解 2 道题。第一轮的面试官之所以给我加了 1 道题,估计是因为第 2 道题我做得不好,所以他相当于换了一道题给我做。面试结束,面试官又问了之前 HR 问过的问题,「你为什么选择 Facebook?」我还是那样子回答。

面试一个星期后,HR 邮件跟我说,我通过了上一轮面试,接着要安排下一轮面试。第二轮面试感觉跟第一轮差不多,包括长度和难度。只不过这次就是 60 分钟 2 道题,估计是因为我 2 道题都解出来了吧。面试结束时面试官又问那个问题了,我决定反过来问他是否喜欢 Facebook 的工作。他说 Facebook 的工作很好,周围的人都很聪明,能够从他们身上学到东西,同时公司提供一天三餐,福利好到觉得自己被宠坏了。我其实不是很在乎福利的部分(豌豆荚又不是没有一日三餐),我更在乎的是人是否聪明,合作的过程中他们是否总能教会你一些你过去不知道的事情(这是我现在在豌豆荚拥有但离开就可能失去的部分)。随后我跟他说,我在乎的是能否跟聪明人一起工作,听他这样说感觉 Facebook 不错。

又过了一个星期,HR 邮件跟我说,需要安排我到美国面试。我一开始对这件事也不特别在意,觉得那你就慢慢安排吧,有人报销机票让我到湾区旅行就是好事情。在随后的电话沟通里面 HR 跟我说,因为今年的 H–1B 签证配额已经花出去一半了,如果按照这个速度估算的话可能到 5 月底签证配额就会花完,所以希望我尽快到美国面试。(如果签证配额花完了,有没有 offer 都没意义了。明年 4 月才能申请明年的配额,申请成功也要等明年 10 月签证才生效,就算公司很想要你,也只能先安排你在海外办公室工作一年。)于是我就连忙办签证 5 月下旬飞往美国参加面试,因此也就有了我之前那篇《三藩市湾区一周游》。

4 轮面试安排在一天内完成,Facebook 委托旅行社安排好往返机票和两晚住宿,随后我就出发了。因为害怕迟到,又因为美国郊区的公交又是一小时一班的,所以面试当天我早早就起床了,结果发现酒店门口是长期有出租车的,打车到 Facebook 后等了一个多小时才到原本约定的面试时间。HR 在见到我后先把我带到 micro-kitchen 让我拿吃的喝的,并且问我那么早来是不是没有吃早餐。我说确实没有,然后她就让我拿一些食品做早餐。(其实我应该在酒店叫早餐的,因为 Facebook 允许每天报销最多 $75 的餐饮开支。)随后她把我带到用作面试的会议室,给时间我解决早餐,并且跟我简单说明了当天的安排:早上 2 轮面试,结束后她会来带我去 Facebook 餐厅吃饭,然后下午还有 2 轮面试。

总体上来说,4 轮面试的形式还是一样的,每轮都是 60 分钟解 2 道题目。所有题目都是前端相关的,HTML + CSS + JS 都会考到,不过不涉及 HTTP。最后一轮的面试官有点特别,他先问了一个很古怪的 CSS 问题,然后又跟我讨论了一个跟前端不相关的编程问题。之所以说他那个 CSS 问题古怪,是因为在现实中大家都不会那样写 CSS,但他写出来了问你会显示成怎样,不是非常熟悉 CSS 标准细节的人又很难完全答对(我也有答错了的地方)。至于第二道题,他说他是突发性想出来的,他自己也不知道最优解是什么,就是想跟我讨论一下能够如何优化,我就跟他讨论了几种可能的优化方式。所有他又说如果把常数 k 改为可以变成任意大的 n 怎么办?我就说 n 的问题能够分解为 n/2 的问题,因此能够通过二分法来优化。

通常情况下,如果由于面试而进入一家公司的话,HR 所做的只是把你从 A 地带到 B 地,保证你顺利完成面试。如果是朋友带你参观公司则会很不一样,他会带你去看有特色的东西,并且告诉你这个好玩那个有意思。Facebook 的 HR 给人的感觉更像是后者,她向我介绍 Facebook 墙上的涂鸦,带我去天桥上看 Hacker Square 全貌,并且告诉我每次 hackathon 开始时大家就会聚集到 Hacker Square 上来。除了 HR 以外,也有一些面试官会提及他们喜欢的 Facebook 特色。这让我觉得 Facebook 里面还是有不少员工挺喜欢这家公司的。

面试结束后,HR 跟我聊了一下,告诉我如果有 offer 的话接下来会需要什么。根据之前 Google 面试的经验,我猜 Facebook 会不会也要我提交一大堆的材料,HR 说只要提交申请签证所需的学位证就可以了。之后 HR 让前台帮我叫出租车,在等待的过程中前台还很好人地问我是否需要拿喝的,需要的话可以在大堂冰柜里面拿。

随后的周末是美国的亡兵纪念日,周六到周一连续放假三天,我则利用这个长周末去参加湾区的各种好友聚会。周一中午 HR 打电话来说要发 offer 了,待细节确定后下午再打电话给我告诉我具体的数字有多少。我当时就在想,难道 Facebook 的面试官和 HR 周末都工作?这个效率很高呀。只要面试官稍微拖一下,周五的面试就必须等到下周才能有结果。而且确定 offer 细节估计也要经过几个人审批吧,节假日发 offer 就意味着大家都要在节假日处理工作了。

总体上来说,Facebook 面试过程中对候选人的关怀做得很好,效率也不错。让我「大开眼界」的是面试题,原来真正好的面试题并不在于它有多难,而在于它有多简单,简单到熟悉这个领域的人一下子就明白到你在说什么以及想问什么。能够进入 Facebook 的人应该都觉得面试不难,至少跟中国的面试对比起来如此,那是因为 Facebook 把觉得面试有点难的人都过滤掉了,而中国那些很难的面试反而没什么区分度。

《面试体验》系列文章到此就结束了。接下来有时间的话或许我会写写跟应聘美国职位有关的事情,例如 H–1B 的周期和配额是怎么样的,选择什么时间面试对你比较有利,拿到 offer 之后该如何为新的生活做准备等等。我知道对于很多在中国读书或工作的人来说,直接应聘美国职位看起来门槛很高,那是因为你身边很少人这样做所以你不了解而已。只要你愿意花时间去了解清楚,你会发现这件事其实没有你想象中那么难。如果你对这个话题感兴趣的话,可以订阅我的博客,或者留言提问。


2012年8月18日星期六

孩子王?有孩子气才能为王?

以最快的速度看完了 Facebook 第 51 号员工的回忆录《The Boy Kings》。尽管是关于 Facebook 成长的故事,说的却不是跟技术或者投资相关的事情,这是因为作者 Katherine Losse 并不是一名工程师,而是一位英文硕士。她最初加入 Facebook 时是一位客服,后来负责过 Facebook 的国际化工作,最后成为 Mark Zuckerberg 的代笔写手,估计是离 Mark Zuckerberg 最近的非高管了。这种经历使得作者陈述故事的角度如此的与众不同,让读者也必须跟着反思「难道高科技公司就必须做得如此孩子气才能成功?」

作者最初加入 Facebook 时,就感觉到了工程师与非工程师地位悬殊。Zuck 的衷心欢迎是留给工程师的,客服根本不在 Zuck 的视线范围内。作者最要好的两位朋友分别是黑客 Thrax 和工程师 Sam,然而在作者任职客服期间,她的薪水和她的好友相距甚远,以至于每当工程师们自发组织出去享乐的时候,她总要想一想是否值得为了参加活动而节衣缩食几个月。

有一次 Thrax 和 Sam 去参加 Defcon(世界上最大的黑客大会),把作者也叫上了。因为 Thrax 是明星黑客,是这次行程的主角,所以他能报销各种开支。Thrax 入住酒店后的第一个想法是要在拉斯维加斯最贵的餐厅预定晚餐。Thrax 的第二个想法是,为晚餐买一身与之匹配的新衣服。作者说,「我们去 Marc Jacobs 看看吧」,Thrax 的第一反应是「那是谁?」作者忍住没笑出来,解释说「他的东西比较 cool,有点点 mod,你会喜欢的」,然后心想「估计他也不懂『mod』是什么意思」。在随后晚餐上,Thrax 穿着作者花了两个小时为他挑选的 Lacoste 衬衫,开了一瓶 $175 的红酒,三个人当中就只有他还不到合法喝酒的年龄。

Thrax 是明星黑客,同时也是个小孩子。跟大多数黑客一样,Thrax 是清晨睡觉下午起床的,于是在 Thrax 睡觉时作者就跟 Sam 找了个泳池晒太阳(他们总是耻笑其它不怎么出门的工程师「脸色苍白」)。等 Thrax 要作者帮他挑选衣服时,他就提出说「既然你们晒太阳时丢下我,这次买衣服能否反过来把 Sam 丢下?」尽管 Thrax 如同小孩子一样,希望有一段时间能够获得别人 100% 的注意力,但作者和 Sam 决定无视他这个请求。

作者对 Thrax 的看法,很多时候也是她对黑客文化的看法。一群黑客就如同一群孩子,收入不低却不懂世俗,而且还时不时耍孩子气。然而正是这样一群人,创造了 Facebook 这样的王国,于是有了标题中的「boy kings」,而 Zuck 当然就是「king of the kings」啦。

后来由于客服职位的发展空间有限,作者想要离开 Facebook。正好在这个时候 Facebook 发布了自己的开发平台,平台的市场推广需要人手,于是作者就加入了这个新组建的团队。Thrax 在知道这件事后跟作者说,「所以你现在能搬到工程师所在的楼层来咯?真无耻。」「你才无耻。」「反正没有人喜欢你,所以……」互相挑衅显然也是作者眼中孩子气的一部分。在平台市场推广短暂停留后,作者又被邀请去做 Facebook 的国际化工作。作为英文硕士,她喜欢语言和旅行,自然她选择了接受新的工作。

作者的新头衔是「国际化产品经理」,这意味着她终于成为工程部门的一员,也有了对产品的话事权。这时候作者才亲身体验到了工程师的生活方式:你可以工作到很晚,有时候也必须工作到很晚,因为这就是黑客特立独行的特质。你无需听命于权威,可以连夜编写突破性的天才产品(或者是在 Facebook 上挑衅别人)。同时作者也见识到了某些工程师对机械过程的迷信:Facebook 众包给用户翻译的词条偶尔会遇到多个翻译版本难以取舍的情况,某些工程师就坚信用户投票经算法计算得出来的结果一定是正确的。这时候作者就会站在这些工程师的对立面,坚持翻译结果必须经过人手审阅。

这种技术和人性之间的竞争一直没有停止过。工程师总想要把这个世界变得更加技术化,因为这才符合他们的理想。而作者作为一名女性,同时又是英文硕士,则希望更人性化一些。

作者的下一份工作是 Zuck 的代笔写手,专门负责用 Zuck 的口吻写博客。越是接近 Zuck,作者越觉得自己在公司里是个异教徒。为了工作需要,她可以用 Zuck 的思维方法进行思考和写作,但这也使得她更在意自己独立思考的能力,最终的结果就是她发现自己的想法跟 Facebook 的理想不一致。这是一家相信通过技术能够解决所有问题并且以以此为荣的公司,但作者却认为技术和人性只是解决问题的不同手段而已,没有优劣之分。公司想要通过技术手段解决一切问题,但这不是她想要的未来。

最后,作者选择了离开 Facebook,并且移居到一个无线网络慢到可以用「与世隔绝」来形容的地方来写这本书。在这本书里面,除了可以看到 Facebook 早期的一些趣事,还能看到技术质疑者眼中的技术革命是怎么样的。利用技术革命改变世界的人自然无条件地信仰技术,然而这一切并非如此无懈可击,换一个视角还是又很多地方值得质疑的。此外,尽管黑客拥有改变世界的能力,但他们那种希望永远年轻、不负责任、不受监管、无可阻挡的文化,在外人看来也有很可笑的一面。如果你正在做技术,并且你也坚信自己做的事情是无比正确的,那么你可以看一下这本书,怀疑一下自己的世界观。

2012年8月6日星期一

面试体验:Yahoo 篇

前面两篇文章提到了 GoogleMicrosoft 的面试体验,可惜都没有 offer,接下来说说有 offer 的。

考虑到我已经在 Google 和 Microsoft 的招聘流程当中了,于是我也让 Yahoo 的同学帮我内部推荐一下,试试 Yahoo 的面试如何。本来没想着很正经地面,不过最后拿到了 offer,所以才有了我之前那篇文章所说的「越是放松越能成功」。

Yahoo 一开始并没有什么 HR 沟通和预约,某一天我从百度下班回家正准备做饭就接到面试官电话。我开头以为他想要跟我约时间,结果他问我是否方便进行面试。我当时毫无准备不是很想面试,不过既然室友可以做饭那面试一下也没什么所谓。Yahoo 的面试不像 Google 那样有很明确的规范,所以每一轮的面试官喜欢怎么面试就怎么面试。第一轮的面试官问了很多很基础的问题,每一道题考一个基本的知识点,例如某个 CSS 属性的取值,或者是 HTTP 的状态码。这些问题基本上不需要任何的解题能力,知道就知道,不知道也没办法。前端的基础知识我都知道,所以这对我来说没什么难度,只是感觉自己被人当 wiki 来查而已。

Yahoo 的面试让我感到舒服的一个原因是,它有前端工程师职位,所以不需要强行用后端工程师的标准来衡量我。在通过第一轮电话面试后,HR 终于出现了,跟我约了一个下午的面试时间。我问她要具体的时间安排,跟 Google 和 Microsoft 不一样的是,她说没有具体的面试安排,预计我的面试需要占用整个下午,所以请我预留整个下午的时间。这是让我感觉安排不够严谨的地方,后来才知道因为有多个不同的团队想要面试我,所以从一开始就给我安排了更多轮的面试,让不同团队的人都有机会来面试我。

我在 Yahoo 办公室一个下午的面试见了 4 位工程师,其中包括 1 位经理。因为 Yahoo 的经理也跟大家一起写代码,所以我也把他算作工程师。每一位面试官面试的风格都不一样,不过都涉及写代码解题。最后经理进来的时候给我带来了一罐 Diet Coke,除了让我写代码外,他还让我打开现有 Yahoo 产品的页面查看源代码代码,然后问我有哪些地方做得不够好以及如何能够改进。

在面试的过程中,我很明确地向经理表示我希望能加入一个多元化的团队,跟来自不同国家不同背景的人合作,最好有机会到美国出差工作一段时间。经理表示,既然我想要跟美国团队合作,他可以额外安排美国的同事跟我面试一下。我的理解是,到这里我就相当于已经有了口头 offer,不过有机会跟美国同事聊一下那就聊一下咯。

因为对方在 Miami,中国的上班时间正好是他的下班时间,所以面试只能约在中国上班的前一个小时。我早上 8:50 到 Yahoo 办公室后,不仅仅 HR 还没到,连前台都还没上班。9:00 前台上班,过了一会儿 HR 才来把我带到视频会议室。在 IT 帮忙调试半个小时后,确认视频用不了,只好降级为电话会议。Miami 那边的同事很认真地把问题分作 HTML、CSS 和 JavaScript 三部分来问,半个小时自然聊不完,但他的下班时间到了,只好跟 HR 说明天继续。结果第二天还是同样时间去 Yahoo 办公室通过电话会议聊了一个小时。

由于 Yahoo 知道我在等 Google 的结果,所以 HR 在电话口述 offer 给我听后,告诉我 offer 的邮件先不会发出来,因为发出来我就必须在指定的天数内接受,否则系统就会自动取消 offer。我觉得这还是挺人性化的。Yahoo 的面试安排规范化程度看起来没有 Google 和 Microsoft 那么高,随意性比较大。当然,这样做的好处是灵活性也大一些,经理和 HR 可以按照自己的需要做一些特殊安排。

《面试体验》系列文章就只剩下 Facebook 那一篇了,我承诺我一定会把它完成,但可能要经过一段时间后我才会把它发表出来,所以建议大家订阅我的博客,或者是在 Twitter 上 follow @CatChen。此外,我的博客也接受捐赠,通过信用卡支付,金额随意($1 起)。

最后是广告一则:如果有任何曾经参加过豌豆荚(豌豆实验室)面试的人愿意写类似的面试体验文章,欢迎联系我并把文章地址发给我,我愿意在我的博客上以链接的形式进行分享。

更新:Facebook 篇》已发布。


2012年8月4日星期六

面试体验:Microsoft 篇

在上一篇《面试体验:Google 篇》中说到,我对猎头的标准回复是「有美国或者香港的职位吗?」在进入 Google 招聘流程后,Microsoft 有一位 HR 打电话来跟我说有一个北京的职位跟美国总部会有密切的合作,问我有没有兴趣。我当时想的是,如果加入美国公司的中国分公司,或许将来有机会 relocate 到美国去,至少会有去总部出差的机会吧,所以就决定去试试。

HR 在联系我之后,招聘经理 Alex 直接联系我跟我约了晚餐时间。晚餐其实不是什么面试,只是互相了解一下。Alex 原本在 Microsoft 总部工作,只是碰巧他来北京轮岗 3 个月,有候选人申请职位他自然也乐意见见面。至于这个跟美国密切合作的项目,总监和一半的成员在美国,中国这边已经有几个人但还要多招几个。

Alex 在晚餐中教会我一件最重要的事情是:什么叫做 「commodify 工程师」。所谓的「commodity」是指无差别的一般等价物,例如按桶算的原油就是这样子,无论中东产的还是中国产的都一样。在说原油价格一桶多少钱时,我们并不会关注到底是哪里产的,因为价格差不多,使用起来也没有区别。因此「comodify 工程师」就是把工程师当做一般等价物看,无视其人性和个性,把工程师看做无差别的人力资源单位,哪个项目缺多少人力资源单位,就为它补充多少人力资源单位。他帮助我意识到我不满的百度现状是什么,同时也支持我要换一家公司并找机会到美国工作的想法。

之后 Alex 帮我约了一轮电话面试,面试官是印度人。他问了我两道问题,一道比较简单写代码就能解决的,另一道则是分布式系统设计相关的,我全无经验只能说说我知道的概念。我感觉后面这一道题回答得不是很好,因为总是没办法说到点上,同时也不像算法题面试官给些提示就能向前推进。事后证明这一轮面试的反馈确实不是很好。

随后 Alex 又约了我到 Microsoft 办公室进行一天的面试。早上到了之后他先让我参加了当天的 daily scrum,让我知道他们是如何工作的。接着是跟美国的总监通过电话会议进行面试,没有讨论技术问题,更多的是互相了解对方的工作方式,看看双方是否合适。接下来是跟北京这边的经理面试,因为团队在北京没有专门的经理,所以人事方面的事情就交由北京的经理负责。看到经理 Norman 的姓后,我就知道他是说粤语的,同时因为他一开始就说自己普通话不是很好,所以我就提议说不如我们说粤语吧,于是我就在 Microsoft 一天面试当中用到了英语、粤语和国语。Norman 问了基础的算法题和逻辑题,也聊了一下分布式存储的设计,同样我对后者回答不上什么点来。感觉 Norman 的题目很重视逻辑思维,在我说某一道基础算法题不能用贪心算法后,他问我使用贪心算法的充要条件是什么,同时另外一道逻辑题考的也是是否清楚充要条件是什么。

在 Norman 面试之后,他叫上 Alex 跟我一起去午餐,然后下午我跟中国这边的团队成员聊聊天了解一下他们的工作内容就完事了。整个过程并不是很难,也不会像 Google 那样专门考算法。感觉 Microsoft 更重视逻辑多一些,同时跟美国团队进行面试也确实比跟中国团队进行的面试要让人更舒服一些。(Alex 和 Norman 分别是在 Microsoft 总部和湾区工作多年的人,所以面试风格应该都还是很美国的。)我下午离开的时候,口头 offer 算是出来了,HR 在电话中说很高兴招到了人,并让我提交当前的薪酬信息。

由于快到过年了,提交薪酬信息的事情我一拖就拖了两个星期,过年回来后才提交。事后 HR 跟我说,进行第一轮面试的印度人对我不熟悉后端这一点表示有顾虑,其它人尝试说服他但是没有成功,所以 offer 出不来了。于是这个到手的口头 offer 就飞走了。

事实上,我在 Microsoft 的面试经历到此只不过是进行了 1/3,不过后面的我就不想详细说了。在我过年回广州放假的时候,有一位 Microsoft 的 HR 打电话给我问我面试时间安排的事情,我说面试不是结束了吗,然后才发现这是另外一个团队的 HR,并且她不知道我之前的面试,于是我又面试了一个不同的团队。因为前面所说的口头 offer 最终发不出来,Norman 把我推荐了给另外一位经理,那位经理又约了我进行了几轮面试。

总的来说,我在 Microsoft 的面试经历就是不停地被加试。加试意味着还不能确定,但又还不想放弃。不确定的原因自然是我没有后端经验,不放弃的原因估计是算法题和逻辑题我回答得还可以。最终我在 Microsoft 的 3 个团队中面试了 15 位工程师和 2 位 HR,还是拿不到 offer。Microsoft 的面试过程尽管没有 Google 那么体贴,但是安排还是挺专业的。因为 Microsoft 是各个招聘经理自己去招人,不像 Google 那样公司统一招聘,所以推动招聘进度的更多是招聘经理而非 HR,候选人也能直接感受到招聘经理到底有多在乎自己。

在整个 Microsoft 面试过程中,我觉得最有收获的是认识了 Alex 并且跟他聊了一些事情。我说如果有机会的话我想要体验一下在美国工作生活是什么样子的,然后才能知道我想要到哪里去。他帮我分析说去美国有 3 种途径:读书然后在美国找工作、加入美国公司的中国分公司后再找机会 relocate、直接加入美国公司,其中第一种方法最容易,第三种方法最难。他的首选建议是第一种方法,不过因为我短期内没有去美国读书的计划,所以第二种方法也不错。我觉得作为 mentor 最重要的是他要真的在乎你的个人发展,同时能够利用他的经验帮助你,因此我觉得 Alex 会是个很好的 mentor。在我加入豌豆荚后,他还联系过我,说 Microsoft 总部他所在的团队有职位开放,问我是否感兴趣。因为我当时刚刚加入豌豆荚,所以就拒绝了。

如果你对《面试体验》系列文章感兴趣,欢迎订阅我的博客,或者是在 Twitter 上 follow @CatChen。我承诺我接下来一定会完成 Yahoo 和 Facebook 相关的两篇文章。此外,我的博客也接受捐赠,通过信用卡支付,金额随意($1 起)。

最后是广告一则:如果有任何曾经参加过豌豆荚(豌豆实验室)面试的人愿意写类似的面试体验文章,欢迎联系我并把文章地址发给我,我愿意在我的博客上以链接的形式进行分享。

更新:Yahoo 篇》和《Facebook 篇》已发布。


2012年8月3日星期五

面试体验:Google 篇

尝试在自己的博客上搜索点东西,结果发现 4 年多以前还在博客上写过一系列的 recruiting events,把大四时候参加过的各种笔试面试都记录下来了。我从去年准备离开百度开始,到现在总过面试过 4 家公司:Google、Microsoft、Yahoo、Facebook,原本去年也想把面试经验写一写的,结果一拖就拖到现在。我不想写面试经验,因为我个人不喜欢漏题和背题的做法。我自己作为面试官,知道要设计出来一道好用的题目有多难,所以我希望面试者都是如实表现自己解题能力的。我更喜欢写面试体验,就是在整个面试过程中一家公司给人的印象是怎样的,HR 和面试官是否专业,能否让人信服这是一家值得长期工作的公司。

我想写的第一家公司是 Google,因为它是我在想要离开百度时第一家联系到我的公司。2010 年 12 月底的某一天早上,我突然感觉到我应该离开百度,因为如果这个时候已经没有勇气离开这家公司了,很可能就不会再想要离开了。当天中午在百度大厦西餐厅吃午饭,接到一个 Google 上海 HR 的电话,问我有没有兴趣去面试,我想既然你打电话来的时机那么好,我就答应你去面试吧。(在那一天之前,我对猎头的标准回复是「有美国或者香港的职位吗?」)她问我将来希望在北京还是上海工作,当时我对北京的厌恶程度还没有现在那么高,同时觉得搬家到上海又比较麻烦,于是就说在北京,接着我就变成跟北京 HR 沟通了。

Google 的 HR 会负责做两件简单得不需要面试官做的事情,这能够很好的提高招聘流程的效率。第一件是确认你能够适应工作环境中的英语,为此 HR 要我用英语跟她对话两三分钟,主要就是让我说说工作经验和其中的亮点。习惯在私企工作的人不要以为外企对英语的要求很高,其实大多数长期在中国工作的人说话或者发邮件都会很 Chinglish 啦,所以关键是要敢于用英语进行沟通。

然后 HR 发了一个 Codility 的地址给我,让我有空抽时间去做题。一个小时 3 道难度相当于 OI 基础题的题目,平均 20 分钟一道。最简单的题目一看就知道是 O(n) 能解决的,最复杂的题目看上去是 O(n^2) 但想一下就能优化为 O(n log n)。对于有算法训练背景的人来说,这样的题目会让人感觉到很有把握。对于没有经受过算法训练的人来说,掉进陷阱里是很容易的。很可能没有把 O(n^2) 优化为 O(n log n),结果超时;可能没仔细看题目说明的数值取值范围,某些变量选错了数值类型,结果溢出。考虑到 Google 重视算法的程度,再加上 Google 中国面试的额外难度,算法训练还是很必要的。

在我通过 Codility 测试后,HR 问我了对题目难度的反馈,然后约了一轮电话面试,并且告知面试主要围绕算法、数据结构、系统设计、编码来进行。Google 面试的格式都很固定,45 分钟内期望你能做出 3 道题来。这 3 道题最起码要能把人人都能想出来的「笨办法」用代码写出来,否则会让面试官感到不满意。如果有些题目能够比较快地做出来,面试官就会让你优化。就算你第一次给出的答案已经是业界已知最优解,面试官都还是会让你优化,因为谁也不知道有没有人能在面试过程中突然爆发,想出一些过去没人想到过的解法。如果面试官心中已有优化的方案,在你想不出优化方案时他可能会给你提供一些提示。

一轮电话面试后,HR 就开始约到 Google 办公室的面试了。第一次约了下午 3 轮面试,还是那个很固定的格式:每轮面试 45 分钟,两轮间隔 15 分钟。整个面试流程让人感觉到很人性化:在 Google 签到后,HR 会先带你去 kitchen 拿点吃的喝的,然后把你带到面试所用的会议室。多轮面试的话,HR 中间还会来问一下你要不要去洗手间,或者多拿两瓶水。面试完毕后 HR 会来问你感觉如何,同时也会让你知道面试官的初步反馈是否跟你的感觉一致。我在 3 轮面试中有一轮感觉不太好,因为面试官只给了 2 道题,并且我最终都没办法解出来,HR 也确认了就是这一轮的反馈不好。

此外,Google 的招聘流程还让人感觉到很有效率。作为面试官,我也知道自己写面试反馈有多喜欢拖延,而且公司填写面试反馈的系统越不人性化我就越想要拖延,然而公司内部系统做得人性化的又实在罕见。Google 的面试基本上隔天就有结果,然后 HR 就会约下一轮的面试。因为我在百度的时候每周哪个时间没有会议是很确定的,所以我总是选择下周同一个时间段来面试。在经过总共 4 轮面试后,HR 说因为前面有一轮的面试官反馈不好,所以希望再加一轮面试。因为前面反馈不好的面试官比较 senior,所以这次找了一位同样 senior 的面试官来面试,于是我又去了一次 Google 办公室。

完成 5 轮面试后,HR 把材料提交给 Google 的北京招聘委员会,结果没有通过。HR 说,因为 Google 都是按照后端工程师的标准来招聘,看重算法和数据结构,前端工程师要通过不容易。因为 Google 没有专门的前端工程师,只有一个软件工程师职位,所以所有人还是必须按照一个标准来衡量。她问我如果找到专门需要前端工程师的团队,并且需要额外再面试的话,我是否感兴趣。当时 Google 是我的第一选择,我当然说感兴趣啦。

后来 HR 跟我说,她帮忙问过 Google Maps,可惜对方说不要专才只要通才。又过了几个星期,HR 发现 IME 需要专门做前端的人,于是帮我再约了一轮面试。这轮面试是在 Google 办公室做的,但实际上是视频会议,因为面试官在美国。(不确定面试官是在美国出差,还是美籍华人。)面试过程跟电话面试类似,用 Google Docs 写代码,比电话面试要好的是说话时能够见到人。

这一轮面试结束后,我的材料再次进入 Google 的北京招聘委员会。HR 说这次专门找了对前端有经验的人来审阅我的材料,结果顺利通过了。接着 HR 问我要了一大堆的补充材料,包括高考成绩和 GPA(连同成绩单),还包括当前薪酬和竞争对手的 offer(我当时有 Yahoo 的 offer),甚至包括过去的获奖和晋升经历。所有这些材料都会发往 Google 美国总部审阅,具体流程 HR 没有细说,但看 Don Dodge 的文章可以了解一些。最后我被 Google 美国总部给拒绝了,然后 HR 还是一如既往地及时沟通,并且安慰了我几句。

整个 Google 招聘流程下来,可以感觉到人性化和高效率,同时也能感觉到 HR 确实在很努力地为候选人争取机会。可以说,无论是否通过,Google 招聘流程至少能给候选人一个很好的印象。据我所知,尽管 Google 声称全球招聘标准一致,但因为中国聪明且懂算法的人实在太多,所以难度更高是很正常的。能够在 Google 中国以外的地区应聘的话,应该会容易一些。

如果你对《面试体验》系列文章感兴趣,欢迎订阅我的博客,或者是在 Twitter 上 follow @CatChen。我承诺我接下来一定会完成 Microsoft、Yahoo 和 Facebook 相关的三篇文章。此外,我的博客也接受捐赠,通过信用卡支付,金额随意($1 起)。

最后是广告一则:如果有任何曾经参加过豌豆荚(豌豆实验室)面试的人愿意写类似的面试体验文章,欢迎联系我并把文章地址发给我,我愿意在我的博客上以链接的形式进行分享。

更新:Microsoft 篇》、《Yahoo 篇》和《Facebook 篇》已发布。


2012年7月28日星期六

华附高中奥班 2012 级经验交流

Benny 在知道我回广州后,跟我预约了 2012 级高中奥班的入学培训时间,让我去分享经验。然后我就开始想,有什么事情是我已经习以为常但高中入学时又特别想要知道的。我把我想到的点都先以大纲的方式写了下来,然后调整了一下顺序,最后使用 iPad 上的 Paper 把我觉得通过图像来表达更有效的信息画出来。

Untitled

开篇第一个问题自然是「我是谁」。

Untitled

我 1998 年进入华附奥班,2004 年毕业离开,随后经历了中大、百度、Yahoo 全球研发中心和豌豆实验室。在华附的时候,高一黑过华附论坛,从此开始做华附论坛管理员,并且创立了华附学生网。高二高三拿过 NOIP 省一等奖,然后保送中大。进入中大后负责成立 Maxcell 东校区分会,到大四的时候由于写博客而获得微软 MVP,随后又多拿了两次。

Untitled

不过,对于华附高三的老师来说,可能我让他们印象深刻的是另外一件事。2004 年华附高考重点上线率为 89%,但升重率为 91%,那就是说有 2% 的人高考没有过终点线,然而又进入了重点大学,我就是其中那 2%。当然,我一个人产生不了 2% 那么大的影响力,只是其中之一而已。

Untitled

接下来进入正题,我想讲的第一个点是「vision」。如果站在 2012 年往前看,你能看到 2018 年吗?有什么是你现在开始努力能在 2018 年获得的?你所在的领域 2018 年会需要什么样的你?

Untitled

我在华附初中时就看到校内的 3 大主流媒体:负责黑板报的华通社,还有广播站和电视台。尽管当时还没有接触到互联网,但我相信计算机能够带来下一个主流媒体,所以没有加入 3 大社团的我一直在寻找建立自己社团的机会。

Untitled

我中学的时候就知道有 MCSE,同期中国也开始评选 MVP。哪一样长远来说更有价值?当然是 MVP,因为 MVP 的数量是有限的。尽管国内有很多机构能够让你不怎么学习也能获得 MCSE,而 MVP 却需要 Microsoft 员工或 MVP 提名,但只要有实力总是有机会的。实力不是短时间能够获得的,但长远来说有实力才是最重要的。

Untitled

讲完「vision」下一个点自然是「opportunities」。你看得到你的目标,但你不知道合适的机会在哪里以及什么时候发生。你需要坚持下去,不断尝试,直到找到合适的机会为止。

Untitled

在我直觉认为第 4 大主流媒体一定会出现的时候,我尝试过用计算机做不同的事情。初中的时候试过用 Word 来做出版物,也是过在图书馆的多媒体阅览室(俗称「网吧」)做过管理员,直到高一黑了华附论坛接过管理员账号,才开始为学校做网站。高二做了华附学生网,实现了建立第 4 大主流媒体的梦想,尽管最终被证明网络在华附里不那么主流,因为那个时候大家不可能有那么多时间使用电脑,智能手机也还没有普及。

我一开始在 Blogger 上写技术博客,但一直没什么人来看。后来我把内容导入到博客园,迅速来了不少读者和高质量的评论,接着 dudu 问我有没有兴趣申请评选 MVP。这也说明了,坚持做同一件事情,也要遇到合适的机会才会成功。

Untitled

我想说的下一个点是「right people」。有正确的人将能够帮助你事半功倍。

Untitled

「知识就是力量」,别人的知识也是你的力量。在奥班读书最大的优势就是你周围的人都足够聪明,他们的知识都能为你所用。这显然包括你的专业知识,例如说一道题一个人要想出多种解法来不容易,但在奥班很容易就能发现不同人有不同的解法。这也包括不显眼的非专业知识,例如奥班因为保送的人多而在这方面积累了足够多的知识,从而帮助你更好地挑选学校,更有策略性地申请学校。

Untitled

从学习效率来说,最高的当然是有老师指导的训练,其次是小组学习,最次是自学。如果能找到正确的老师,他使用恰当的方法来为你提供训练,你的学习效率能够比别人高很多倍。在奥校学习就是一个很实在的例子。

Untitled

500 年前,中等数学还是只有数学家才会花毕生精力去研究的东西,一般人都不会去学,现代教育却确保了人人都能在 20 年之内学会。至于竞赛所需要使用到的高等数学知识,500 年前甚至还没出现,是 17 世纪后期才有的。可见正确的人给你正确的训练有多重要。

Untitled

要选择相信你能成功并且愿意帮助你成功的人在一起。这也是一流公司招聘时常说的话。一流的公司不会说「我们这里缺一个人力资源单位,正好你能胜任,所以你来填充这个位置吧」。他们会说「我们觉得你在我们公司能够获得成功,面试过你的人也愿意跟你合作帮助你成功」。我觉得我在百度时最幸运的就是遇到愿意帮助我成功的人。我想要做什么样的项目,经理会给机会我去了解。我觉得写博客是我的长处,经理给机会我去成立官方博客。

Untitled

最后,有两点是需要特别注意的。一方面,你不能被你的不安全感驱使。精英教育会使得你害怕平庸。你能够把事情做得很好,但是你拒绝把事情做得很一般。最终这也会成为一种无能,就是你不能把事情以一个很低的成本随便处理掉。

Untitled

另一方面,你也不能被你的贪婪驱使。接受精英教育的结果是,你确实能够为自己赚取越来越多的东西,但你总会低估你长远目标所需要的成本,结果一旦精力分散了就可能无法完成长远目标,这真的是得不偿失。

Untitled

最后附上这次演讲所用的幻灯片 PDF 下载地址。这是我第一次完全使用 Paper 来绘制一份幻灯片,所以我希望分享出来让大家看看。其实纯手绘的幻灯片能够做出非超好的效果来,关键还是你要能把想法转变为易于传达信息的画面。