职业规划
从今年春节到三月初,一直没决定以后到底从事什么方向,都知道最近几年人工智能、机器学习比较火,算法岗自然是大家挤破头想去争取的。年后面了一家小厂的算法岗,一面就挂了,惨不忍睹,具体细节在下一段,这里只是谈谈我对职业规划的理解。大学稀里糊涂地进了计算机学院,这是我最初没有想到的,因为我觉得自己算是一个比较喜欢读书的,可能学习跟文科方面的专业,比如语言、金融这些。入了坑之后,觉得计算机还挺热门的,工资也在众行业中位居前列,所以下定决心学好编程。
大三因为高三的名校情结考了研,说来挺神奇,明年就毕业了,这还没学什么东西呢,除了自学和上课,就是苦逼地看外文文献。看懂那是不存在的,只能边谷歌翻译边强行看,看多了有些名词就比较熟了,但还是很头疼,内容无非就是深度学习之流。
我妈和其他人希望我读博,哎,现在都快崩了,还读博,怕是不想要头发了吧。天生不适合搞科研、写论文,我坐得了冷板凳,但要我整天坐那儿研究文献、写论文、调参,算了吧,还是结婚生孩子吧。我这个人,用我朋友的话说就是全事业型,我需要一个人在后方支持我、帮我照顾打理好家庭,我专心负责赚钱,我的内心越安定,我就越有动力,我女朋友就是这种人,嗯,跑题了。
杭少石跟我一样,决定找研发,他是想提高工程能力,觉得算法现在趋于成熟,除了要考虑合适的模型、调参,对代码的coding能力帮助不是很大,相对来说代码量少一点。对Java有种执念,成天抱着大黑书看,还时不时想一些很有深度的问题调戏我考我。我呢,主要还是为了三十岁以后考虑,我在大厂干不了几年,前几年为了多赚点钱肯定是要拼了的,但这些一线厂加班熬夜是常事,手机24小时开机待命,我这个相对顾家的人就扛不住。三十多岁肯定为了以后多陪家人还是会去国企或者垄断企业,这些地方相对来说比较舒服,基本就是维护系统的日常运营就行了,所以这些因素加起来我才下定决心找研发。
从去年9月到今年3月,啃了一个小项目,学了Redis,leetcode和剑指刷了三遍,J.U.C包的源码啃了一些,存储引擎和分布式zk也因为面试的需要了解了一些内容,目前重新在啃设计模式,暑假针对面试的提升计划也要安排上了。
春招经历
春招一共笔试了360、头条、腾讯、七牛云和招银网络,每场基本都过了80%的题,当然跟我平时的刷题是分不开的,其实也不算很难吧,不知道是不是实习比秋招要简单。面试了头条、阿里、猿辅导、腾讯和珍爱网。有一些插曲微博都吐槽过就不多说了。
最开始是小厂的算法面:
- 先介绍深度学习网络结构的发展历程,从AlexNet到VGG再到ResNet再到DenseNet。为什么DenseNet效果可以比ResNet更好
- 介绍深度学习优化方法的研究脉络与发展历程,从SGD到Momentum再到Adagrad和RMSProp,最后详细讲Adam
- 时间序列GARCH模型知道吗?解释一下时间序列AR和MA模型
- 标准正态分布的一到四阶中心矩是多少
- 贝叶斯公式知道吗,什么含义
- 朴素贝叶斯和决策树的差别,各有什么缺点?再加上SVM呢?
- 知道股市收盘价,应该怎么预测?
ORZ,一个小厂怎么这么多问题,全程都是懵逼状态被完虐。很多都随便回答的,而且我一直都是走的DL,ML方面的了解得很少。大厂的算法岗就不谈了...不知者无罪。
头条和腾讯流程都走完了,都挂在HR面。前一个让我转测试,后一个让我转语言,果断拒绝了。我特么找个工作还提这么多要求,搞事呢。珍爱网HR让我去深圳现场面总监面,我这还要上课呢,去你个头...阿里三面已经一周没来电话了,大概率凉了,其它几家二线厂就不面了,已经面不动了,拒了邮件。每次面试都要吐几升老血,真是累,还是好好提升技术吧。
印象最深的是昨天腾讯的视频面,代码题让我写字典树和平衡树的删除,字典树leetcode刷过算常规题,平衡树是什么鬼,还有这种操作...想了十分钟有点尴尬,面试官全程迷之微笑。强行写了一些代码,说了一点想法,不过最后还是没有为难我,让我手写了个堆排就直接过了。
大厂的面试风格都不太一样,阿里注重细节,底层源码都问得挺仔细。腾讯多半是C++的语法、STL和操作系统,C++相关的问题我一般都用Java中类似的内容去回答的。
面试题的话整理得比较多,这里贴一点觉得质量比较高的问题,其实每一面的大概范围都类似,只是问法略有区别。如果秋招有想找研发的朋友可以微信找我,我过几天再整理一下分享。
阿里:
- HashMap在高并发下存在的安全性,为何会导致CPU被100%?
- AQS同步队列和CAS的底层实现?CAS的不足?
- ReentrantLock的公平锁与非公平锁具体实现过程、区别?
- InnoDB引擎与MyISAM引擎
- 数据库索引优化问题、B+Tree的索引结构?
- 线程池的参数?执行流程?
- Java内存模型的特性?volatile关键字?
- JVM内存结构?垃圾回收算法?什么时候会Full GC?
- Redis的数据结构?持久化?字典的渐进式哈希怎么实现?
- 了不了解分布式锁?Zookeeper和Redis的分布式锁的区别?
腾讯:
- TCP和UDP的区别,TCP的流量控制与拥塞控制
- TCP为什么要三次握手,两次行不行?四次挥手?
- 进程如何请求资源?如何通信?
- NIO与BIO的区别
- 红黑树的特点和增删改查
- 分布式索引?
- 大数据查找问题(Bitmap)
- CAP和BASE理论
视频面的代码题:
- 快排
- 二叉树的层次遍历
- 最长升序子序列
- 平衡树结点的删除
- 字典树
一点感受
最大的感受就是学校学的跟工作需要的完全不是一回事,如果就是学校学的那些东西,会被虐得渣都不剩。读研的这段缓冲时间,让我重新审视自己的知识结构,审视自己的不足,前段时间通过画思维导图把所学的知识梳理了一遍,和面试的种种进行了一个匹配,让我知道了接下来的四个月努力的方向。虽然今年春招没有拿到阿里的offer,但我觉得已经达到我最初的目的了。
都说今年互联网寒冬,其实像美团和网易裁员应届生,滴滴封hc,都挺让人不开心的。但计算机缺口也就那么大,不是芸芸大众,越来越趋于饱和,势必会有更加多重且残酷的淘汰机制,但这一切对于每天扎实提升实力的人来说又有什么意义。你寒不寒冬别人都会坚持学习,什么是stay hungry,这就是。否则到壮年两鬓斑白,吃遍生活的苦,眉头褶皱中忆往昔轻狂,现在想想都不忍眺望。
与其说今年是互联网近十年最萧条的寒冬,不如说是未来十年最好的一年。
九月份就要毕业论文开题答辩了,学的都是在面上,还没有什么头绪,为了顺利毕业也只能牺牲实习的时间了,加油吧,最后的冲刺,与大家共勉。
网友评论