前一阵子,正经刷了大概三个月的题,磕磕绊绊总算拿了苏州微软的 offer,下面就聊聊个人的经历和感受吧。
面试
微软的面试相比我之前几家公司,我感受到的大概是以下几方面
面试官都非常有礼貌,无论对方的级别比我高很多,或者是比我年轻,都会彬彬有礼地对自己及所在部门做简短的介绍,面试过程中也会像合作一样去和你沟通,把他自己的想法告诉你,让面试者和面试官一起去把他提出来的问题解决,的确是一个让人很舒服的面试过程。之前面过的几家国内大厂,真的就是上来就是噼里啪啦问问题,会把人问晕。
虽然六轮面试有点多,但是 2-5 轮是交叉面试,中间挂了一轮,其实也没事,像我的第三轮就挂了,只要整体表现合格,最终还是会通过的。不像其他厂,一轮一轮地过,如果遇到运气不好,或者和面试官不合拍,挂了直接人没了。
每一轮面试都是一小时,而且有准确的时间表,准时到,发现时间来不及了,会提前五分钟和你说,时间快要到了,我们赶紧把接下来的内容弄完。超时了还会跟你道歉,真的是惊到我了。
微软面试之前,HR 会准确地告诉你面试的范围,我一开始还不太相信,本来以为是每轮都会有点算法,结果后面五轮完全没考算法,就是在 HR 告诉你的范围里,这就会让人有充分的准备。
工作
没有明确的工时规定,就我个人感觉,只要你把工作内容做完,会议准时参加(现在一般都是线上会议)。如果上午排满了会议,可以在家开完会,吃完中饭再去公司也是没问题的。劳动合同签订的是:**不定时 **工作制度,每天工作不允许超过八小时。虽然很多公司明面上都说九点上班六点下班,但是大家都不走,很多时候就耗在公司不走,甚至八点下班都觉得是早走,在微软完全不会这样,很多同事早上来的早,下午可能三四点就走了,然后如果要接小朋友放学的,也走得早,回家把事情干完记性。至于你六点下班或者五点下班,完全不用偷偷摸摸。
目前苏州的工位可以说是极度稀缺资源,因为招的人太多,楼里都快塞不下了,于是我被安排和另外一个同事坐在了会议室里,不过相比原来的工位也大了不少,一月份有部分团队会搬到新的大楼里,我们到时候就可以搬到外面的工位,比原来上海的工位大了一倍吧。另外,每人提供两个 27 寸 2K 显示器,一个台式机,一个笔记本,对于工作来说,确实是很舒服了。椅子的话,我感觉一般,但是据同事透露,每把都是 700 多刀,我惊叹要是我拿着 700 刀,得买个多舒服的椅子啊。平时的话,茶水间有免费的零食,每天轮着来的泡好的菊花茶、普洱茶、苦荞茶等等,胶囊咖啡、豆子咖啡都有,还有免费的元气森林,无糖饮料,酸奶,定时限量供应的水果,想吃的时候过去拿就行了(每天一瓶饮料的我,感觉自己就是在薅资本主义羊毛)。
食堂的话是外包的,每个月会给你每天 30 的餐补,如果你在食堂吃一顿,根本吃不完,大概就是 16-25 左右,来之前很多同事说食堂很难吃,但不知道是我个人包容性比较强,还是别的原因,我觉得还行,而且每天吃饭都得排队,可能这就是真香定律吧。或许再吃一个月我就会受不了,但到时候再说吧~
说实话,再好的公司,也会有不完善的地方,微软的入职清单,我感觉就比较混乱,也没有告诉你哪些是重要的,哪些是后面可以看的,都需要你自己去分辨,自己看文档,自己搜资料,好多问题遇到了,没人解决,就自己摸索,或者群发邮件去找人解决。不过还好同事们都比较热情,问问题都会回复然后由于我们的经理在美国,因此开会基本都是线上,于是和同事们都成了网友,每天在群里交流工作,线上会议同步工作进度,除了公司的小吃零食和双屏幕外,其他基本和线上工作没区别。
另外就是新人培训,也有很多浪费时间的地方,不够好的地方,但是会有人想办法去优化,所以有槽点,但在改进,总的来说还是好的吧。
工作内容
作为一个新时代的前端,技术栈无非就是 UI 框架( React ),打包工具( Webpack ),各种包( Nodejs, node_modules )等等。但不得不说,微软真是把这些东西玩出了花,以上每一样东西,我都懂,但是到了微软里,各种轮子我直接看不懂,本来改一个 bug,有一个数据流转出了问题,我接手的时候想:就这?老子不是分分钟给你搞定?
然后一看代码,这哪来的数据?这包怎么有个 soft-link,跳哪去了?诶,好像就是这个事件,来个断点!然后去浏览器里 debug,真就堆栈里有四五十个函数,跳来跳去把我人绕晕了。最后求助同事,呵呵,有个 API 没 call,我直接裂开。
之前的后端是 Node, Java, Python 都有,现在是 C#,虽然目前没写,但是之后应该会接触,可以说,要学的东西真的还挺多。
诸如此类的代码,虽然本质都是一样的,但是众多的文档,复杂的业务代码,还是很有上手的难度,不过微软好就好在会给人充足的时间去学习,去适应,节奏也比较慢。
一般书面沟通,大部分都是英文,除非你确认对方是在中国地区的中国同事,你可以和他发送中文消息,他也会回你中文。因为很多在美国的中国人,他们的工作电脑是不会装中文输入法的,所以你用英文和别人沟通,永远是不会错的。
口头交流的话,如果全是中国人,讲中文完全没关系,如果有外国人,那就必须要讲英语了,但是也不用怕,可以慢慢讲,其实语言就是个沟通工具,相互理解对方的意思就行。
说实话,之前很多人说微软轻松,我是没感受到的,一个最直观的现象就是,现在我的手机拿到公司放着,下了班都不用充电,还剩 70%的电,之前摸摸鱼刷刷手机的,基本上每天都要在公司充一次电。
虽然在微软任务不多,但是要学习的内容实在是太多了,而且有海量的沟通要处理,形式包括邮件、teams 或是会议。对于新人来说,每天有不少技术以外的东西要学,对于老同事,则需要面试,各种团队之间的沟通等等。所以每天为了准时下班,都会在上班的时间内抓紧每一分钟来学习和工作,有时候连午睡都没时间,但是这样充实的工作,至少让我觉得每天过得很有意义。
相比于微软,只能说之前的工作还是太野路子了,写完业务代码,最多研究研究 Node.js ,看看 CI,研究研究 Prometheus 监控等等。来了微软,就会碰到各种之前没接触到了领域,Localization,Accessibility,Compliance 等等,都是之前知道,但是没有写过的领域。
我算是知道了阿拉伯人和犹太人的书写是从右往左,css 有 direction: rtl ; A11y 是如何方便残障人士的使用;一个文案是要经过特定人员或是法务部门的审核。大企业的流程和严谨,以及对于各类用户提供的便利及包容性,都是之前未曾想象过的。
微软的 connect (绩效),是从以下几方面来评判的,个人产出;你的影响力;是否基于别人的工作做了更高一步的产出;个人的学习和成长。因此在微软,成长并不是一个人的,而是你和你的团队,你的同事一起成长,或许这就是我们常说的把队友拧成一股绳?
面试的时候和老板聊天,老板说希望工程师要保持好奇心,这样才会不断成长;同时也要好好包装自己,把自己做出来的成果,要讲得出去。因此其实,类似于文字、沟通能力这种软实力,以及学习能力,永远是一个优秀的,一直在成长的人需要的素质。老板鼓励你去学习,自己愿意去学,我觉得在哪里,你都会成长的。
工作之外
微软的福利确实是不错(虽然我都还没享受到),餐补、健身报销、学习经费报销、Xbox Game Pass 、Azure 经费等等。family day 派发苏州乐园或是华谊兄弟影城的门票,据说上海的是迪士尼或是海昌海洋世界的门票(在下酸了)。节日有礼物(据说是购物卡),还有 party 可以让你玩游戏、拿奖品、敞开肚皮吃零食水果,圣诞 party 上我就拿了三个奖品,运动水壶、护眼台灯还有三合一数据线,虽说都不是怎么贵吧,但也聊胜于无。
Teams 里有各种俱乐部,台球、乒乓球、足球和羽毛球等,一应俱全。
还有各种电子竞技,我来的时候他们正好在举办 DOTA 比赛,可惜入职晚了一点,没赶上,不然感觉蹭个经典亚军恭喜一下 OG 还是可以的。最近好像还有 LOL 的比赛,但是作为铁血刀斯林,我是肯定不会去看的。
团建其实不定期,但是基本不会占用周末的时间。我来的第二天,就雨天去爬了一波虎丘,虽然个人不是太喜欢吧,但是工作日出去玩,何乐而不为?据说上海还有团队专门包了大巴来阳澄湖吃蟹(我又酸了)。
零碎问题
大部分组都是使用 Windows 开发,对于用了好几年 Mac 的我来说,着实是有点痛苦,但是用着用着也就习惯了,毕竟只是开发,在哪开发不是开发,何况 Windows 配置一下也可以很方便。不过我想吐槽的就是,很多微软的上古产品,UI 还是那么难看(说的就是你,PC 版 outlook ),但是这种大型产品,UI 的更新成本总是那么高,所以还是慢慢期待吧。
我老板是 MIT 的,群里随便加一个人,就是北大的,可以说是牛人遍地走了。这个世界永远不缺厉害的人,你需要做的,就是不要妄自菲薄,不要盲目和别人比较,脚踏实地地去做好每一件事,相比从前的自己,一直在进步就好了。
老板和我一对一聊天的时候就说了,微软是个包容性很强的公司,想在微软干好,光有技术实力是远远不够的,你需要知道的有很多。所幸微软都给你提供了各种学习渠道,比如 unconscious bias,告诉你如何与形形色色的人相处;比如商业合规,是入职必备学习,让你知道各种不能碰的红线。
结语
说了这么多,其实只是作为一个普通的前端,给大家分享一下微软的工作到底是什么样的。
对于我个人来说,确实很愿意推荐朋友来微软这样一家公司,何况我们组的全员会上,老板再三地强调,招人!招人!招人!真的是求贤若渴了。
最近光我们大组,就有几十个 Head Count,微软苏州会有更多。
而且我们组六个人,只有两个人是在职两年以上的,其余全都是入职三个月以内。我不敢说现在是最好的加入微软的时机,但是我感觉,绝对是个不错的时机。
作者 ymyqwe 来源:V2EX