这篇文章应该很早就写了,由于各种各样的事拖到现在,终于抽空写了。
分享给大家,互勉。
个人在一所非985,非211学校里就读软件工程专业,菜鸟一个。以下是个人的秋招经历,分享给各位热爱IT行业的小伙伴。
我从投简历,到笔试,再到面试,最后offer的方方面面都说一下。
投简历:这个在8月份的时候,就海投各大互联网公司。直接上图
上图只是部分的公司,后来又投了很多公司,我就懒得更新了。。。
第一部分:投简历这个,我就说说可以在哪些渠道可以获得这些招聘信息吧,我主要从内推军,学校群,各大公司官网和牛客网等获取的。
投简历前,写简历,怎么写,这个我就说说自己的吧,仅代表个人,仅供参考,大佬勿喷。
我是学java的,所以简历的内容一般分:
1.个人的基本信息
2.个人实习经历(指IT实习经历,别写与该岗位无关的实习经历,浪费空间)
3.个人的掌握的技术(比如你学过的框架,懂的语言java,php等,这是核心,对于校招来说,企业很看重基础;社招的话,看重经验)
4.做过的项目
5.自我评价
第二部分:笔试
来到笔试阶段,个人有点后悔了,实在太多笔试了,从9月份开始考,一直考一直考,考得我都快疯了。而且,还有很多笔试时间是冲突的,最惨的不是这个,最惨的是不会做编程题。(这个时候,建议你去赶紧刷了牛客网的剑指Offer,最好结合一下左神的视频来学习,亲测非常有用)
第三部分:面试(最重要的一个环节)
我接到的面试通知:百度,老虎证券(已拿offer),菜鸟联盟,三七互娱(已拿offer),小米(已拿offer),迅雷,n多个不知名小公司(一会儿我吐槽一下)
我先上面经:
百度一面(9月18日,19:00)
1,自我介绍
4,聊项目,不断问技术
5,二叉树有哪些,分别有什么特点
第一:满二叉树
第二:完全二叉树
第三:搜索二叉树(左边小,右边大)
第四:哈夫曼树(带权路径最小的二叉树)
第五:平衡二叉树(空树或左子树和右子树的高度差不超过1)
第六:红黑树(1.根节点必须是黑;2.每条路径所包含的黑节点数目必须一样;3.每个叶子节点的空节点都是黑;4。节点要么是红,幺妹是黑;没第三种
颜色;5.父节点是红,两个子节点必须是黑)
6.数据库连接池是为了解决什么问题
7.mysql数据库的索引有哪些?我说有聚集索引和非聚集索引,组合索引等等巴拉巴拉
8.聚集索引和非聚集索引分别是怎么实现的?
9.多线程这一块,你了解过JUC没,你讲讲你认识哪些?
10,如何保证生产者速度大于消费者速度
11,如何产生不同的id,这里不断抠细节
12,算法题(从左上角走到右下角,求最短路径。考广度优先遍历)
13,算法题(A去,B才去,C去,BD一定去,等等)考“图”
11:问面试官问题
整个过程持续了80分钟,无非就是看你的简历来问东西,然后来知识点串烧,最后来一下代码实战编程。
老虎证券一面(9月18日10:30)
1.自我介绍
2.concurrentHash了解过吗?看过源码吗?
3.jvm,为什么有两个survivor区?
说说jvm的内存结构?
4,左右子树互换,怎么实现?
5,写sql语句,一天内,找出访问量前10的股票的id和name。
时间函数:date_sub(now(),interval 1 day)
6,一千万数据,找出前50条数据。
7,redis的zset怎么实现的?
有序的集合,双向链表。
8,了解过rpc框架吗?
9,volatile了解过吗?
10,AQS怎么实现的?
11,BlockingQueue怎么实现的?
12,synchronized和lock
13,innodb和myisam的区别
老虎证券二面(9月18日11:45)
1.自我介绍
2.说说对spring的理解,我就说了IOC和AOP
3.那你讲讲IOC是如何实现的?
4.多线程了解吗?讲讲ConcurrentHashMap和CountDownLatch的认识
5.semaphore和闭锁的区别
6.了解过JVM没?讲讲你认识JVM有哪些?
7.说说为什么要双亲委派?java中一定要用双亲委派吗?
8.了解过JVM调优没?了解过,那你一般怎么判断的和用什么方法调的?
9.你现在用的是JDK8吧?是。那了解过JDK9吗?了解过。那说说JDK9和JDK8有哪些不同?默认垃圾收集器改为了G1。说说对G1的了解?巴拉巴拉一堆。面试官面对我的回答似乎有点意外(我知道稳了)
10.于是接着问我,对薪资有什么要求?(我就哈哈哈一笑:“哈哈哈能养活我就好”)
11.问我有什么问题想问?(我就问:基于我刚才的面试情况,你觉得我还有哪些方面需要改进?以及我进来后,负责什么业务?)
老虎HR面(9月21日,电话面)
1.个人情况
2.是否单身
3.对于薪资要求
4.智力题
5.问HR问题
三七互娱(9月18日15:00)
一面
1.MySQL的存储引擎以及其底层实现
答:MySql的存储引擎其实有很多。但官方主要使用的一般有Innodb和MyISAM。这个时候你可以继续向说着二者的区别,比如:
一,是否支持事务(这里可以延展到Spring的事务管理);
二,行锁和表锁,InnoDB默认的是行锁,但也可以切换为表锁。MyISAM只有表锁。(在这里,可能会成为面试官问你的下一个问题:Synchronized和Lock)
三、全文索引。在mysql5.6版本之前,只有MyISAM支持全文索引。5.6之后,InnoDB和MYISAM都支持。(在这里,可能会成为面试官问你的下一个问题,可能会问你:什么是索引?索引种类?怎么建索引?索引的底层实现?索引失效问题以及如何处理失效问题?)
四、性能讨论,这个话题,深入研究过,就大概能说个一二,没研究过,也没事。
我刚刚就一个问题进行了讨论,其实下面的问题也差不错一样答法。发散你的思维,把有关系的知识点,都能说说。
2.innodb和myisam的区别
3.多线程的锁(你可以答锁的粒度,锁的分类,锁的底层实现)
4.线程threadpoolexecutor的参数(看一下JDK源码就知道是哪几个了,不慌)
5.Linux命令(除了常规的命令,最好还要掌握一些有关内存,cpu等高级命令,比如top这些,最好能实战运用过)
6.CAS
7.多线程的api(这个得看你掌握哪些,信手拈来的可以有)
8.jmm
9,项目介绍和解惑
二面
1.Integer和int区别
2.arraylist的初始容量和api
3.项目介绍
4.socket编程
5.聊骚
三面
1.自我介绍
2.为什么做游戏行业
3.抗压能力如何(就是能不能加班的意思)
三七互娱的java岗技术栈(或者说面试考哪些吧:只面向校招)
1、java基础:比如集合和多线程是最爱问的,因为我们公司做游戏的,多线程经常用
2、常用组件:spring\hibernate\mybatis\redis等这些
3、设计模式
4、算法:一、快排;二给你一道算法题做做
5、计算机网络:就是TCP/UDP
6、MYSQL:这个也是重点,好好复习。
7、JVM:内存结构、垃圾回收等
小米三面
1.自我介绍
2.首先说Object的所有方法,然后问每一个方法的实现机制
3.刚才你说到equals()方法,那你讲讲String的equals()的具体实现
4.String的equals()中是怎么判断类型是否一致的
5.问我Spring用过没?
6.问我IOC的实现机制?用到哪些设计模式?
7.你用过动态代理没?用过,那你知道AOP里面的动态代理几种实现方式?分别是什么?JDK、CGLIB
8.你讲讲CGLIB
9.了解过Spring的事务吗?
10.从事务这里过渡到SQL中的事务,问我事务的隔离级别?分别说出每个隔离级别的解决的问题?
11.问我怎么优化SQL?我这里提了一下索引和其他
12.问我索引的底层结构?然后我就说B+树,然后给面试官分析了B树和B+树的区别,以及解析为什么SQL用B+树,而MongoDB用B树
13.问我了解hash索引吗?我说了解,然后就不问我了
14.问我知道聚集索引和非聚集索引吗?说说二者区别,这里我又提到了Innodb和myisam
15.问我innodb和myisam的区别
16.除了动态代理,还了解过其他设计模式吗?我就说了自己比较熟悉的单例、工厂、适配器、装饰
17.问我工厂方法和抽象工厂的区别
18.TCP的三次握手?我就巴拉巴拉将,我问面试官,要不要解释为什么两次握手不行,巴拉巴拉一堆。说完又问面试官,要不要讲四次挥手,他说不用了。
总的来说,2-4就是考察java基础
5-9就是考察框架
10-15问数据库
16-17就问设计模式
18:计算机网络
然后顺便提一下一面和二面吧!!!
一面就是简单粗暴:三道算法题
二面就是问你项目,死扣项目的细节,面试官问我是怎么考虑的?
以上是个人的java面经,总结上述的面试经历。
面试官问的问题,一般就是从简单,到困难。
基本要求:基础知识扎实(全面)
加分要求:对基础知识理解深刻(深度)
更厉害的,就是要求你看过源码,理解源码。
通常面试官问的问题,都是“知识串烧”。
举个例子:
面试官:了解过HashMap吗?hashmap和LinkHashMap的区别?
你:HashMap是无序的,LinkHashMap是有序的。
面试官:那你说说LinkHashMap和TreeMap的区别?
你:TreeMap和LinkHashMap的key都是 有序的,TreeMap的内部结构是红黑树,LinkHashMap的内部结构是链表。
所以自己看面经的时候,也可以往知识串烧这方面多想想,无论是对知识的掌握还是对面试,都很有帮助的。
总结:其实总的来说,现在回头一看,想拿offer,就是:让面试官喜欢你。喜欢你的原因可能有:
- 1、面试官因为你思考问题的方式而喜欢你;
- 2、面试官在你身上看到了他当年的模样;
- 3、当然,面试官也不是傻的,你的技术能力肯定也会考虑的。
让面试官喜欢你这句话的意思:在很多人的专业能力都差不多的时候,为什么面试官选择你,而不选择其他人,因为面试官可能就是你以后的老大,你以后的老大要和你相处,肯定挑一个自己喜欢的相处呀。
深呼吸,不慌,祝你们秋招面试顺利。加油