一年多Java开发工作经验面试总结
最近换了家公司,第一次跳槽,其实很早就有这个打算,只不过自己的技术水平不够,不敢随便裸辞,在今年的九月份尝试过面试几家,每经过一场面试,我都会总结今天的面试内容,由于在职期间去参加面试,其实是很不方便的,因为要请假,请假的理由也不知道怎么编,还有就是如果那些公司急着要人,也不会考虑在职中的你,所以过完国庆回来,我就申请辞职了;辞职了之后马上疯狂的投简历,收到的面试邀请也挺多的,从十月中旬面试到十一月低,才得到比较满意的offer。
介绍一下个人的情况,本人是17年毕业的,只在一家公司实习到转正,一直做到现在,所以说工作经验非常欠缺,一年多经验是比较尴尬的,处于一个不上不下的位置,很多公司喜欢招三年以上工作经验的,或者直接招应届生来培养。还有在前一家公司所做的项目已经上线一段时间了,在17年的时候就有比较多的需求,忙得要死,18年就好很多了,因为基本上该有的需求都在17年的时候补上了,今年的任务都是在做一些小改动,跟养老差不多。其实辞职的主要原因是我在上家公司干了一年多也没给我涨工资。所以如果你们公司也是这种情况的话,还是赶快找下家吧。
说说一下在面试期间的情况吧
投简历我觉得boss直聘最好的,所以用boss直聘足够了,投简历呢最好先了解这家公司是做自己的产品还是做外包的,建议选择做自己产品的公司,一天最好约一个面试,如果你不觉得累,约两个也行,下午的面试效果最好,因为时间比较多,面试官也有耐心进行交流。面试前一天把时间和线路算好,不要迟到。
面试流程是:
(1)先有hr带你到会议室,让你先做一套笔试题
(2)如果你的笔试题做得不错,hr会带你去见用人部门的主管进行技术面试
(3)如果一次面试直接给offer最好的了,不过也有一些公司有复试环节
(4)如果收到复试邀请,说明机会比较大了,复试的面试官是技术总监,技术问题基本没有了,只是问一些基本情况,没什么问题就可以有hr跟你谈薪资了
(5)如果这个岗位是6-11k的话,他们一般都是给到6-8k之间,所以要知道 这个情况,hr给你说明公司的福利和一些情况
笔试和面试的常见问题:
(1)集合相关
HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底层实现。
HashMap和Hashtable的区别。
ArrayList、LinkedList、Vector的区别。
HashMap和LinkedHashMap的区别。
HashMap是线程安全的吗。
(2)线程相关的问题:
创建线程的3种方式。
什么是线程安全。
Runnable接口和Callable接口的区别。
wait方法和sleep方法的区别。
创建线程池的4种方式。
(3)JVM相关的问题
介绍下垃圾收集机制。
垃圾收集有哪些算法,各自的特点。
类加载的过程。
有哪些类加载器。
(4)设计模式的问题
先问你熟悉哪些设计模式,然后再具体问你某个设计模式具体实现和相关扩展问题。
(5)数据库相关的问题
有没有SQL优化经验。
Mysql索引的数据结构。
SQL关键字的执行顺序。
有哪几种索引。
什么时候该(不该)建索引。
(6)框架相关的问题
Hibernate和Mybatis的区别。
Spring MVC和Struts2的区别。
Spring用了哪些设计模式。
Spring中AOP主要用来做什么。
Spring注入bean的方式。
什么是IOC,什么是依赖注入。
Spring事务隔离级别和传播性。
介绍下Mybatis/Hibernate的缓存机制。
Mybatis的mapper文件中#和$的区别。
Mybatis的mapper文件中resultType和resultMap的区别。
Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的,其内部是怎么实现的。
(7)其他问题
接口和抽象类的区别。
int和Integer的自动拆箱/装箱相关问题。
==和equals的区别。
重载和重写的区别。
String和StringBuilder、StringBuffer的区别。
try、catch、finally都有return语句时执行哪个。
常用的linux命令。
最后一点经验:
(1)认真写简历
(2)把面试当作一次技术的交流,不要太在意是否能被录取。
(3)不熟悉的技术不要主动提。
欢迎关注我的公众号