武汉三年半Java面试经历

从19年1月起陆续面试了几家公司,做个记录。

T11(锦益网络)

公司是做新零售业务的,创建团队是京东的7Fresh团队,研发团队在武汉,其他在北京。
一共三面+终面,面试之前先做个笔试题,选择填空和简述题:
一面技术面:问一些java基础问题,如线程池、常见jvm问题、spring bean的加载过程等常见面试问题
二面leader面:问了一些项目问题,http和https的区别,对于面向对象多态的理解等
三面架构师面:闻了一下架构级别的问题,对于系统负载的认识和理解(当初对于系统的请求压力负载等只是有个概念在,并没有具体的认知,所以没答得很好)
终面:跟业务方领导语音面试,基本就聊聊经历。
结果:通过(有一些场外因素在),但是应该没有达到高级的标准。工作日一晚上搞完。

华图教育

公司是做公务员培训相关业务的,技术团队主要负责内部系统,但因内部员工上万人,所以要求分布式经验。
经历了两面:
一面技术面:面试官说CTO要求进来的人有两个要求,1、数据结构和算法,2、分布式经验。所以首先手写任意一个排序算法或者写一个层级遍历二叉树。
手写后问了几个场景题。
1.导入导出超大文件有没有什么优化方案。答:通过Redis实现进度条防止用户多次请求。(如果可能感觉应该再答一下对于文件的优化,比如压缩等等)
2.问一个活动导致的访问量激增后发生了MQ堆积的问题,分析堆积的原因可能在哪里。(MQ不是很熟,面试官给了几点,1.可能是broke配置有问题,2.消费者处理速度过慢,分析代码问题)
3.分布式事务的常见解决方案,答了2PC、3PC。着重说了MQ实现的最终一致性解决方案。
4.线程池线程数的配置方案。(需要分计算密集型还是IO密集型)
5.ThreadLocal的原理与使用场景。(重点考察知不知道什么情况下使用)
6.数据索引的原因(重点描述B+Tree的原理和联合索引的保存)
2和4打的不是很好,但是通过了一面。
二面技术面:
对于spring中ioc和aop的理解,spring和mybatis源码中设计模式的理解。
MQ怎么处理数据版本号的问题。
手写单例、手写数组中出现次数最多的数。
zk相关的问题。
问目前公司的项目发布和停止的方式。(当时没有细聊,应该分析一下而不是说公司运维系统来做)

结果:未通过。两个工作日的晚上面的。

烽火通讯

招聘部门是CDN部门。

经历了两面,提前在线做测评题,然后现场做面试题,题蛮简单的:
一面:两个面试官,明显是一个开发带一个小弟进行的面试。小弟经常问一下很基础的java问题和网络问题。另一个问的也是一些基础问题,不过问的角度比较细。
比如方案传入Integer是传的引用还是值。
数据库的隔离级别及场景。
数据库事务的传播级别。
TCP为什么是四次挥手。
暂停线程有哪几种方式。使用wait有什么条件吗。
线程池的配置原则(答完之后面试官很鄙视的问了句你实际使用过么)。
springmvc处理请求流程,如何获取传入的参数及如何返回json。
二面:人事面,大概聊了下经历,问对于加班出差等的看法。说终面需要部门总经理约时间。

结果:一个星期了并没有收到终面通知,估计是没给过。一面的时候面试官态度奇差无比,一遍面一遍玩手机,表情很不屑,不知道在屌些什么。个人猜想是工资期望他们觉得在烽火内部不可能拿到吧,希望他们出来不会被外面鄙视。

长江通讯智联

公司目前做车联网相关项目,技术部门约三十人,招聘的是偏大数据工具的岗位。
只有一面,应该是招聘岗位的leader。
MQ消费者的消费策略。
网关鉴权校验如何做的。
定时任务(他应该是理解的linux系统的定时任务)。
kettle算子(因为简历里有kettle的使用经验)。
其他一些基础问题。
问完之后感觉不太匹配岗位毕竟没有大数据开发经验,他问我有啥想问的么。我就问了一下目前业务方向组织构成。他主动说了下工作时间周二周四加班,周末加班可以调休。薪资组成70%基础工资+21%日常绩效+9%累计工资一年一发,还有需求奖金三百一个平均两天一个需求,还有不定时项目奖。

后来HR联系询问希望薪资,然后就没有回复了。

小米新零售部门

一面:
手写链表倒置。
1000万条数据如何做到快速查询。(前提内存可以放得下,答使用堆存储,又问及时间空间复杂度)
从上个问题引出数据库索引的原理,及插入及更新索引的过程。
再引出数据库事务和锁对于插入数据和更新数据分别是怎么作用的。
又问了volatile关键字的原理。(如何实现的数据实时同步更新)
Hashmap及equals和hashcode方法的关系。
又问了多数据库和多语言的经验。

提问了下中台的概念。

二面:聊项目,然后问2B2C的项目可以共用的模块有哪些,画一下架构图。
如果通用模块里要做业务区分怎么做。
问tomcat原理,如果自己设计的话有哪些模块。
j2ee是什么,servlet方法有什么。(没准备这块基础只是都忘记了)

结果:二面完让我等一下,等了半小时接到北京一个电话说今天可以回去了,然后问人事说是等下一面通知。等了一天再问人事说没有通过,因为servlet不是很熟。不过总体面试质量很高,面试官都是根据问题一环套一环引导完成面试。

你可能感兴趣的:(基础)