写点什么

10 次面试,2 份 offer —— 大龄程序员 2020 求职记录

用户头像
escray
关注
发布于: 2020 年 12 月 31 日
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

电话面试

未通过

 

中午正在家里小睡,突然接到了一个电话面试,刚开始的时候连是哪一家公司都没有搞清楚。

 

面试官是男性,题目都是我不太熟悉的。

 

  1. 权限角色 5+1 表格

  2. 如何使用不同电话号码绑定一个用户

  3. 1000 万数据单表如何保证并发

  4. 不考虑分布式,如何保证 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 年就要到来了,希望大家可以早一点摘掉口罩、自由呼吸。


发布于: 2020 年 12 月 31 日阅读数: 893
用户头像

escray

关注

Let's Go 2017.11.19 加入

在学 Elasticsearch 的项目经理

评论 (4 条评论)

发布
用户头像
写的很不错,加油哦!
2021 年 01 月 09 日 11:17
回复
感谢鼓励,我继续努力
2021 年 01 月 10 日 08:18
回复
用户头像
同样大龄的程序员关注了你
2021 年 01 月 06 日 14:49
回复
互相关注,共同努力
2021 年 01 月 10 日 08:18
回复
没有更多了
10次面试,2份offer —— 大龄程序员 2020 求职记录