大家好,我是峰哥!
今天分享的是一位学习小伙转型学习以及跳槽的经历,刚开始转型进的外包,然后把这段经历当跳板又进了一家还不错的甲方公司,目前已过试用期,学习历程和经验都是比较值得参考。以下是原文:
-------
一、自我介绍
大家好,我叫cherish,在深圳,今年26岁,2016年6月份毕业于普通的一本院校,学的是自动化专业,除了java没有学过,基本上都学过。
毕业后去了一家设计院实习,月薪到手4k左右,主要是靠工程拿提成,一干就是二年,19年1月份离职.看到当时的朋友都转行去学软件了,自己也想了很多,不想干这个,工程干的太累,工资又不高,这点钱根本不够,再加上父母年纪也大了,19年2月份去了武汉某所培训机构报名学习大数据课程。
二、学习历程
培训感悟我在培训班大概学了6个月左右,培训班我觉得如果你自学能力够强的话,没有必要报培训班,每个阶段的老师水平参差不齐,有些底层的原理他们都不懂,完全浪费时间,培训这段经历我也不想多说了,培训过的人应该深有体会的。可以参考峰哥写的从健身教练角度聊聊培训机构
学历问题我觉得学历是个敲门砖,并不代表你学历不高就找不到工作,我身边有大专找到大数据的有很多,学历只代表过去,不代表将来,既然学历已成过去,那么我们现在要做的就是好好学习,要比别人更努力。经常看到别人入职大厂什么的,你只看到了别人的结果,你有看到别人背后的付出吗,不要好高婺远,一步一个脚印,先把基础打扎实再说。
再说说你们最关注的科班与非科班的区别吧,我觉得科班有的确实厉害,因为人家在大学四年不断的努力学习,基础特别扎实,但更多的人是在大学里面混,有很多大佬并不是计算机这个行业的,这些我觉得都不是很重要,有能力的人照样优秀,不要被一些条件限制了自己,既然想从事这个行业你就要敢于做,我见过很多每天想法很多,依然没有改变,想的再多没有用,你只有做了才知道。
三、学习路线方向
个人推荐先学一门语言,因为掌握一门语言很重要,你在学习一种语言的同时也在锻炼你的编程思维,学习的过程中代码一定要多敲,至于详细的学习规划自己可以先琢磨,如果没思路或没底一定要找前辈帮你参考,节省时间成本。
时间允许的情况下一定要去了解数据结构算法,操作系统,网络协议等,我觉得只有掌握了这些你才能走的更远,这个我每天一直在花时间补。
心态问题峰哥一直强调的空杯心态,心态一定要好,有很多时候会比较浮躁,特别是面试的时候,你会发现你投递的简历没人回,这些都是正常现象,甚至有些时候你学习后面的知识忘记了前面的,这些都是很正常的现象,在这里我要强调一点,学一个知识点的时候一定要多思考多总结,你要学会把别人的知识变成你自己的,这样你才算是真正会了,心态切记一定不要浮躁。
求职历程刚开始培训没结束的时候就让我们写简历,简历就给几个模板往里套,项目流程,数据量各种都不懂,后面通过不断的面试总结才清楚了大概的整个流程。
虽然清楚了流程还是很困难,因为有的面试官问技术,有的是问业务方面的,遇到问技术的面试官还可以聊聊,遇到问业务或者给些生产环境遇到的问题就直接懵逼了。面试中最大的问题就是你如何转行到大数据这个行业的,这个一定要想个理由,不然他会觉得你是培训出来的。
就这样课程结束后就直接去深圳了,一周之内就入职了,直到2月份公司让我去面试,因为我一直无法去深圳上班的缘故,期间面试了很多大数据都是问java这块比较多。
当时就想起来了我之前通过公众号添加了峰哥,关于峰哥学习群的#转型案例#我全部都仔仔细细的看过,最后因为java问的太深了,想着有个前辈帮忙规划下路线,不至于摸不到重点了。
于是就找到了峰哥,峰哥给了些资料我就开始一点点的学,后面发现面试的岗位忽然不问java了,全部问大数据,即使这样java也不能丢,还得继续学,因为时间的原因,之前背的大数据知识基本忘记的差不多了,所以就又开始背,一直到今年的4月份离职了,因为疫情的原因辞职了,就又开始找工作了。
这个阶段就异常痛苦了,简历投递石沉大海,每天投上百分简历回复的很少,很多都是挂着岗位不招聘,后面去请教峰哥,峰哥耐心的指导一波又开始投递了,但是很不幸的是甲方很少,大部分都是外包岗位,于是乎我就想先借着外包岗位多积累面试经验。
突然发现外包问的基本上都是简单的技术,大部分都是写sql,会写sql基本就能入职了,后面通过不断的总结不断的学习,以及不断的请教峰哥,峰哥也给出了一些经验,前前后后持续了大概一个月多一点,深圳这片的外包基本全部面到,甲方也面了10多家,最终入职了一家还不错的甲方,薪资比外包公司高6K。
四、说下oppo的面试经过
一面:是个年轻的小伙子,首先上来自我介绍,看了下我的简历,直接写笔试题,5道sql题,两道算法题,这些题目都还比较简单,然后针对你写的sql和算法问了下有什么可以优化的空间吗,简单的说了下,然后问了些sparkstreaming的消费方式及区别,kafka的高性能,hive的数据倾斜优化以及zookeeper的一些相关知识,由于这些面经都有的,所以没什么太大问题。
二面:更多问的是数据库相关的,索引,数据库底层,然后针对es问了很多,因为我简历上写了熟悉es,这个面试官之前是百度专门做搜索的,所以他问的es问题基本没回答上多少,后面问到了hive的数仓设计,模型设计什么的,这部分之前都有了解过,没什么太大的问题。
三面:这一面就是架构师,这个问的就很有深度了,了解到我用过java,问了hashmap的底层实现,扩容机制以及hash死循环的问题,问了springcloud有哪些组件,每个组件是干什么的,gc回收和jvm问的很深,jvm基本就是给出场景让你优化,问到kafka源码里面与tcp有几次连接,kafka线程池的问题以及flink方面的源代码,毫无悬念挂了。
面试总结:自我介绍一定要准备好,简历上面的技能点一定要注意,不会的一定不要写,面试官在招聘网站拿到你的简历后,会对你的技能进行梳理,然后你去现场面试的时候,面试官会对你写的技能进行提问或者问一些他们工作中用到的一些技能栈,有的面试官会问实际生产环境的一些问题,这块没做过真的是没办法。
建议把一些生产环境问到的点,可以和身边的朋友多讨论或者去对应的群里进行提问,然后再进行总结,不管你是背题库还是看博客或者说是和别人交流的一些知识点,都要把这些知识点根据自己的理解整理成自己的,关于数据结构这一块的话先大概了解下,后面有时间一定要去深入学习,算法必须要去刷题,不断刷题不断总结。
前期刷算法没思路很正常,拿到一个题目想个大概5分钟左右,实在想不出来就去看答案,看完答案后再自己写一遍,同时要学会去分析时间和空间复杂度,然后把思路整体下,我建议代码多写几次,然后过一段时间再把之前的刷的过下,算法没有别的方法,就是不断刷不断总结,关于sql这个很重要,基本每次面试大数据都会写sql,sql一定要掌握。 项目方面一个好的项目决定了你是否有面试的机会,项目需要准备你的项目背景以及整个项目的流程,有哪些模块,你主要负责哪些,项目中遇到的问题是怎么解决的以及准备一个项目的亮点,这个在oppo和vovi面试中都有被问到,这些需要好好准备下,如果是数据仓库他会问你你分析过最难的指标是什么指标,这个你也可以提前准备下。
五、总结
1.面试大数据岗位sql一定要过关,因为大部分做的都是离线项目,需要写sql的。2.算法有时间一定要刷,刷完一定要总结,推荐看英文的网站,多学学国外大神的解题思路。3.不要怕面试,每面一次回来进行总结,不要一直准备知识点不去面试,因为知识点是永远准备不完的,一定要去面试。
4.一定要给自己定长期计划和短期计划,针对计划进行学习,然后在面试中查漏补缺。5.学习新技术一定要看官网,多看英文文档。最后感谢峰哥的耐心指导,希望大家都能找到自己满意的工作。
六、转行必备品质
最后,峰哥作为转行过来人以及见证了学习群N多读者转行经历,分享下一些看法。