10 次面试,2 份 offer —— 大龄程序员 2020 求职记录
这是架构师训练营第 1 期的分享内容,其中大部分的面试经历我已经在写作平台发表过,文字略有修改,这次主要是为了争取当优秀学员
长文,慎入
结论先行
40 岁,高龄程序员,从体制内类似信息中心的部门出来,10 次面试,2 份 Offer,现已入职。
不是凡尔赛,我想说的其实是,像我这样的都能找到工作,那么你们也没问题。
围城里面的我想出去
纠结了很久,大概是在 4 月份左右的时候,终于打定主意要离开,着手开始做一些准备工作。
感觉体制就好像一座围城——外面的人想进来,里面的我想出去。
大学毕业之后就没有再参加过面试,在体制内的信息中心工作了 18 年,工作相对轻松,但是技术多少有一些荒废。现在需要去准备面试,不知道是该兴奋还是恐惧。
认真看了一遍极客时间的《面试现场》专栏,做了一些笔记,也想清楚了自己将来的职业发展路线。
之前,我做过 4 年的系统运维和数据库管理,3 年的 C# 开发,3 年 Ruby on Rails 开发,然后花了 3 年时间去读研究生,最近 3 年在做项目管理。不谦虚的说,个人的优势在于接触过的技术比较多;缺点也很致命,项目经历不多,年龄偏大,技术不够深入。
可能的三个求职方向:开发、项目管理、运维。
重刷了一遍《数据结构和算法之美》专栏,还在优普丰考了 Scrum Master 和 CSD(Certified ScrumMaster Developer)的认证,给自己多一种可能,其实还是想继续做程序员。
九月份开始投简历,原本是打算参加完极客大学的架构师训练营和 Java 训练营的,这样感觉上似乎会更有把握,但是待在家里并不意味着能好好学习。
从我个人的体验来说,即使没有经济上的压力,还是推荐先找到一份工作,骑驴找马未尝不可;或者至少要把自己扔到招聘市场上去,看看是骡子是马……
接下来是面试经历
如何成为一个好的程序员
第 0 次面试
2020-09-28
朝阳
通过一面
为什么是第 0 次,因为我是程序员啊……
很久很久以前,有一部电视剧叫做《101 次求婚》,暴漏了年龄,也暴露了自己的不自信。
公司是做数据同步的,从 Oracle 或者其他数据库把数据同步到其他数据库或者云端,主要应该是做日志的解析。
因为是内推过来面试,所以面试官并没有为难我,只是再三确认我是否有足够的兴趣和爱好去写代码。
面试官问我,如何才能成为一个好的程序员,或者简单的说,如何写好代码。
我的回答是要根据所写的程序类型,如果是面向用户,那么理解业务需求,解决用户问题,是首先要做的;如果是偏向底层,那么可能就需要对编程语言、数据库、操作系统有比较深入的了解才可以。
面试官说,写好代码最重要的是要有读代码的能力,再加上调试的功夫。
回过头来看,我的回答,可能有一些跑题了。
面试官说,他这边的一面没什么问题,还有第二轮面试。如果我能够入职的话,大概两年左右,会成为一个比较熟练的 Java 程序员。
我略有一点犹豫,一个是公司相对比较远,每天的通勤时间大概需要 3 个小时;另外一点是,做类似中间件开发,以后的职业道路会不会比较窄?作为一个没有工作的人来说,有点想多了。
一次原本可能失败的裸面
第 1 次面试
2020-09-29
海淀
拿到 offer
在 BOSS 直聘上收到面试邀请,Ruby 开发岗。
从我个人来说,我还是挺喜欢 Ruby 以及 Rails 框架的,写过一些代码,确实感觉很爽,之前一度想要成为 Ruby on Rails 的全栈开发工程师或者是远程开发工程师。但是 Ruby 的岗位似乎不是那么多,而薪水也不是很高(可能是因为入门很容易?),所以后来基本上放弃了,转而参加极客时间的 Java 训练营,打算找 Java 方面的岗位。据说中国有超过百分之五十的开发者使用 Java。
没有特别的去准备,只是在面试之前,简单复习了一下 Ruby 的语法。
到了公司楼上,在会议室里等了一会儿,有人给发了两张面试题,很久没有这种参加考试的感觉了。四道基础知识问答,一道系统设计,看了一下,都不太会……
于是硬着头皮,把自己知道的东西写了上去,鄙视一下自己的硬笔书法。在系统设计的题目上花的时间略多一些,关于抽奖系统的,感觉挺有意思。可能是因为面试的比较少,所以对于系统设计有点缺乏经验。
面试官看了一下我的两页纸,就其中的一道基础知识题和我聊了两句,关于 Ruby 的 block 和闭包,我对这块的解释是有问题的。
然后一起聊了一下关于红包抽奖系统的设计。我觉得这个部分应该是面试官比较满意的,我虽然没有给出正确的答案,但是设计思路应该还是比较对头的。
比较有意思的题目是,如果是随机抽奖,如何设计抽奖程序?比如发出去 1000 张二维码,其中 1 个一等奖,2 个二等奖,3 个三等讲,如何抽奖?我当时选择了发牌的方式,1000 张牌,然后前 6 张有奖,洗牌之后随机发放。
在过程中,面试官也介绍了一下关于技术团队的现状,比较吸引我的地方是他们这里的技术氛围还不错,有单元测试(惊喜,是我少见多怪么?),有重构,还有两周一次的迭代,但是并不强调敏捷开发或者 Scrum。
接下来出场的应该就是大 BOSS 了,也很年轻,让我简要的介绍一下自己。
等我说完,BOSS 给我简单介绍了一下公司的情况,以及将来可能的技术方向和挑战,听上去还是很有吸引力的。
最后就到了“谈钱伤感情”的时候,可能我自己开价偏高,BOSS 说要再考虑一下,我表示价格可以商量。
等通知……
这个工作对我有一定的吸引力(Ruby on Rails,高性能,技术团队);而另一方面,我有一点担心作为 Ruby 程序员将来的发展。
面试当天下午六点,BOSS 打来电话,我可以入职了,但是薪水打八折。
第一次电话面试
第 2 次面试
2020-11-12
海淀
未通过
因为某种无法名状的原因,我又开始面试了。
投的是外包公司的 Java 开发岗,但是招聘专员说可以推一下 PM 的岗位,银行项目。
虽然外包公司的名声不怎么好,但是我还是打算试一下,至少可以增加自己的面试体验,而且也不排除短期工作,看看能否转管理。(外包公司、外派人员,有可能增加管理经验么?)
约了下午的电话面试,提前准备好手机、耳机、电脑,找一个安静的地方。
面试的过程乏善可陈,应该是团队的技术经理或者架构师,没有怎么考察技术上的内容,大概捋了一下简历,我缺乏 Spring 相关的开发经验,而他们对 Word、Excel、Visio、Project 这些微软系的工作套件很感兴趣。
在面试的后期,面试官说我的预期薪水过高,我就如他所愿的降低了标准。可是,如果给钱少的话,外包公司似乎就更不值得去了。
一般来说,外包的薪资水平如下:初级 10K、中级 20K、高级 30K。社保之类的,是按照工资额度的 30% 缴纳。
如果技术面通过,那么后面可能还有银行的人员来做视频面试(考察)。
我并不担心能够通过这次技术面,或者之后的视频考察,但是去外包公司的兴趣却打了不少折扣。
其实我有点好奇,那些去外包公司写程序的小伙伴么,都是怎么想的呢?是在没有地方可去才去外包的么?而且,去了之后,真的会被掏空么?
现在回过头来看,还是不建议大家去外包公司,如果没有办法非去不可,那么也希望能够尽快跳出来。
2020 年了,真的要继续 RoR 么?
第 3 次面试
2020-11-13
朝阳
未通过
安全公司,Ruby 开发岗。
一开始我是有点好奇,为什么安全公司要招 Rubyist,后来面试官说,他们公司也是 2015 年前后创业起家的,那个时候的创业公司都用的是 Ruby on Rails,然后一直延续到了现在。虽然后端有各种开发语言和框架,但是展示给客户的还是 Rails。
提前十分钟到公司,有前台(之前的那家小公司,没有前台),稍等了一会儿,被带到小会议室面试。
没有做笔试题,直接开始。大概聊了一下我的工作经历,然后就进入了技术面试。
因为最近写了一个月的 Ruby on Rails 代码,而且还看了一些 Ruby 面试常见问题,所以对这些问题我还是能够回答上来的,但是感觉自己回答的不是很系统,表达的不够专业。
聊完技术问题之后,面试官也指出了我的不足之处,主要就是项目经验太少,虽然工作年限长,但是 Rails 的经验大概不到 3 年的样子,可能没有办法给到我预期的薪水。
面试官问,你有什么想要了解的么?我就问了开头的那个问题。
技术面试之后,又进来了一个人,应该是公司高管,主要聊一些“家长里短”的话题,估计是看一下人品。
第二位面试官说,还需要和 HR 碰一下,三个人讨论一下是否给我发 Offer,让我等候通知。
然后,没有通知……
一次浪费时间的面试
第 4 次面试
2020-11-16
朝阳 建外 SOHO
浪费时间
很奇葩的一次面试。
在招聘的 APP 上,这家以 M 字母打头的公司,原本是要招 PHPer 的,我已经说明自己不会“世界上最好的语言”,招聘方还是说可以去聊聊。公司是一家类似于电销类的咨询公司,我以为他们只是想要搭建或升级网站,不在乎所使用的语言或者框架,所以就去了。
建外 SOHU 从外观上看,还是挺漂亮的,但是园区内的小店,感觉是比较凌乱的。
找到公司所在的楼层,让我略微有一点惊讶,居然没有卫生间。更像是一个商住两用的设计,出电梯之后,大概有四个大的套间,我要面试的公司就占据了其中一个。
在前台填了一张表格,内容和简历上的差不多,但是比一般的签到表格要详细很多,不明觉厉。
然后在会议室里面和公司的老板聊了两句,基本上没有聊技术问题。我简单介绍了自己的经历之后,老板简单的给我介绍了一下公司,说希望能找到有资源(项目)的技术合伙人,而我显然不在此列。
客套两句,然后就结束了这次面试。
后来想想,可能是因为对方觉得我的各方面资质不太合适,于是就随便找了个理由打发掉。否则的话,真的是不明白,这种浪费彼此时间的面试有什么意义。
前一次的电话面试,让我对外包公司心生警惕;这一次比较奇怪的面试,让我对非技术类公司的招聘心有余悸。
完全懵掉的技术面试
第 5 次面试
2020-11-23
电话面试
未通过
中午正在家里小睡,突然接到了一个电话面试,刚开始的时候连是哪一家公司都没有搞清楚。
面试官是男性,题目都是我不太熟悉的。
权限角色 5+1 表格
如何使用不同电话号码绑定一个用户
1000 万数据单表如何保证并发
不考虑分布式,如何保证 1000 并发
面试到后来的时候,面试官的声音里明显流露出了失望的情绪,我这边也只能硬着头皮回答。
还是面试缺乏经验,我应该申请半个小时之后再面试,虽然题目仍然可能答不出来,但是至少思路可以清楚一些。
看了一下面试公司的情况,做供应链协同管理的,可以“居家办公”,就这么错过了。
转型项目经理?
第 6 次面试
2020-11-24
海淀,北四环
拿到 offer
在骑车回家的路上,接到了 HR 的电话,周围环境比较吵杂,只是约了一下面试时间。
按时到达面试地点,办公环境很不错,HR 也很 nice。简单沟通之后,面试官提出,如果是面 Java 开发岗,那么很有可能无法通过,建议考虑项目经理岗位。之前也考虑过转型,我觉得也可以尝试一下。
等了一小会儿之后,来了一位 L 总。简单聊了一下我这边的工作经历,印象比较深的话题是:怎么看待加班和是否能够接受出差。是不是有点吓人?
然后见到了公司副总。同样简要介绍自己的工作经历,然后简单聊了一下之前作为甲方项目经理的一些工作内容。副总提出的最有意思的问题是,为什么没有考虑去竞品公司。
第二天收到 HR 的电话通知,约好次日终面。
简单的自我介绍之后,大 Boss 问了一下我对于写文档的看法。我以前是不怎么喜欢写文档的,感觉花在文档细节上的时间往往得不偿失。领导对我的说法不满意,强调文档的重要性,我当然是正襟危坐、频频点头。最后,大 Boss 说从他的角度来说没有什么问题,欢迎我加入公司。
一天之后,我收到了通过面试的电话通知,约定了入职时间。
最有技术含量的面试
第 7 次面试
2020-11-29
远程面试
未通过
这次面试是从 Ruby China 的论坛上找到的,兼职的 Rails 开发,远程,创投团队,每周大概 10 个小时左右的工作量,包括老产品维护和新产品开发,产品部署在 AWS 上,可能会用到 Docker。
这个工作本身还是挺吸引我的。面试的方式是做一个简单的项目,语言和框架不限,可以参考各种网站,只要是自己做的就可以。
预约的面试时间是周末,从中午 11 点到下午 18 点,完成一个投资人和创业者预约面谈的 Web 应用。
从网络上找到了 Simple Calendar 的 gem,然后是一篇 How to Build a Booking System with Ruby On Rails 的文章,似乎一切都很顺利。
开始动手之后,先是在安装 npm、yarn 的时候卡壳了一下,在网上找到了解决方案。
中间还试用了一下 ngrok,准备用来演示。
后来发现网上的原码和参考资料和需求有一些不一致的地方,等我想要回过头来再重新设计一下的时候,时间明显不够用了。
最终实现的版本只能是把一个开源的 appointment Web 应用 简单的跑了起来。
下午六点,和面试官进行了视频面试,因为没法访问到我本地的 ngrok,所以使用腾讯会议,但是可以给面试官看的东西并不多。
这次面试是我经历多次面试中最有技术含量的,可惜我完成的并不好。
这次面试给我了一个教训,我本以为自己对于 Ruby 或者是 Rails 的面试已经比较有把握了,可是一旦进入到实际开发阶段,还是会遇到很多问题,不够熟练,主要原因还是写过的程序太少。
也考虑过是否第二天在原有基础上继续完善程序,争取机会,但是后来什么也没有做。
没能成为大数据开发工程师
第 8 次面试
2020-11-30
电话面试
未通过
电话面试,简单的介绍个人经历之后,因为我的项目经验不多,技术上也乏善可陈,面试官感觉在技术上没有什么可问的,于是就聊了一下公司大概的情况。
公司主要做数据分析,包括运营商数据和 App 数据,主要有三个模块,数据采集、数据计算和平台开发。数据采集主要是 Python,大概是 TB 级别的数据量;数据计算使用的是 Spring 全家桶;平台开发也是以 Java 语言为主,使用 CDH 作为分析平台。
CDH is Cloudera’s 100% open source platform distribution, including Apache Hadoop and built specifically to meet enterprise demands
面试官让我讲一下如何从头到尾的做一个项目。我按照自己的思路简单的说了一下,无外乎搞清楚需求、用户,然后采用迭代的方式把项目逐步做起来。
面试官最终对我的评价是,项目经验和技术深度不够,但是对于技术整体的了解和项目的把握还可以,如果给 Offer 的话,那么也可能是考虑到技术视野和项目经验,如果有进展,会在一周之内联系。
现在一周时间已经过去了……
咨询师的诱惑
第 9 次面试
2020-12-02
海淀,中关村
通过一面
一个老牌的技术网站,应聘的职位是项目经理,不过是偏重于教育或者是课程,而不是技术类的。
面试官先和我确认了一下应聘的岗位,避免出现误解。我说自己也考虑尝试一下新的职业和行业,同时也看好教育领域。
简单的介绍了自己的工作经历之后,面试官给我推荐了另一个职位,咨询师。
项目经理是在售前或者投标环节就介入培训项目,然后负责整个完整的流程,包括课程设计、师资预约、课程组织,一直到最后的测评和用户打分环节;而咨询师,是在培训项目中标之后,与客户共同商定课程的内容。
我表示对于咨询师职位也可以尝试,于是后来就面试官就让我随便讲讲自己接触过或者了解的技术,期间他也会提出一些问题,我就按照自己的理解,与他交流。
感觉上,其实我似乎还是能够胜任这样的岗位的。
面试官最后说,需要副总来做终面,让我等待后续的通知。
后来还真的接到了终面的邀请,不过那个时候我已经准备入职了,就没有再去。还有一个原因,我不知道,如果做培训行业的咨询顾问,那么后续的职业发展道路怎么走。
入职以后
我的面试经历,再一次暂停。
通过自己的面试经历,我觉得即使不打算离职,也不妨偶尔出去面试一两次,一方面了解职场行情,评估职业价值;另外,也可以让自己也获得总结和反馈的机会。
万一要是有更好的机会呢?
回到文章开始说的,我的经历可能对于年轻人没有太多的参考价值,但是对于那些在体制内纠结的技术人,似乎有一些参考价值。
我觉的在求职的过程中,最重要的一点是不要怕“丢脸”,我这个系列原本是打算叫“101 次面试”的。
仅在 Boss 直聘一个平台上,我就搭讪了 265 次,发出了 126 份简历……
其实我要感谢那些愿意接收我的简历,给我面试机会,甚至肯给我工作岗位的各位“大佬”。
在我决心离开体制之前,已经能看出来经济形势不好,打工人水深火热,而体制内的生活显得更加温暖。
虽然不喜欢体制的束缚,但是我并不“埋怨”过去。我现在所拥有的,有自己努力的成分,但很多都是托“单位”的福,当然也要感谢我们的国家在近二三十年的迅速发展。
作为 80 后,其实是赶上了经济发展的末班车。
在时代大潮中,个人力量微不足道,做为前浪,我会继续努力。
2020 年就要过去了,我注定不会怀念它,但是同样不会忘记。
2021 年就要到来了,希望大家可以早一点摘掉口罩、自由呼吸。
版权声明: 本文为 InfoQ 作者【escray】的原创文章。
原文链接:【http://xie.infoq.cn/article/6b9b107b5f370a259f03b77a5】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论 (4 条评论)