文科生转行面经:我是如何从数据分析到算法并薪资翻倍的


一、个人背景
本人文科生一枚,上学时就对数据分析比较感兴趣,所以毕业论文导师选的也是偏方法偏统计方向的,并且自学了SAS。毕业之后,在一家小公司里面做数据分析工程师,自学了Python。公司主营广告业务,所以工作期间主要接触的都是互联网广告相关的业务数据,一半的时间是在协助运营取数。一半的时间在做建模相关、用户画像相关的工作。2019年秋招找工作时,工作刚满3年。

二、为什么选择七月的集训营
很早就知道七月开始有集训营的课程,但是犹豫了比较久。在这半年期间也尝试过其他的在线的学习平台,比如说优达学城上的自动驾驶入门课程和Coursera上的吴恩达的ML的课程。我个人还是不太喜欢这种纯在线学习的方式,因为在线课程如果没有按照班期的课程进度跟上学习,很容易就落下了。对我个人来讲,我觉得线下集训营的方式比自己通过在线教育课程来学效率高很多。

第七期课上的老师都是有着非常多的行业工作经验和面试经验的,对于实际业务和面试上知识的重点、改简历的技巧和面试等的情况都非常了解,对于在职转行面试找工作还是非常有帮助的。这些肯定是靠自己学习,不可能得到的信息。

另外就是集训营每个知识模块都配套有相应的练习题,如果是自己,可能就看过一遍就完了,掌握的并不扎实。但是在集训营里大家一起学,按时把每周的作业题做完,对于知识的理解和巩固是非常有帮助的。而且,作业中涉及的内容与实际工作中需要的技能都非常相关,把所有作业都自己实现一遍,并且做好相应的笔记,这样进步会比较快。实际上,笔记中总结的内容,可能就是未来面试时候会遇到的面试题,如果自己实现一遍并且整理好笔记,对于面试也是非常有帮助的。

三、报名之前的准备
在最开始知道七月开始有集训营之后,就看过官网上面宣传的各种资料。比如,零基础也可以报名参加之类的说法。个人认为,在学习之前还是应该先熟悉一下相关的知识,这样学起来不会那么痛苦,毕竟是在工作的人,下班后的时间比较有限。在开始学习之前,自己能够先对这机器学习有个了解,再加上集训营的学习,效率更高,所以我在真正报名之前,我是集7的学员,自己会先把先关的课程提前听一部分,加上研究生期间的统计学基础和自学的线性代数的基础,工作上也会使用逻辑回归进行点击率预估的工作,其实还好。

有一些基本的认识和编程基础就好,不需要准备太久。还是需要考虑招聘市场的情况,现在越来越多人转行算法,还是要抓紧时间学习,积累项目经验,尽早入坑。

四、金九银十面试

1. 面试时间的选择
我是集训营第七期的学员,正好是在2019年的4月初完成了整个集训营的学习,刚好赶上了2018年底开始的互联网寒冬。当时的就业市场情况比较一般,我就没有选择在这个时间段找工作,而是想等到秋招再找工作。运气比较好,2019年9-10月的就业市场明显比春招的时候好了很多。

让我比较后悔的一点是,即使没有计划在3-4月就找工作,但是也没有投简历去练习一下算法岗的面试。如果春招能去面试一下,秋招的时候会更加自信和从容一些。所以还是建议大家,不要等到真正计划要去找工作的时候才开始去投简历面试,最好还是提早准备好简历,开始投简历去面试,因为对于没有面试过算法岗位的同学,还是需要去适应一下这个过程,并且去组织语言与面试官去沟通的。

2. 准备简历
在简历的准备上,我写了两个版本的简历,一个是偏向数据分析的,就是偏向业务的,一个是偏向算法的,因为我两个方向都想了解一下,最后看薪资和岗位的成长价值来决定的。

对于社招的同学,不管是分析师还是算法工程师岗位,最重要的还是实际工作中的项目经历。在集训营的学习过程中,大家需要去完成一些项目,可以根据岗位需要进行修改,写到自己的简历里面去。当然,最好是和现在自己工作更相关一些的项目。集训营也会提供简历修改的服务,针对自己的就业方向,可以自行找相应方向的老师讨论并修改简历。课堂上,老师也会讲一些关于简历修改的内容,也是很有帮助的。

3. 简历投递
因为我没有计划海投简历,所以有选择性的集中投递简历,将得到的面试机会的面试时间都集中安排在了一周内进行,如果有各方面都比较合适的就准备入职了。

我在今年的8月底9月初开始集中投简历,很快就有面试的机会,分析师岗和算法岗两个方向上都拿到了面试的机会,最终还是选择了算法岗。

我在boss直聘、拉勾和脉脉上都投递了简历。我个人的经验是:
- 脉脉的回复速度是最快的,一般2天之内就都有回复了,其次是boss直聘,拉勾的投递效率和回复速度都非常慢。
- 主动邀请你投递简历获得面试机会的可能性更高,宜信、滴滴和现在这家公司都是hr或者部门负责人主动邀请我投递的。

4. 面试情况
很幸运,第一个得到面试机会的公司就拿到了算法岗的offer,各方面也都比较合适,在确定薪资等问题之后的2周就入职了。总体来说面试经历比较顺利,但是等待面试结果的过程还是比较痛苦的。

1)分析师岗
偏向业务的拿到了两个面试机会,一个是宜信的商业数据分析师,一个是滴滴的数据分析师。

宜信
宜信的面试非常顺利就过了,跟部门的两个面试官都聊得非常好,拿到了offer。其实,宜信的企业文化非常好,面试的部门也不错,是核心业务部门,因为没有什么社招的经验,在谈薪资的策略上没有把握好,对于薪资不太满意,就没有去。

滴滴
滴滴的面试准备,主要就是面试前一天,在网上搜了一些滴滴数据科学部门相关的面试题,重点准备了一下SQL就去了。
滴滴的数据科学部门的面试挂了,但是面试还是很有收获。让我了解到了数据科学方向上的工作的特点,还有就是滴滴的面试题,非常偏向业务,4道完全基于滴滴业务场景的题目,即在不同场景下的司机侧和乘客侧的运营策略的问题。如果以前对于业务没有了解(不管是互联网中的哪个细分行业的,因为业务知识有些事可以迁移的),或者没有迁移的业务分析能力,基本不太可能面过,因为面试官就坐在你对面看着你答题,答题时间还不能太长。面试数据科学相关大部门下面的岗位,对于统计学和概率相关的知识要求比较高,在面试题里面有4道是关于这个方向的,剩下的一道就是SQL题了。这些只是笔试题,面试交流过程中,还针对实际的业务场景,要求设计一个A/B test,去验证问题。我在这个问题上答的不太好。

2)算法岗
算法岗,我拿到了现在入职的这家公司和腾讯微视部门的面试机会,腾讯约了面试的时候,但是部门的人并没有电话沟通,因为已经确定入职现在这家公司了,我就没有去和当时来电话的hr在沟通。至少这是一种认可,帮助我增加了很多的信心。

面试准备
1. 我在网上找了一些面经和机器学习算法岗面试题的总结,在集训营上边学习边刻意的根据这些面试题去总结知识点,以自己的方式进行表达。
2. 集训营算法知识类的课程讲完之后,我开始每天利用上下班地铁通勤各一小时的时间,开始刷七月在线APP上面试大题中的机器学习的题目,到4月中下旬把140多道题目从头到尾都认真的过了一遍。先过考的比较多的题目,再过比较细节的题目。
3. 面试之前的几天,集中把《百面机器学习》这本书和面试中常考的几个算法和一些知识点,全部刷了一遍,做到能够手推公式(实际上,在集训营上课期间,我已经将书中面试相关的重点内容,都已经快速过完一遍了)。逻辑回归是面试必备的,树模型和集成学习也要熟悉。

面试过程
面试现在这家公司岗位的过程中的问题并不太难,只是我没有面过算法岗,自己最开始比较紧张,但是后面聊起来了就放松多了。面试的问题主要是围绕着简历写的项目进行的(面试题目只写了现在还记得的)。
- 简单介绍一下自己做过的项目
- 广告点击率预估:特征挖掘思路,用了有哪些维度上的特征,预测的准确率如何,比上一版本的模型预测准确率提高了多少,模型优化的思路,手推逻辑回归
- 文本多分类项目:Xgboost与GBDT的差异,为什么Xgboost训练速度更快,集成学习有哪几种方式,textCNN模型预测的效果如何,word2vec词向量的长度设置为多少维,word2vec为什么选择这个数量的维度进行数据处理
- 使用spark进行数据处理,数据量特别大的时候,spark会比较慢,这种情况你是怎么处理的?
- 手写二分查找
- 写SQL
- 知识图谱项目:说下项目的基本情况,如何对数据进行进行处理的,结果如何

五、关于文科生转行的建议
1. 如果有转行算法岗的想法,首先应该花一些时间对算法岗在实际工作中的工作内容和日常进行一些了解,确认自己是否适合,是否符合自己的预期,是否认可这个岗位的价值,或者你只关注薪水,那就立刻开始行动吧!不要把大量时间总是花在思考“我能不能转行”这种事情上。
2. 确定要转行后,就要抓紧开始行动。开始了解机器学习,对机器学习有一个宏观的认识。开始看七月在线上的机器学习相关的视频课程,如果曾经没有接触过编程,每天下班后都要花时间,开始学习Python入门的课程,动手开始写代码了。
3. 最最重要的一点是要相信自己,对自己有信息。
4. 面试找工作阶段,被面试官怼是比较正常的事情,不要气馁,多积累面试经验,并且把相应方向上的知识基础不断夯实。

六、总结
1. SQL基本为必考项目,我的3个面试都考了。如果对于SQL掌握的不好,面试前需要专门进行准备,一般会考到开窗函数。
2. 手推公式环节上,逻辑回归是必备,其他重点算法都要掌握。
3. 如果不是面试AI相关的岗位(NLP或者CV之类的),机器学习中的Xgboost已经是面试必备的,基础知识要扎实。
4. 谈薪资要有点策略。

P.S. 这个面经,如果不是老师一直催,我想我应该是写不出来的,拖了一周多才写完。希望对其他学员有帮助。
已邀请:

JasonisTOP

赞同来自:


请问您在机器学习训练营选的什么方向呢?

要回复问题请先登录注册

收藏七月在线,一起向大牛进阶

ctrl+D或command+D可以快速收藏哦~