Green Hills Software 实习感受

非常神奇的公司以及非常神奇的实习体验。

Santa Barbara

其实去年 on-site 的时候,SB 就给我留下了深刻的印象。SB 是一个比较典型的美国城市,和我之前待过的所有城市不同,没有遍地的高楼,没有拥挤的街道,而是一面临海,一面靠山。想起那个冬季里的黄昏,我站在久违的微咸的海风里,欣赏着落日余晖。

此次实习,算是与 SB 在夏季的再度重逢。SB 气候相当宜人,甚至比我居住过的一切城市都要好。最初我发现我的住处没有空调时以为自己要死了,但之后发现其实根本用不着空调,一般一天内的最高气温也就二十几摄氏度。另外我在 SB 的这两个多月内,从未见过下雨,连阴天也极为少见。

SB 是个度假胜地,有山有海。SB 的房子通常只有两层,听说是当地政府规定的,也许是为了让海风拂过整个城市吧。

SB 是个小城市,没有宜家,没有 Walmart,机场只有六个登机口,但至少 Weee! 可以配送,商品也足够齐全。

SB 有一条名为 State Street 的街道,算是步行街吧。State Street 两侧开满了各式餐厅以及各种店铺,在周末的晚上分外热闹,有餐馆门口弹奏演唱的歌手,也有在路上玩滑板的孩子,还有在道路两侧露天就餐谈笑的人们。在室外的餐桌旁,立着用于取暖的火焰柱子(就像是封闭的火炬),在夜色中跳动,格外有氛围。

GHS 位于 SB 的 downtown,骑车十几分钟就能到海滩,走路一两分钟就能到 State Street。

公司

GHS 是一家很神奇的公司,不到 300 人,却有 40 年的历史。公司业务主要围绕嵌入式,产品有名为 INTEGREITY 的 RTOS,有 Green Hills Compiler,有名为 MULTI 的 IDE+debugger,有 Green Hills Probe,还有虚拟化平台。GHS 的首个大业务是给 Apple 电脑写编译器,还是带有一些传奇色彩的。GHS 有过许多知名的客户,比如索尼,FBI,波音,西部数据,甚至有核炸弹用了 GHS 的 INTEGRITY 系统。

工作

最初的几周更像是夏令营或者暑校,每天有 morning meeting,讲一下 debug 相关的技巧以及互相分享 bug 有关的故事,然后做 debug puzzles 以锻炼 debug 技巧和熟悉 GHS 的工具链。debug puzzle 就是给你源代码和 bug 列表,让你把列出的那些 bug 都修了。其实这还挺有意思的,尤其是最后一个 SQLite(也是唯一一个两人一组的 puzzle),因为代码亮巨大而颇具挑战性。

之后也算是接触 GHS 的代码仓库了,是巨大的 mono repo,用 svn 管理(由此可见公司历史悠久)。具体工作内容是和 USB 有关的(无法细说),总之比较硬核,但 project 的有趣程度不一。

一些特点:

  • 代码质量高
  • 同事聪明
  • 开发过程相对独立
  • 改自己的代码(文件)不需要 review
  • 几乎不使用开源代码
  • 女性工程师相当少见
  • 默认提供双 4k 显示器,笔记本都是顶配,虽然开发主要是在虚拟机里进行(72C, 512G)

生活

公司提供来回机票以及路上费用的报销,也提供住宿(甚至可以带伴侣一起住),可以选择离公司近或者离海滩近。住宿是那种供度假使用的房子,各种设施齐全(相当于在酒店的基础上多了厨房用品),看官网上按天计的价格相当奢侈。

公司为每个人租了自行车,作为上下班的通勤工具是再适合不过了。

每周三的中午是免费大餐,实习生和公司里不同组的成员轮流一起吃饭,也可以借此机会了解公司里的不同业务和工作内容。

每个周末都有活动,而活动之后就也是免费午餐或者晚餐。活动有 hiking,kayak,beach day,food tour,flying trapeze,sunset cruise 等等,总之极为丰富,也让我们有机会全方位体验了 Santa Barbara 这个城市(无论是活动还是食物)。

公司的会议室里有 Switch 和 Wii,周五下班后(或者说是下班前?)大家会去打任天堂大乱斗。

公司不提供午餐,所以一般大家是出去吃。因为公司的位置很好,所以吃的选择也很多,只是有时候觉得出去吃有点浪费时间。

总结

实习体验我给满分,把我晒黑+吃胖了。也交到了好几个朋友,体验了一些 culture shock,也提升了英语水平。之后我一定会怀念 Green Hills Software 和 Santa Barbara,以及一起实习的朋友们。

但 GHS 没能留住我,原因就是 package 相比起一众湾区公司有些太小了,而这边的生活成本也和湾区接近了。