回忆起在美国通用电气(GE)工作的一件事


微软研究院面试多的一轮价值观(Microsoft Values)中, 面试官问我在过去的职业生涯中 最感谢的人是谁? 为什么?

我18年年底加入了美国通用电气 General Electric 在剑桥的办公室. 剑桥GE有一个软件部门(现在归于 GE Digital) 是做 GE Smallworld GIS 软件的. 这个软件NB的地方是基于自己开发的一门动态编程语言 Magik. Magik 语言最开始是在C开发的, 有自己的 Magik Runtime运行库, 后来在Smallworld 5版本后就把Magik编程语言用Java重新编写了, 这样的好处是可以在JVM上跑, 同时可以无缝的使用开源的JAVA库, 因为 byte-code 是相通的.

Magik编程语言是动态类型的, 类似于Python, 但这门语言在当时已经有十几年没有在语言方面改进了 (公司的开发重点不在语言本身). 当时我有疑问为啥不用较为流行的其它编程语言 或者直接用 Java呢? 得到的答案是因为已经有很多GIS软件是在 Smallworld内核上编写, 迁移的成本巨大, 况且 Magik 语言也是很强大.

我刚入职GE的时候, 我的导师给我的任务就是熟悉 Smallworld Core 代码, 当时导师并没有给我其它相关的任务, 因为一般来说入职的前几周都基本上和玩似的. 当时我第一次换工作, 生怕过不了试用期(三个月), 于是最初几个月都是很认真用力的工作: 第一个到办公室, 最后一个离开.

GE 回忆起在美国通用电气(GE)工作的一件事 工作 讲故事 资讯

General Electric

很快, 我就发现 Magik 这个语言缺少 while 循环, 只能用 loop 加个 if 来实现, 一点也不优雅, 还有就是没有正则表达式的支持. 于是我和导师说了这事, 导师很支持我说让我带着问题去看代码看看能否加上这个功能. 很快的, 接下来2周我就加班加点把编译器的底层逻辑搞明白了, 并且实现了这个 while 循环和 regex 正则表达式.

当然, 能不能合到代码库里这并不是那么容易的, 产品经理说要是加了这个功能, 以后的程序里用了这个新功能岂不是不支持在以前的版本上跑了? 导师说, 确实是, 但发新功能就是这样哇.

一个月后刚好 GE公司有半年一次的 Tech Briefing 技术大会, 和美国的同事一起开大会讨论演示最近的功能, 导师问我愿不愿意上去讲, 并且说 “This is good for you.”

在 Tech Briefing 大会上, 有三个演讲, 我排在最后一个, 一个小时, 每人20分钟, 第一个人讲太久了, 导致没有时间了. 很幸运的是, 导师让第二人下次再讲, 争取到让我这个新人第二个上台去演讲.

演讲的很顺利, 之后同事都过来和我握手 和我说 “Congratulations”. 他们和说 我进公司这么短时间竟然给Magik做了这么大的改进, 非常impressive.

我面试Amazon的时候 回答BQ问题也用到了这个小故事, Bar Raiser也是和我说 Impressive. 我想一是 GE公司足够大, 二是这个成果足够有份量(入职时间短, 2周, 改编译器底层+新功能, 我后来去改了Magik 的 Wiki), 三是得到认可(在技术大会上做演讲). 这很符合亚麻的 Dive Deep, Ownership, Learn and Be Curious 军规.

当然, 我最感谢的还是我的导师, 他在GE工作20多年, 资深, 级别是 Senior Staff, 他的支持和鼓励, 还有就是 Give Credit, 让我有机会做了这么一件有意思有意义并且很独特的事情.

GE-story 回忆起在美国通用电气(GE)工作的一件事 工作 讲故事 资讯

GD Star Rating
loading...
本文一共 966 个汉字, 你数一下对不对.
回忆起在美国通用电气(GE)工作的一件事. (AMP 移动加速版本)
上一篇: 每年大事记, 回顾总结是为了更好的生活
下一篇: 在剑桥吃到了鸡蛋灌饼(煎饼)

扫描二维码,分享本文到微信朋友圈
a2c856e052ec2197f93d35a85baa6193 回忆起在美国通用电气(GE)工作的一件事 工作 讲故事 资讯

3 条评论

  1. 卫春阳

评论