admin 发表于 2017-5-31 15:01:26

2017 暑期实习校园招聘(Java后台开发方向)面经分享

(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/72758334冷血之心的博客)


分享一下我这两个月里找暑期实习过程中记录总结的面试经验吧,希望能对大家有所帮助。
[*]本人研二,电子科学与技术专业,本科电子信息科学与技术专业,有三个多月的java开发实习经验,暑期实习投递的是Java研发工程师/后台开发工程师职位。编程语言熟悉情况以Java为主,熟悉Spring和MyBatis等框架,会用maven、git等工具。算法基础薄弱,Java基础扎实。
[*]面试经验包括 阿里巴巴、京东、腾讯、搜狗、搜狐、百度、小米、去哪儿网这几家公司。
[*]电话面试、现场面试和视频面试都是回忆版,不怎么完整。所以问题少的并不一定是问的少
[*]基本各家企业都有安排笔试,笔试主要是在赛码网和牛客网上进行。笔试有难有易,主要是基础知识选择题加编程算法题
[*]面试题有些我没有答上来,有些没有答对,所以我的回答就不贴出来了,基本只要百度查阅一下就会有详细答案


公司1:阿里巴巴result:二面跪阿里巴巴的电话面试,一面聊得还算比较开心,二面就彻底失败,面试官问的都没咋听说过,立马跪。

[*]一面

[*]自我介绍
[*]做过哪些项目?怎么实现的?
[*]蓝牙自动配对怎么实现的?
[*]公司整体架构?数据来源流程?你做了啥?
[*]后台系统使用什么技术实现的?
[*]spring mvc和struts mvc的区别
[*]抽象类和接口的区别?
[*]覆盖和重载
[*]进程和线程的区别
[*]线程有哪些状态
[*]如何创建线程?
[*]wait和sleep的区别
[*]集合有那几种?list和set的区别?
[*]hashmap的实现,冲突,初始容量和加载因子?怎么扩容?
[*]如何取出hashmap中的value存入list中?
[*]spring的aop和Ioc讲讲
[*]快速排序怎么实现的?
[*]数据库索引为什么用B树?原理
[*]数据库的锁有哪几种?语句怎么实现
[*]数据库分页查询
[*]数据库的搜索引擎
[*]tcp和udp的区别
[*]在公司实习你学到了啥?工作方面和技术方面
[*]你有没有继续研究新接触到的技术?
[*]你有什么学习方法吗?
[*]你在实习的时候最大的收获?
[*]你的博客都写了啥?值得说说的。
[*]二面

[*]自我介绍
[*]shixi最大的收获
[*]专利
[*]JDK8和之前的优化
[*]JDBC是单例还是多例
[*]JDBC和MyBatis
[*]布隆过滤器
[*]ThreadLocal
[*]Atomic关键字
阿里总结:阿里的职位是Java研发工程师,而且听闻阿里确实比百度和腾讯有更多的地方用Java来开发后台。所以,感觉阿里其实面试官的水平很好,能够全面完整的考察每一个应聘者,二面挂,只能说明自己的实力确实菜了点。
---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------


公司2:京东
result:拿到Offer

京东现场面试,总共跑了3趟。全程都比较顺畅,聊天聊得愉快。

[*]初面

[*]浏览器中输入www.jd.com之后都发生了什么?
[*]说说事务吧,事务的四大特性,四大隔离级别
[*]说说spring吧
[*]写个设计模式吧(单例除外)
[*]写个排序算法吧
[*]什么因素会影响到你选择不同种类的排序算法
[*] 一个库存变量,多个线程需要操作,如何保证正确性?
[*]一台机器压力太大了,又给你分配了5台机器,你如何使用这些机器?
[*]创建100个线程,如何使得这100个线程几乎同时启动?
[*]复试

[*]sql语句
两个比较器
以后的定位
阿里抢月饼事件的看法
联调,对方没时间
[*]HR面试

[*]什么时间来shixi,shixi多久?
[*]你的性格
[*]你的业余爱好
[*]为什么选择jd
[*]现在有offer吗
京东总结:京东招聘的职位也是Java研发工程师,所以2个面试官都是搞java开发的。京东的问题感觉不算太难。
---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------


公司3:腾讯
result:一面跪

腾讯现场面试,面试官应该是搞C++后台开发的,与java相关的一个不问,随便问了几个就打发我走了。(不服)

一面

[*] 分布式知识spark
[*]布隆过滤器
[*]合并有序链表
[*]KMP算法
[*]having的用法,和where的区别
[*]mysql和sqlserver的区别有哪些
腾讯总结:腾讯的职位是:后台开发工程师,那这就不好办了,你的面试官很有可能是搞C++开发的,聊起来特别费劲,因为自己最擅长的是java呀,面试官一个java相关的都不聊。聊聊算法等其他知识,那指定跪。。。

---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------

公司4:搜狗
result:一面跪

搜狗面试,答得一般般,唠嗑倒是不别扭,就是答得一般般,借口二面面试官在开会,打发我走了。

一面

[*]单例模式和注解单例模式区别
[*]单链表反转
[*]多线程包concurrent
[*]kafka分区
[*]maven的打包命令
[*]git完全撤销
[*]内存调优工具
[*]内存泄露和内存溢出
[*]模板模式
[*]拆箱装箱
[*]控制反转
[*]AOP的两种实现
[*]hashmap扩容过程
[*]mybatis中#和$的区别?危险注入问题


搜狗总结:不看简历,他们需要什么技术,就问你什么技术。。。
---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------
公司5:去哪儿网
result:拿到Offer

一面:


[*]项目相关,讲讲
[*]数据存储结构有哪些?
[*]currentHashMap和HashMap的区别
[*]解决hash冲突的方法有哪些?
[*]HashMap中如何解决hash冲突
[*]数据库SQL语句
[*]limit的使用相关
[*]Java中的异常分类
[*]说说Spring
[*]说说MyBatis的使用
[*]JVM内存管理和回收机制
[*]算法题:输入一组数。拼接成一个最大的数输出!!!

二面:

[*]滑动窗口
[*]单链表有环推导公式
[*]LRU算法,最近被使用算法,使用链表实现一个,
[*]最后使用了
[*]实现
[*]数据库索引作用,实现的数据结构,画出B+树
[*]事务的作用是什么?答:保证数据的一致性
[*]接口和抽象类的区别
[*]布隆过滤器
[*]linux相关命令
[*]进程之间如何通信?
[*]进程和线程的区别
[*]线程是否越多越好?资源和内存的问题考虑
[*]线程是否有独占的资源?有,threadlocal变量
[*]专业相关问题,以后的方向




---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------
公司6:搜狐汽车
result:逗逼公司

逗逼公司,等了快一个小时,HR是个2逼,结果面试官也是个逗逼,问问题把自己也能绕进去,之后,随便问了几个就送客了。不招人就别约面试么。

[*]两数组,输出a中不在b中的元素
[*]N个数,求最大值
[*]扑克牌
[*]spring说说
[*]项目讲讲
[*]HashMap的取操作的时间复杂度
[*]链表相交
[*]重点在时间复杂度上




---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------


公司7:搜狐自媒体部门
result:拿到Offer


               
[*]讲讲shixi项目

[*]提了一些问题
[*]讲了spark streaming计算原理和过程
[*]kafka的相关东西,

[*]为什么要在topic下分区,每个partition可以在不同的broker上吗?
[*]kafka为什么可以快速持久化
[*]Spring的IOC机制,spring容器如何创建对象?
[*]SpringMVC的消息处理流程,DispatchServlet控制器在哪里配置?
[*]数据库的索引使用什么数据结构?
[*]数据库存储引擎有哪些,区别
[*]AOP

[*]动态代理和静态代理的区别
[*]动态代理怎么实现的,如何得到被代理类的所有方法
[*]分K组来反转单链表



---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------


公司8:百度
result:一面跪


百度面试,感觉自己受到了侮辱。面试官是搞PHP的,刚开始就问贼难的问题,与java相关的一个不问,之后再问简单的算法题,但是脑子就蒙圈了,就不难从易到难问问题吗?(妈的,贼不爽了。)

[*]实习项目聊聊,在聊的过程中会不断的提问,针对各个实现的地方。
[*]100亿个网址,如何去重?
[*]git用过是吧?让你设计实现一个git diff的算法,你会怎么实现?
[*]Linux中如何查看线程状态?指定一个线程怎么查看?
[*]网络编程Socket讲讲。
[*]set的底层数据结构是什么?
[*]手写单例模式。
[*]TCP和UDP的区别?丢包重传的次数?
[*]死锁的四个必要条件
[*]具体案例,如何避免死锁?某个线程只有获得A锁和B锁才能对某资源进行操作,在多线程条件下,如何避免死锁?
[*]找出一个数组中的多数元素?追问,时间复杂度可以再小吗?
[*]自己实现一个String2Int的算法。



---------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------


公司9:小米科技
result:二面跪


一面出来一个搞前端的,简单说了下实习项目,之后就开始写起了算法。
                算法1:输入一个整数,打印出所有符合条件的有效括号。
                算法2:二叉树的前序遍历的变种形式。

二面出来的好像也不是搞Java开发的,不过确实是个搞后台开发的。

[*]进程通信,如何分配资源?
[*]分布式相关的知识,比如kafka、spark和Hadoop等知识,往深聊,这指定跪。。。
[*]青蛙跳台阶算法题




笔试跪的公司有:360、网易、今日头条



页: [1]
查看完整版本: 2017 暑期实习校园招聘(Java后台开发方向)面经分享