一个在瑞士敲代码的 Google 程序员

一个人的命运啊,当然要靠自我奋斗,但是也要考虑到历史的行程。
我绝对不知道,我作为一个上海的程序员怎么把我选到苏黎世去了。

开场白结束~

现在是2019年1月25日傍晚6点(北京时间应该是凌晨1点了),吃了一块腻得要死的樱桃酒蛋糕,配上一瓶啤酒,可以稍微有时间记录下这段历程。

2014年在 THU 混到硕士毕业后,跑来上海工作,第一份工作在一家投行 Morgan Stanley,待了快四年,过得挺开心,认识了一帮关系超级好的朋友,学会了如何认真和专业地做好工作,买了人生到目前为止最贵的一套西装,还有好多好多。。。直到现在,我依然觉得,身上还有好多摩根的烙印,而且不会消散!

到了2018年初,我决定换一份工作看看,原因无非两点:

  • 我还是想在技术这条道路上走下去,就现在的趋势来看,去互联网公司对个人技术的提升更大,能使用到更新的技术,能接触到更多的用户。
  • 就中国的国情来看,跳槽是涨薪最好的方式,我何必跟钱过不去呢。

前前后后,准备了一两个月吧,面了两家 Google 和 Amazon,都是在上海的职位,因为当时并没有想到要离开上海,毕竟待了这么久,圈子都在这里,生活也很舒服,不想太折腾。

忽忽悠悠,两家的面试都过了,不过因为各种原因,Google 在上海的职位没有给我,只能进入候选列表,Recruiter 说帮我找找看其他团队,到了2018年7月份,告诉我说苏黎世的一个团队对我的简历有兴趣,问我要不要聊聊。很快,就跟对方的经理视频聊了一次,彼此感觉比较合得来,就答应了这事,然后就开始走流程,办手续,最后,2019年1月6日,飞机降落在苏黎世,第二天我就入职了。

Google 面试

关于 Google 的面试,网上有很多具体介绍,我也就不用详细说了。

官方解读,可以参考这篇网页:How we hire(可能需要翻墙~),这里面包括三个方面的内容:

  • 如何申请?
  • 如何面试?
  • 如何决定要不要发 Offer?

我做了哪些准备?

  • 刷算法题:这个大家应该都知道吧。当然,我大学那会没搞过 ACM,毕业找工作那会也没认真刷过题(找工作前的那个暑假,我好像是跑到菲律宾的某个小岛上晒太阳去了。。。)所以这次只能花了一两个月时间重新刷了一刷。
    可以看到,差不多刷了340道。
    我的 Leetcode 进度

    关于刷题,谈几点我的体会:
    • 刚开始刷会比较慢,在这个过程中,多总结,多思考,很多题目其实是相通的,要尽量做到举一反三,后面就会越来越快。
    • 我比较喜欢总结,然后每隔一段时间,把做过的类似的题目重新看一遍,比如 N Sum 的问题,专门总结了一篇笔记:LeetCode关于N Sum的问题
    • 如果大家有兴趣,可以看看我的一个文集:数据结构与算法,里面大概有50多篇文章。
    • 我的代码传到了 Github 上:https://github.com/chenxiangcyr/leetcode-answers(应该还没有全部上传完,有时间我继续)。
    • 写代码之前,先在心里或者草稿纸上把思路理清楚,不要一边写一边想。面试时,先跟面试官说清楚你的思路,面试官觉得没啥大问题的情况下,再开始写代码。
    • 写代码过程中,尽量做到 Bug Free,不要靠点击运行按钮来帮你检查语法错误和代码逻辑错误,因为在面试时,要么是在黑板上写,要么是在电脑的记事本上写,不会有运行按钮,不会有 IDE。
  • 对于有工作经验的候选人来说,一般还会有一轮面试设计到系统设计 System Design,所以这方面也需要准备准备,我有一些笔记放到了文集:面经

来到瑞士

为什么想要去国外?

想去看看世界。从出生,长大,读书,工作,一直都是在国内,虽然也去过几个不同的国家旅行,还没还没有在国外长期生活过。所以趁年纪还不大,出来感受下,看看世界,如果待得爽,就长期待下去,如果待得不爽,就回去。
说的直白点,出来的机会不多,回去的机会随时有。

为什么选择瑞士?

薪水不错,福利不错,社会安定,生活比较舒服,然后以瑞士为基地,把欧洲环游一圈(争取能写一本书,题外话)。

我又是如何来的?
说实话,想来瑞士工作还是挺难的,瑞士属于中立国,并不是一个移民国家:

  • 优点是,整个社会比较稳定和安定,比如不会有难民。
  • 缺点是,想在这边找到工作比较困难。因为对于外国人,能够工作的前提是,必须要拿到工作许可,也就是所谓的 Working Permit。这个需要你的工作单位帮你申请,而瑞士每年对工作许可又有严格的数量限制(每年差不多7500个),所以很多公司不愿意招外国人,因为很难去申请到工作许可。

当然,Google 毕竟算是瑞士的重点企业了,所以这一点上不用太担心。安排了专门的人员跟我对接,帮我准备材料,帮我提交申请,几个 Tips:

  • 这个过程还是挺长的,需要准备各种材料,从递交申请到拿到审批,官方说法差不多是4到8周。
  • 如果你有家庭,比如老婆孩子,公司也会帮他们一起办理签证,并且会负担整个费用。

更多关于工作许可的内容,可以参考这篇官方文章:瑞士工作许可

我会待过久?
我拿的签证类型是:B类:长期居留许可。
理论上来说有效期一年,然后公司会帮你申请续签,所以我可以想待多久待多久。我给自己的计划是,先待上一两年,然后回上海,或者去其他国家。

苏黎世初印象

飞机降落在苏黎世机场是1月6号的早上6点多,办好了交通卡,很快坐上了到住处的火车,全程差不多50分钟,中途穿越了整个苏黎世。

印象一:不大。在北京和上海待了这么久,只能是觉得苏黎世真的很小,第一个周末靠步行就可以把苏黎世城区逛一圈。

印象二:干净。路上是肯定看不到垃圾的,这点比德国都强(第二个周末去了趟德国,感觉整洁度比不上瑞士)。

印象三:下雪。雪景还是挺赞的~

苏黎世街头
一场雪过后

关于找房子

这是瑞士挺有意思的一个地方,也是跟国内很不一样的一个地方。
在国内的话,比如说我要去杭州工作,找房子其实不是第一要务,我可以在朋友家先住着,可以在酒店里先住着,然后再慢慢找房子。

但来到瑞士第一要务就是找房子!原因如下:

  • 瑞士有规定,入境后需要在14天内在政府部门那里登记,换取 Permit Card,我理解为居住证吧。但是登记的前提是你得有一个住的地址,而且提供租房合同等相关材料。
  • 生活中办理的各种东西,比如交通卡,居住证,银行卡,账单等等都会通过邮寄的形式送给你,所以需要一个稳定的邮寄地址。
  • 工作嘛,肯定要领工资,也必然要交税,这边的交税是跟居住地挂钩的,因此公司也会要求你提供居住地址。

关于瑞士找房子的几个有意思的地方:

  • 租房前,房东是爷爷。苏黎世的房子总体上来说属于供不应求,一般房东将房子挂到网上去之后,会收到一堆的邮件,想要看房,根本不愁租不出去。所以房东会比较挑剔,比如看你的工作,收入,语言等等。因此,你要有充分的耐心和精力去找。
  • 租房后,房客是爷爷。房东是不能随意涨房租的,因为每一套房子的价格都是在政府那里备案过的,只能按照这个价格来签合同,如果房东想涨价,需要去政府那里申请,但是大概率会被驳回。所以访客可以安心住着,快到期的时候,如果房客想续租,只需要提前说,房东是没有任何办法撵你走的。
  • 脑洞一下,既然政府说不能涨价,那房东能不能私下涨价?不会,这边人比较老实,也怕被告死。
  • 这边没有群租,因为每一套房,每一间屋能住几个人,都是有规定的,超过了限额,在政府那边是没法登记的。
  • 这边租房是不会带家具的,当然基本的厨房和卫生间家电是有的。不过床,柜子,沙发,桌椅板凳,锅碗瓢盆这些东西是默认不带的。当然,你可以从前任房客那里二手买过来。
  • 租房要买保险。比如你掉了钥匙,不小心砸了窗户,烧了房子,都可以走保险。

我又是如何找到房子的?
我比较幸运,来之前跟一个同事联系上了,跟他一起合租,所以避免了找房子的痛苦过程。
入职时,跟组里的同事聊起这个,大家是既惊讶,又羡慕。

关于我的房子:

  • 不在苏黎世,在苏黎世旁边的一个小城 Baar,坐火车上班的话,单程30分钟。瑞士人可能觉得远,但是我之前在上海,上班通勤时间是一小时,现在30分钟,我已经觉得很幸福了。
  • 住的远的话,有两个好处:
    • 房租便宜。比如我这个房子,两室一厅一厨一卫,室内面积70多平,总租金1600多(货币是瑞郎,跟人民币汇率差不多是1:6.8),人均差不多800多,比苏黎世便宜不少。
    • 税率低。Google 的薪水在当地算高的了,住的远的话能省不少税,我算了下,Baar 的税能比苏黎世低40%,还是那句话,我何必跟钱过不去呢。

关于注册

找好了房子,住了进去,下面就是要去当地的移民局注册下。比如我住的这个地方属于 Zug 州,那就去 Zug 州移民局登记,交材料(租房合同,护照,工作合同,工作许可等),录指纹,然后告诉你,过一周会把 Permit Card(我理解为居住证,长得跟国内的身份证差不多)和账单寄给我。

几个补充:

  • 签证和 Permit Card 的区别是啥?第一次来瑞士入境的时候用的是瑞士的签证,但是这个签证有效期很短,所以要来办这个 Permit Card,以后就可以拿着这个 Permit Card 进出瑞士,也可以拿着这个 Permit Card 欧洲大陆四处跑。(能不能去英国?不知道,待考证)
  • 这边政府机构官方语言应该是德语,文件上基本都是德语(我必然是看不懂的),但是工作人员基本也能用英语交流,所以应该不是大问题。
  • 费用好像是143瑞郎,不过可以报销(嘿嘿嘿)。
移民局

关于银行

想要领工资,自然要银行开户,瑞士以银行业而出名,正好借此机会感受了一下。
我选择的是 UBS(瑞银),挑了个早上直接过去了,有人说要预约,不过这边银行反正客人也不多,预约不预约感觉无所谓。

谈几个跟中国不太一样的地方:
大堂经理一看我只会说英文,就安排了一个能说英文的账户经理接待我,带进一个小房间,如下图。
首先是问我要喝啥,我一看,心想你也也啥都没有啊,就随口来了一嘴,你这有什么?哪知这大姐推开后面的柜子门,吓死我了,咖啡机,小冰箱,零食应有尽有。。。我只好故作淡定,要了一杯咖啡。
然后对方就是各种记录我的信息,比如工作单位,工作合同,大概收入,之前在国内的储蓄和资产等等。(我猜可能是根据这些信息来确定我的账户类型和信用卡级别)


UBS

然后是这边账户的类型比较复杂,比如我得到的有三个账户:

  • Personal Account 个人账户,就是正常的收支账户。
  • Savings Account 储蓄账户,你可以将钱从个人账户转移到储蓄账户,因为储蓄账户上的利率会高一点(但是不用多想,瑞士的利率你可以忽略不计,基本等同于零利率,具体可以参考:https://www.ubs.com/ch/en/private/interest-rates.html
  • 养老金账户,你可以转一些钱到这个养老金账户。关于瑞士的社保体系,有时间可以专门写一篇文章来总结下。

然后就是信用卡,给了我我两张,一张是 Visa,一张是 MasterCard,运气不错,给我了最高的级别,还送了一张 Priority Pass(传说中的 PP 卡?以后回家转机的时候可以蹭蹭休息室了)。

补一句,还有一点跟国内不同,这边的银行卡都不是现场办理的,都是告诉我,一周之后寄给我。。。

关于交通

瑞士的公共交通很发达,你可以选择次卡,半价卡,月卡和年卡。然后儿童,年轻人,成年人,老年人的价格都不一样,具体可以参考:https://www.sbb.ch/en/travelcards-and-tickets/railpasses/ga.html
我办理的是二等座的月卡,每月是 340 瑞郎,全瑞士通用,随便坐。

跟国内不同的几点:

  • 这边车站没有安检,甚至连大门都没有,自己走到站台,直接上车。
  • 凭良心买票。你如果有月卡或者年卡的话,自己随身把卡带着就行。否则就自己去自动售票机上买车票,选择目的地,付完钱,出来一张车票,但是这边没有检票的,你自己拿着车票上车就行。也就是说,你买不买票完全没人管。偶尔车上会有工作人员查票,但是概率比较低,但是查到没有买票的话,影响会比较大。
  • 不拥挤,没人都有坐,哪怕是早晚高峰。

要不要买车?
我还在想,没决定。中国驾照的话可以在瑞士开一年,一年之后就得去考个当地驾照,据说考试不容易。
这边的二手车不贵,而且似乎很流行旅行车。如果买的话,应该会选择的我的 Dream Car,宝马三系的旅行版,骚的要死,然后环游欧洲。

这边满大街的旅行车

其他的一些感受

  • 垃圾回收。第一次听说每周只有周五才能收垃圾。。。这是让我有点受不了的地方,还好平时都是吃公司的食堂,不用在家做饭。否则,天天做饭的话,厨房里的垃圾能放一周???还有就是,必须买专用的垃圾袋,价格贵到令人发指,10个垃圾袋25瑞郎,差不多170块人民币。。。好吧,还好一周只用收一次。
  • 干啥都是寄信。注意是寄信,不是快递,因此不会有人给你打电话,都是直接塞进你家门口的信箱。你办理的任何东西,你的账单,你的文件,都是通过这种方式给你,所以回到文章的开头,一定要先找到住的房子!我呆了三周,差不多从信箱里取了20多封信。。。
  • 还是要学一学德语的,如果要长期呆着的话。超市里买东西基本全是德语,而且很多当地人不会英文,当然,我可能是玩个短线,所以暂时没有学德语的计划。

几个开心的事

  • 明天可以去米兰看球,虽然我并不是米兰球迷,但看一场五大联赛,也算是儿时的梦想之一。
  • 下周四回家过年,希望自己能把回家过年这个习惯一直坚持下去。

未完待续

可以关注文集:Googler @ Zurich

推荐阅读更多精彩内容