Java程序员从京东、阿里、携程面试回来, 已成功拿到京东offer
阿里巴巴(一面)
阿里找了一个北邮学长的内推,准确来说应该是直推,是他帮我直接录的简历,他本科进的阿里蚂蚁金服,厉害吧?是真的佩服。第一次在官网上填资料,想想马云有多出名,想想蚂蚁金服这样的顶级技术,有些兴奋,有些期待。
录完简历后等待简历评估,原来,找内推不一定能得到面试机会,能不能得到面试机会要经过简历评估(我这才知道,原来内推免笔试可不是那么容易的),毕竟内推能免去在线笔试直接面试,互联网第一梯队像百度、阿里,腾讯的笔试真的很有难度,做过前几年这些公司的笔试题,真的太难了。在阿里的校招群里看到很多研究生研究算法,前端,Java研发的,简历评估后直接变成已回绝没有得到面试机会。心想,我一个研究生,Java研发都是自学的,项目都是自己设计的需求,简历也就一张纸,究竟能不能得到面试机会?
填完资料的一个星期后收到了支付宝的面试电话,突然变得好紧张,居然得到了面试的机会。
自我介绍
简单的介绍一下你的项目
一个有500个用户的广播系统,你怎么做性能优化
当用户提交请求后,却立即按撤回按钮,涉及性能的数据落地问题你怎么处理
Lucene底层实现原理,它的索引结构
ibatis跟hibernate的区别
ibatis是怎么实现映射的,它的映射原理是什么
Java I/O底层细节,注意是底层细节,而不是怎么用
你对mysql有什么了解
说一下数据库事务的四个特性,为什么mysql事务能保证失败回滚
mysql数据库的锁有多少种,怎么编写加锁的sql语句
mysql什么情况下会触发表锁
页锁、乐观锁、悲观锁
tcp三次握手的过程
进程跟线程的区别
redis的操作是不是原子操作
ArrayList跟LinkedList的底层实现原理,使用场景
B+树
一道算法题,在一个整形数组中,有正数有负数,找出和最大的子串
动态规划的思想
你有什么想问的
阿里一面过后变得怀疑人生,真的好多不会好多底层原理没答出来,第二天查状态,变成已回绝了。原来学习不能只学表面,作为一名研发人员,只知道怎么用是不够的,更多的应该知道底层原理,不然出现了性能瓶颈你怎么优化?你怎么扛得住每秒千万甚至亿的并发量?
有很多底层问题没答出来,接下来干嘛?学啊!
携程(一面)
携程又找了内推,直接面试。
自我介绍
介绍一下项目
你的并发项目有做过压测吗
haspmap的底层实现原理,怎么解决冲突问题
haspmap是否线程安全
object对象的常用方法
你有什么想问的
携程一面后被淘汰,其实问题很简单,当初被淘汰了感觉很不解,有些郁闷,只不过是稍微犹豫了一下线程安全问题而已,最后也答对了。但现在想起来,连haspmap是否线程安全都要考虑,根本就不是一个合格的Java工程师,被淘汰也是理所当然的。突然感觉自己学的好不扎实,变得有些焦虑,连java基础都存在问题,接下来干嘛,学啊!
被阿里跟携程拒绝后的一个多星期,没有接到任何面试电话,笔试了美团、今日头条,都挂了,变得没什么心情,其实之前也学了很多Java的技术,但还是不牢固不全吧,继续补吧。
虽然很低落不过还是坚持天天看书。去牢实各种Java基础,thinking in java再看一遍;多线程,concurrent包;集合类,每一个集合类的底层,haspmap的底层源码,concurrentHaspMap的底层源码,更多地区理解为什么,而不是怎么样;看虚拟机从内存管理到类加载;java并发编程的艺术;复习servlet/jsp技术;理解ibatis的技术要点,ibatis的底层源码;复习操作系统数据库计网每一个讲过的重点;理解MySQL的技术要点;spring的核心技术跟思想IOC、AOP、springMVC;Lucene的索引结构,检索特点,为什么拿它来取代数据库的全文检索;Redis技术要点,从五种数据结构到乐观锁事务再到数据安全主从复制持久化…..;牢记Linux系统的常用命令与操作;经典的设计模式,单例懒汉恶汉等等;复习数据结构平衡二叉树B树B+树,复习算法刷leetcode…..当然,还有很多很多。
京东(笔试+两面技术+一面hr,拿到offer)
一面:
自我介绍
介绍一下项目
java多线程有哪几种实现方式
CountDownLatch
Spring的核心技术
关于数据库事务说出你知道的所有
跟面试官聊天,说了很多关于登录验证的技术问题(有些紧张)
你有什么想问的
二面:
自我介绍
介绍一下项目
把你知道的java的concurrent包的技术全部说出来(volatile、锁重入,LinkedTransferQueue字节追加提高并发度技术,ConcurrentHaspMap结合volatile的happen-before读取优化)
redis的配置文件(AOF&&Snapshot&&主从复制)
WebSocket长连接问题
秒杀业务场景设计(事务,逻辑调整,行级锁,数据库并发度、mybatis调用存储过程)
会不会写前端(会,但也仅是会写,会写jQuery,CSS3)
你平时都用什么开发工具?IntelliJ IDEA相比Ecplise有什么好(快捷键)
跟面试官聊天,讨论了很多关于后台大并发量的问题
你今后的研究方向是什么
你有什么想问的
京东的问题都答出来了,感觉特别是二面真的很体现一个人的研发功底,幸好都答出来了,跟面试官聊他们部门的后端并发技术问题,简直受益匪浅。搜狐的我就不发出来了,最后成功拿到了京东的京东offer
版权声明:文章来源网络,版权归作者本人所有,如侵犯到原作者权益,请与我们联系删除或授权事宜