距离2018届毕业,还有不到半年。
- 我是普通本科,投递Java后台开发。截至今天,本人已获得CVTE、金蝶、锐捷网络、百度上海研发中心实习生、深信服、美团、北京好未来的offer(按时间获得的先后顺序)。滴滴出行,刚面完二面,在等结果。
- 对于没有参加2017 IT互联网公司秋招的我,除了CVTE是2017年3月份参加春招然后实习获得的offer以外,其他的均是从2017年11月份到现在,参加内推和补录获得的。为什么没参加秋招,就不说了,太悲伤……。互联网公司应届生招聘,已是夏招。
首先,想告诉你:一切都来得及,千万别放弃。距离2018春招,还有一个月,要努力,机会总是有的。
再说说自己有多弱:
1、Java里面的String,支持的最大字符长度?(锐捷二面)
我说不知道……
2、MySQL一张表,最多能存储多少行记录?(锐捷三面)
我说没注意过……
3、一个几百外行的系统,出现持续CPU满负荷运载,可能出现了什么问题?(锐捷三面)
我说是DDOS。他说DDOS也会有停止攻击的时候,这是一直持续!
我说可能是死循环。继续问几百万行代码如何定位死循环?
我说打断点定位。他说兄弟,几百万行代码,你去打断点定位哦!
当时无话可说了,……<T……T>就说不知道。
4、mybatis如何防止SQL注入的?(美团二面)
我说没了了解过……
5、TCP中close_wait状态时怎么回事?(美团二面)
不知道……
6、synchronized修饰static方法和类的实例方法,有什么不同?(美团二面)
不知道……
7、DispatcherServlet相关源码有没有看过?(美团三面)
没有……
8、拦截器用过吗?实现原理是怎样的?
用过,不知道原理。
或许,这些问题对你来说都很简单。但是在我看来,这些问题作为面试题目,考察的不止是知识面的,其实还有对新问题的洞悉、思考。后来挨个搜索答案:
1、String,支持的最大字符长度?答案是:字节数组的最大长度(Integer最大值)
这么看来,是不是这个题很容易。学过数据结构的都应该知道字符串是最基本的线性数据结构。都知道String用字节数组来存储,那就容易了。
2、MySQL一张表,最多能存储多少行记录?
MySQL版本3之前,是限制一张表最多行数,具体指没记,好像是65535。但后来的版本,不作限制。但是受文件系统单个文件大小的限制。
3、几百万行代码如何定位死循环?
Jconsole和jstack工具的了解和使用。
4、mybatis如何防止SQL注入的?
当时一听,心想mybatis没咋了解底层实现,以为这框架在SQL注入方面,难道还有与PreparedStatement 更叼的实现!就没继续说了。结果答案就是PreparedStatement,使用预编译的SQL。
- 没见过的面试题、智力题,永远枚举不完;其实也不用大抱侥幸心理,期待面试题目有自己碰到过的……
- 因为那些身地实战的面试官,太老练。这么多年,实际开发随便遇到的什么坑,问你一下,就over了。自己碰到的一个,RuntimeException运行时异常,异常捕获机制各类编程语言大同小异,在实习阶段,调用第三方接口返回结果的地方,需要异常捕获,其中有部分别人写的代码是threw new RuntimeException(),而我用的threw new Exception() 。原本以为对异常机制有点了解,以为用起来不就那么回事吗。其实,原先知道的,真的运用起来 、差远了。Xxx问我既然RuntimeException是继承Exception的,为什么还需要弄一个RuntimeException的,它又与Exception有什么使用上的区别呢?
- 为什么RuntimeException更多人选择?为什么RuntimeException在事务处理等场景下更崭露头角?这些不去了解细节,还真不知道。
那怎么办?如何提高?
1、 基础内功很重要
- 即使你没有实习经历,如果简历上再没有几个项目,那简历筛选和初面,还能面你什么?
那这怎么办!——基础内功。 - 基础内功不太好说,也不好考察。但是我认为,在一些具体的问题来临时,能想到具体的使用的策略,就是好的。
- 如果你是这种情况,建议你踏踏实实把意向工作使用的编程语言 掌握熟练。就Java而言,建议你花一个周末,去模仿实现一个Windows工具(截图、画图、音乐播放)之类的小工具,可以先网上下载一个,运行看看。然后学习一下相关API,再去实现模仿一个,不能抄代码,只是借鉴API,比如截图是调用的那个函数,然后如何保存图片调用哪个函数等等。其他类型的学习,都是一样,看别人做出来的东西,感兴趣的完全可以自己去实现。
- 别看就这小小的东西,实现起来,运用一个语言基础,可以说是用到这个语言的很多方面。如果想要做的更好,性能和功能更完善,什么设计模式就需要用进来了。
注意:为了学 而学,和为解决问题而去学习是 不一样的,达到的效果也是不同的。 - 只有当你在面临问题时,运用你学习的知识,去解决,这才是你最喜悦的时刻,也是你觉得“这个知识点(语言基础、设计模式等)非常有用”的时刻,会觉得这个知识点没有白学,这个设计模式简直完美。
2、 不要放弃,多获取招聘信息
不要认为秋招结束,就没有机会了。其实还有很多公司在补录,各个用人单位都面临选人留人的问题,秋招不少同学拿了很多offer,相应的也会放弃很多offer,自然的那些公司就会有空缺出来。
3、 针对性地多投简历
- 针对性地,是要有自己的目标。另外,为什么多投?因为每个人都不一样,年龄、背景、学生时代的成长等,这就会使得每一个筛选简历的人,心里的侧重点千差万别。同一份简历,在不同用人单位筛选时,结果完全不同。
- 我的简历,投过搜狗,校招邮箱、HR的、还有内推的,都没有筛选投过。真的是一次都没有!并不是我非常想去,而是(针对性地,是要有自己的目标)对这些目标的留意,我非常好奇,为什么筛选通不过……
但在好未来(Java后台开发),首先是HR筛选通过了,面试官看了我简历,非常满意,夸赞我一番,他加了我微信,本来定的视频面试,他上来就说,来现在电话面吧。结果……就 水到渠成了。
4、 资讯+人脉
- 多获取招聘信息,多留意目标公司。你要知道,每天官网更新了什么。
人脉,身边的同学,一起投递的人。 - 找人推荐,比自己蛮拼去投好的多。如果简历能到需求部门手上,也会好很多。
时间关系,就不多展开叙述了。近期也在整理之前的面试笔记,如需获取,持续关注哦。另外上面公司,我均有HR内推人,部分也有用人部门的微信。需要的可以联系。