“ 此文阅读群针对有五年以上IT工作经验的同学, 没有工作经验的新人,你找不到任何心灵鸡汤,可能只有几根鸡骨。” 这是我2016年职业生涯中第二次跳槽的总结,时隔三年后,重新总结整理一遍发出来,回想下,其实找工作中很多东西是一成不变的。 01 — 跳槽起因 2012年人生第一次跳槽时, 我的人生目标是:三十多岁时,在公司升职到一个小PM或者带几个人做项目。截止2016年,我的目标早已经成功地实现了一半------ 我已经三十多岁了。 当时在2000左右员工的中型工程咨询公司, 职位是9年经验Senior码农。2015年的年中开始有跳槽的念头, 因为公司的项目不咸不淡且切换频繁, 导致技术上止步不前且难以深入。 咨询公司的项目有长有短,长的也许十年,短的可能两三个月,年景不好时,小项目居多。当你不停地切换项目时,技术复用的感觉就会越来越强烈。 工作内容全栈开发,从移动端,前端、后端、数据库连同测试部署一锅端,但2015-16年左右,随着云技术开始发力,各个技术栈的细节划分越来越细,其中各个方向的开发框架也开始井喷。作为一个自认为好学的人,人生中第一次觉得:学新东西脑子开始不够用了。 还有一点,就是无上升渠道,管理层都是45+且热衷健身,按德国雄心勃勃的67岁退休计划,我得等二三十年才有空缺升职。 02 — 跳槽目的 跳槽的目的, 一是Money,二是职业前景, 希望将来在某一领域方向持续深入。 03 — 大环境 3.1 说IT码农好找工作, 这是真的;IT码农好找高薪工作,这是难的 德国属于汽车机械工业立国的国家,软件行业整体上没有得到类似中美那种高度的礼遇和待遇。不过随着近年各个大厂的数字化转型和战略变化,可能以后会越来越重视软件行业。 下面这张表来自Gehaltsreporter网站,统计了不同工龄的软件从业人员的年薪平均数。注意这表里是平均数,德国很多公司,给的薪酬是这个统计里的平均数上下(废话!)。 关于德国软件行业薪资水平,我会单独另写篇文章细说。 可以清楚地看到随着工龄增长,会出现一个门槛,德国大部分公司里,普通工程师想越过这个槛,一般需要升职到有人事权或者有项目管理权的职位,或者投身咨询拿项目分红。亦或者,你技术上深挖到了Expert的大牛级别。
意思就是辞职期在3-6个月之间,如果你错过季度末辞职,那么最长会达6个月之久。这个辞职规定很常见,大家注意看自己的工作合同,松一点1至3个月,有的更苛刻,直接规定6个月的辞职期。如果合同上没注明,那就按法规默认是3个月。 刚开始我本着每季度前两月加紧投,最后一月靠天收的信念,但职位放出的时间,面试周期或者对方回复周期往往超出我的计划, 这样会带来很多问题, 后来我开始忽略这个辞职期投简历。因为就算是6个月的辞职期,你还是可以和前东家好好协商,一般都是可以提前离职的。你投的公司会不会真的等你等超过3个月?会的,我最后拿到offer的3个公司都明确表示,可以等6个月到我入职。 其实,反过来想,公司如果对你没兴趣,你就算当天能来上班撸码都不会要你。 04 — 面试历程 从2015年7月至2016年4月最终搞定Offer, 历时近一年, 总共投了约45家公司,其中有5家通过猎头引荐, 3家通过朋友和前同事推荐。 累积15次面试,不含额外的N次电面及与猎头会面。 最终拿到3份offer, 其中2个软件开发职位,1个软件构架职位。 技术层面准备要充分,你以为德国程序员面试只是问你几个不痛不痒的理论问题? 有四次开发职位的面试, 是当场编码开发的。 1. 最挫败的 一家云服务美企大公司, 先是和项目负责人以及团队成员面试,结束后接着给45分钟开发一个寻岛算法:一片海域里计算岛屿的数量。两个人一左一右全程盯着,我一边写代码,一边思考,还要一边解释思路给对方。以前没有这样的经历,当时思路很乱没做出来。越想越不爽,面试回家后花了点时间做出来发给对方经理,还是被拒了。 2016年左右时,周边的朋友和同事并没有听说过,有面试时现场写算法这种做法。以前也没有去Leetcode这类网站刷题,因为一直观察只有硅谷那边的程序猿才有这需求。按美帝的标准,这题15分钟内要完成。不过近两年陆续从同行那得知,部分德国公司面试时,也开始考现场写算法题了。 想想现在的毕业生也不容易,毕竟Leetcode的算法题已经上千了,刷到爆肝。
一家医疗设备大公司, 团队的技术负责人给了一张A4纸打印出来的满满的C++代码,不给电脑,不给调试, 让我徒手找出bug。Sorry, 大哥,我真的是来面.Net 职位的好吧?! 这家公司的面试流程挺奇特的,先是和项目负责人和人事几个人面试,然后直接和开发团队组员见面,围成一圈一起喝咖啡,你一句我一句尬聊,他们说这是测试未来同事的气场合不合。哈? 3. 最有成就感的 这是一外包DL小公司, 二十来人,给OEM做外包项目。这是通过猎头介绍的。猎头说老板是个星球大战粉丝,去了一看,果然不假,公司休息室里贴满了星战的电影海报,到处是May the force be with you。 和老板一面后,通知我改天过来Probetag(试工一天)。 当天先签了一堆NDA保密协议,但是因为对方没准备好开发环境,各种状况频发。大半天下来最后剩2个多小时,让我完成现有系统的一个新模块,这本来计划给我留4-5小时做的。这两小时里我脑子飞速运转,读完全陌生的代码,写新模块,再部署到系统里测试。项目经理测试了后说:这是可以发布使用的代码。技术负责人非常开心, 隔天给了Offer。 公司虽小,但给的薪酬却比上面两个大公司高。 一家大型供应商的子公司,做物联网。 一面和人事,部门负责人以及项目负责人面试,几天后通知二面。二面现场开发一个算法,并且写系列单元测试, 然后追问很多优化问题。因为有了之前的经验和心理准备,这次就不那么紧张了。预留一小时, 25分钟结束, 当天给offer。 最后决定接了这家的Offer。
面试时让我白板设计一个Connected Car构架,白板从各个系统模块推演,从数据仓库到移动端推送,嵌入式消息管理,安全性,分布式等,交谈甚欢。负责人说这介绍这个职位不用太多编程,需要前后台到移动端的构架和协调。 被拒。 做了几年云开发后,现在回想起来,当年设计的构架确实太幼稚了,拒的应该! 工作领域是财务和支付构架,涉及系统整合,安全端口,支付gateway等等。该构架职位基本不需编程,整个项目代码基本外包出去,主要协调各模块合作以及QA。 一面和项目负责人谈,白板设计支付构架。 二面和部门负责人谈。 拿到offer。 假如当年接了这个offer,不知道现在是什么状况,估计八成不在码农第一线了。 05 — 面试相关 1. Hr都不容易对付,面试中一贯的挖坑 但是面试多了,就知道Hr的套路了,网上把德语的Hr常见面试题找出来,预先每个问题心里自问自答一遍,不要有自相矛盾的地方。这些问题无非是:
有个朋友总结的好: “ 对于公司的Hr,如果猎头招了个合适的人,功劳在Hr;如果招了个不合适的人,那么责任在猎头,不在于Hr;至于中介费,那是公司的钱,不是Hr的钱。”
06 — 最后 最近又跳了一次槽,本来是打算写篇新的总结,结果翻出了三年前这篇,先温故知新一下吧。 正在写后续的新的一篇。 写给在德国奋斗并苦逼着的码农们: 跳槽只决定了你未来会在哪里编程, 就算跳到你心仪的公司,你还也只是个码农。 |
|