2018年6月JAVA开发面试总结

2018年已经过去二分之一,为了纪念今天这个特殊的日子,分享一篇关于自己(JAVA工程师)的面试经验来提高大家的面试技巧:

1、新东方

    面试问题:笔试+当前项目技术架构+Ningx负载均衡方式+JAVA集合类+JAVA常见线程池

    面试特点:问题很基础

2、尚德

   面试问题:当前技术架构+微服务+各种OOP+OOM+DDT+UML+单元测试+对各种缩写的理解

   面试特点:问的很抽象,不问基础,直接上架构+各种概念

3、玖富

   面试问题:笔试题(Feb+手写HashMap+手写BlockQueue+手写CopyOnWriteArrayList+大文本分析)+数据库事务+隔离级别

   面试特点:比较考察手写代码的能力

4、搜狗

  面试问题:上来两道算法题-单链表翻转-统计树某层的结点数+自我介绍然后他会在你介绍的时候插话问你(问你的时候切记不要和他聊太多JAVA之外的其它东西即便他追着问,想办法绕回正轨,我就是因为再和他聊到Zabbix这块他提问了然后聊完之后他给我一句:你应该去做运维。然后直接PASS了)

面试特点:算法+得会聊把握主动权聊自己擅长的JAVA相关的

5、阿里巴巴

  面试问题:各种JAVA基础(JMM+GC算法+GC+JUC+常见集合类+线程池+Syn+ReetrantLock+volatile),OOM处理,JAVA进程导致CPU飙升问题处理,数据库事务+隔离级别,数据库常见锁,NIO,设计模式,可能会有简单算法题,最后会和你聊技术亮点(没有的话也得编几个,哪怕没那么亮)

面试特点:很全很基础,阿里的面试题可以看出阿里很重视这些基础,平时稍微注意一点都基本可以过三面,但是和项目经理聊得时候就得想办法找出自己的优势表达出来,不然也是呵呵。

6、陌陌

面试问题:各种基础同5+HTTPS+TCP和UDP比较+分布式锁

面试特点:基础,真的很基础

7、链家

面试问题:各种基础同5+分布式架构+微服务+算法(两个线程交替打印A=1,B=2,A=3,B=4 给一个数组找出里面其中和等于5的要求时间复杂度=O(n))+使用缓存的常见问题

面试特点:很全很基础,但是还得要求对架构有一定了解并且有自己的优化思路,三面和面试官要谦虚的表述自己做过哪些担任什么角色

8、同程艺龙

面试问题:先问你JMM,再问你GC,再问你为啥新生代不用标记清除算法,新生代会有STOP-WORLD吗,JDBC设计模式,工作中有哪些技术难题+使用缓存的时候会有哪些问题+Statement和PreparedStatement区别。

面试特点:不全但是很注重拓展思维,他们要看的是你的创新思维和技术亮点

9、美团

面试问题:基础同5+泛型实现原理+三个有序数组归并为一个+ES+DOCKER+SpringCloud+SpringBoot+Netty+Dubbo

面试特点:啥都问,面试官技术都比较牛,而且感觉对基础要求比阿里还要高

10、乐学网

面试问题:Spring下面有哪些开源项目+JPA+数据库主键设计+分库分表

面试特点:不问JAVA基础,上来就问Spring的开源项目,但是面试官很好说话,你稍微自我表达下自己擅长哪些基础,项目中遇到哪些问题怎么解决的,也给过。这里为什么把乐学网也有机会出现在这呢,是因为他们的CTO很NICE,国美出来的大牛。

11、去哪儿网

面试问题:自我介绍+你处理过哪些问题+他们会基于这些问题去问,web.xml里有哪些配置,Top命令负载参数一般是多少

面试特点:问的有些偏,但面试官很好说话很NICE,表达下自己的长处

12、蛋壳公寓

面试问题:基础同5+分布式锁+微服务+算法+JS闭包+数据库设计优化

面试特点:问的很基础但很全

13、滴滴

面试问题:面试官很热情的跟你聊天,让你自己聊技术,他会看你能聊到多深然后会插话去问更深入的技术点,这时候你可以聊深度也可以聊广度,一面很容易过。然后二面聊技术亮点,没有亮点就OVER。

面试特点:没法评价,一面很容易,二面。。。

14、知乎

面试问题:面试官也是跟你聊天,然后聊一些JAVA常见的线程池啊,常用的集合类啊,最后让你设计个数据量很大的高并发的缓存,最后说一下JDK的源码里常见的设计模式

面试特点:贴近实际,但是问题并不简单

15、字节跳动

面试问题:聊聊MySql的MVCC,JAVA的ConCurrentHashMap实现原理,JMM,G1和CMS,对比SpringCloud和Dubbo,还问一些JVM调优的思路以及调优后的效果具体优化了多少+算法(单链表里奇偶交叉切奇数正序偶数逆序怎样实现O(n)级别的排序)

面试特点:技术点挖的比较深,算法问题难度一般


面试经验:

     1、JAVA基础要扎实 OOP+JMM+GC+Collection+JUC+SYNCHRONIZED+VOLATILE

     2、MySql的主从同步原理+事务+事务隔离级别+分库分表分区+索引实现原理+了解聚集索引

     3、框架要会几个SpringMVC+Spring这俩得能说出来SpringMVC执行流程,Spring的AOP和IOC,AOP要能说出其中核心动态代理的两种实现方式以及为什么要有两种实现

     4、Nginx五种负载均衡策略+为什么叫反向代理

     5、Redis集群或者说分片策略,客户端分片+代理分片+Redis3.0Cluster,了解RDB和AOF区别以及主从同步原理

     6、MQ了解

     7、分布式锁的三种实现优劣

     8、设计模式了解几个Spring里的就行

     9、一般面试的算法都比较简单,这个没啥说的,如果没学过数据结构的可以自己研究下快排+二分查找+树的遍历

     以上都是技术点,也都很基础,但是过一二面这些肯定够用,过三面的话就需要你对项目有个整体的把控能力了,能发现并说出项目的亮点以及优化思路才能过三面,不然再多基础也没用。

猜你喜欢

转载自blog.csdn.net/u010285974/article/details/80858261