30岁转行程序员的面试经历:从销售到前端开发的逆袭之路
30岁从销售转行前端开发,自学1年编程后面试3家公司,2家挂1家过,最终拿到中型互联网公司offer。真实记录年龄焦虑、转行困难和面试歧视。
背景介绍
先说说我自己的情况吧。我今年30岁,做了5年销售,从地推到电话销售再到大客户销售,一路走来也算是个老销售了。但说实话,销售这行越做越心累,KPI压得人喘不过气,客户资源被老员工把持,新人很难出头。最关键的是,我看不到未来的方向。
29岁那年,一个做前端的朋友跟我聊天,他说他们团队刚招了个转行的,之前是做餐饮的。我当时就愣住了——原来转行真的可以?于是我开始自学编程,每天下班后看视频、敲代码,周末泡图书馆,坚持了整整一年。从HTML/CSS到JavaScript,再到React和Vue,我把能学的都学了一遍。
一年后,我辞了职,开始全职找工作。说实话,那一刻我是真的害怕,30岁,没有相关工作经验,简历上全是销售经历,谁会要我?
面试流程复盘
第一家:某创业公司(挂)
这是我投的第一家公司,做SaaS的创业公司,20人左右的团队。HR在Boss直聘上主动联系我的,说看了我的GitHub项目觉得不错。我当时还挺兴奋的,觉得终于有人认可我了。
一面是技术面,面试官是个看起来比我小几岁的小伙子。他先让我自我介绍,当我提到30岁转行的时候,他明显愣了一下,然后问了一句让我至今记忆犹新的话:"你为什么不继续做销售呢?" 这句话听着像关心,但我知道他是在质疑我的选择。
技术面试问的都是基础题,CSS居中、JavaScript闭包、React生命周期这些。我答得还行,但到了手写代码环节就露馅了——他让我写一个防抖函数,我写了半天没写出来。最后他说"回去等通知",我就知道没戏了。
第二家:某中型互联网公司(挂)
第二家是做电商的中型公司,大概200人。这次面试流程更正规,先做在线笔试,然后两轮技术面。
笔试我过了,但第一轮技术面就出了问题。面试官看了我的简历,直接问:"你没有计算机相关的学历,也没有相关工作经验,你觉得你能胜任这个岗位吗?" 我当时心里咯噔一下,但还是硬着头皮说了我的学习经历和项目经验。
技术问题问得比较深入,问了我Vue的响应式原理、虚拟DOM的实现、webpack的构建流程。Vue的响应式我还能说个大概,但虚拟DOM和webpack我就只能照本宣科了,明显感觉面试官不太满意。他还问了我一个算法题——两数之和,我写了个暴力解法,他说"时间复杂度能优化吗?"我知道可以用哈希表,但现场没写出来。
最让我难受的是,面试结束的时候,面试官说了一句:"你的基础还可以,但是说实话,我们更倾向于招有经验的。" 这句话像一盆冷水浇在我头上。
第三家:某中型互联网公司(过!)
第三家也是做互联网产品的公司,大概150人,前端团队10个人。这次面试体验完全不一样。
一面技术面,面试官是个很和善的女生,大概二十七八岁。她没有对我的年龄和转行经历表现出任何偏见,反而说"转行的人往往更有自驱力,我觉得这是优势"。那一刻我差点哭出来。
技术问题问得比较实用,比如如何实现一个无限滚动列表、如何做组件的按需加载、如何处理跨域问题。这些问题我平时做项目都遇到过,答得比较顺畅。手写代码环节让我实现一个简单的Promise,我写出来了,虽然不完美但核心逻辑是对的。
二面是技术主管面,问了一些项目相关的问题,还问了我对前端的看法和未来的规划。我把自己学习过程中踩过的坑、做过的项目、对前端的理解都说了,他听得很认真,最后说"你的学习能力和态度我很认可,技术可以慢慢提升"。
HR面就是聊薪资和入职时间。最终给了我15K的offer,虽然不高,但对我来说已经是巨大的肯定了。
真题汇总
1. CSS水平垂直居中的几种方式
2. JavaScript闭包是什么?举一个实际应用的例子
3. React和Vue的区别是什么?你更倾向哪个?
4. 手写防抖函数(debounce)
5. Vue的响应式原理(Object.defineProperty和Proxy的区别)
6. 虚拟DOM是什么?为什么需要虚拟DOM?
7. webpack的构建流程
8. 两数之和(LeetCode #1)
9. 如何实现无限滚动列表?
10. 手写一个简单的Promise
11. 组件按需加载的实现方式
12. 跨域问题的解决方案
13. 你为什么转行做前端?
14. 你觉得转行的人有什么优势和劣势?
15. 你未来的职业规划是什么?
心得建议
1. 年龄焦虑是真实的,但不要被它困住。我面试的时候确实感受到了一些偏见,有些面试官会直接或间接地表达对转行者的不信任。但我也遇到了愿意给我机会的人。所以,不要因为年龄就放弃,总有人会看到你的价值。
2. 项目经验比学历更重要。作为转行者,你没有计算机学历,也没有相关工作经验,那唯一能证明你能力的就是项目。我GitHub上有5个项目,虽然都是跟着教程做的,但我做了很多修改和扩展,面试的时候能说清楚每个项目的技术选型、实现思路和遇到的问题。
3. 基础一定要扎实。我前两次面试失败,很大程度是因为基础不扎实。闭包、原型链、事件循环这些概念,不能只会背,要真正理解。手写代码的能力也很重要,防抖节流、Promise、深拷贝这些必须能手写。
4. 选择合适的公司。大厂对转行者不太友好,简历关就过不去。中小型公司更看重实际能力,面试也更务实。先找到第一份工作,积累经验后再考虑跳槽。
5. 心态很重要。面试被拒是正常的,尤其是转行者。我投了大概50份简历,只有5家给了面试机会,最后只有1家给了offer。但只要有一家愿意给你机会,就够了。
FAQ
Q:30岁转行会不会太晚了?
A:说实话,不早了,但也不算太晚。我身边有35岁转行的,也有40岁转行的。关键是你愿不愿意付出比别人更多的努力。转行第一年是最难的,熬过去就好了。
Q:自学编程应该怎么学?
A:我的建议是先定一个目标,比如"我要做前端开发",然后按照这个方向系统学习。不要东学一点西学一点,那样效率很低。可以先看视频入门,然后跟着做项目,遇到不懂的再查文档。最重要的是坚持,每天至少学2小时。
Q:面试被问年龄相关的问题怎么回答?
A:不要回避,也不要自卑。我会说"我确实30岁了,但我用一年时间从零学会了前端开发,这恰恰说明我的学习能力和执行力。年龄对我来说不是问题,反而让我更清楚自己想要什么。"
Q:转行后薪资会降很多吗?
A:肯定会降。我做销售的时候月薪能到2万,转行后第一份工作只有1.5万。但这是暂时的,等你有了1-2年经验,薪资很快就能涨上来。而且做技术比做销售有更清晰的职业发展路径。
Q:简历上怎么写转行经历?
A:把项目经验放在最前面,突出你的技术能力。工作经历可以简单写,但不要隐瞒。我会在自我评价里主动说明转行原因,强调学习能力和对技术的热情。