来自一位工作两年的后端同学面试分享
从今年5月份就开始面试了,前前后后也有4个多月了吧,面试了几十家公司,其中有几十个人的小型创业公司,也有几百人的上市公司,踩了不少的坑,最后收到了宝能集团的offer,我也决定就去这家了。
看过很多别人的面试分享经验,这里我也做一些面试的分享吧。
前言
首先,提前要求自带简历的一般都不太靠谱,特别是小公司要求自带简历,一般都是hr不专业,不想提前把你的简历打印出来,或者说不想为了你浪费几张A4纸,所以这种公司可以直接pass了,除非你特别缺offer,生存都成困难了。
其次,可以提前问一下hr面试流程是什么样的,现在很多公司都取消笔试了。众所周知笔试没有人监督你,所以可以掏出手机(虽然我没做过,但是面试看见其他人这样做过),所以我觉得笔试作用其实没多少。
如果有公司是明确要先笔试,笔试通过再进行面试,而你面试的不是应届生岗位,就要小心了,先考虑一下那家公司过去面试距离远不远,提前去看准网看一下相关的评价,再考虑要不要去面试的事。我之前面过两家都是需要笔试的,笔试没通过是直接没有后面的面试的(有的面试题非常脑残,下面上图),来回也比较远,浪费了我一个上午的时间。
面试准备
面试的时候99.99%的公司都会让你做一下自我介绍和最近做的一个项目,所以自我介绍和项目要提前打好草稿,特别是不太会说话的。
自我介绍
我觉得简洁一点就行了,一般面试官都会趁着你自我介绍的时候看简历,也没认真听你做自我介绍。
举例
面试官你好,我叫凌霄,xx年毕业于xxx学院xxx专业。我对技术有浓厚的兴趣,专业知识面宽,技术也相对全面,责任心强,思路清晰,沟通能力好,熟悉JAVA体系,各种开发流程和主流架构模式,设计模式和UML,有较强的需求分析、架构设计、项目管理能力,并有丰富的实战经验;
出我在研发团队管理期间,尝试了多种方法去建立良性的团队氛围,并有效的改善了研发效率;
技术是为产品支撑的,所以我现在也在熟悉产品设计过程,希望可以结合公司发展战略,营销策略,跟着团队打造出一个好的产品。
项目介绍
这个是真的要提前准备好说辞,不然你面试的时候边想边说,说起来磕磕巴巴的,你给面试官的第一印象就不好了,至少说明你的表述能力不强。
介绍项目的话可以不用太紧张,面试官才拿到你的简历看多久,所以肯定是对你自己的项目是最熟悉的。
需要注意的地方就是不要只讲一些业务相关的,面试官不需要知道这些,他只关心你的技术能力是否足够,通过你的描述知道你使用了什么技术,再根据相关的技术进行提问。
举例
我在xx公司做的xx系统,客户主要是xx,项目的功能主要是提供代理雨伞,代理快递,代理订餐,图书借阅等服务。后台用的是主体架构是使用Spring Cloud,微服务模块划分为xxx,我主要负责其中xxx几个模块的开发, orm用的是mybatis,数据库是用的mysql,缓存是用的redis,前台用到了vue技术。共有xx个同事参与开发,整个项目持续了xx时间。
面试官会对他感兴趣的点进行提问。
项目中遇到的难题
让我想起小学时经常写的作文:最难忘的一件事。这可真是太艹了,没想到小学学的知识现在派上了用场。
项目中遇到的难题,解决了之后其实都不是什么难题了。我列几个点可以参考一下:
跨域
任务调度幂等性
使用mq遇到的问题
分布式系统中的事务问题
内存溢出问题
当然最后还是要自己的专业技能扎实,才能获取源源不断的offer。
面试经验
接下来分享一些这段时间的面试公司
腾云亿想
腾讯云全资子公司,其实就是腾讯云的外包公司
面试题
数据库有哪几种索引
springboot原理,如何实现的自动装配
springboot打包成jar之后,怎么做到不重新打包修改他的properties配置文件
jvm调优做过吗,有哪些参数可以调,具体怎么调
第一次面试,尴尬的是我基本上没打上来,只回答上了springboot原理,居然还叫我去hr面,要把这个岗位确定下来,我拒绝了。
垒知科技研究院
上市公司,原来叫做建研集团,做建筑相关的工程。
面试题
你用过SpringBoot的哪些注解
Spring的Bean默认是单例还是多例,我想改成多例的怎么办
项目中用到了rabbitmq,使用中遇到什么问题
rabbitmq重复消费怎么解决,除了数据库里查记录还有其他什么方法
分布式锁怎么实现,redis实现方式死锁怎么解决
mysql索引怎么实现的,btree索引有什么特点
现在有一个联合索引(A,B) 我有一个sql语句是:select xxx from xxx where A=xxx 会用到索引吗?select xxx from xxx whereB=xxx 会用到索引吗?为什么会是最左匹配原则
ArrayList实现了哪些接口
代码优化怎么做的
nginx怎么配置负载均衡
闭锁怎么用,什么原理
二分查找法,时间复杂度
第二天收到了复试邀请,还挺惊讶的。
复试先是做一套性格测试题,然后就是项目主管来面试我,问了一下毕业学校,为啥学校挺好还是科班出身,为啥毕业会进小公司。然后问了下我现在的职位级别,接下来就巴拉巴拉开始夸他们公司。
然后就是cto面试,也没问技术,就问了问家里的情况,未来职业规划,然后说他是从华为出来的,公司实行狼性文化,加班是经常的。
正题来了,他说待遇是不会高于我上家公司的,但是进他们公司未来的发展肯定会很好。我就有点不太舒服,就叹气嘛,然后他说我唉声叹息比较悲观,进公司会影响其他人,他需要的是一个时刻保持乐观的人,能给团队带来活力。
我整个人都傻了,(像华为一样狼性没问题,肉也给的够吃才行呀)
西南凯亚
中国民航的子公司,是一家国企。
先要提前一天做一套线上笔试题,不管有没有通过,第二天都是要去面试的。
主要是项目相关的,业务上的东西问得多
面试题
代码优化
mysql优化
jvm内存模型
spring cloud用过哪些组件 讲讲熔断机制
为什么离开上家公司
不是很难但是没有offer,心态崩了。
睿沿科技
做人脸识别相关的,和我上家公司做的产品差不多。
面试题
Hashmap原理
ConcurrentHashMap原理,为什么多线程条件下性能这么好
项目相关
代码优化
mysql优化
spring的aop怎么实现的
每天抓拍的数据量比较大,有做过分库分表吗
Rabbitmq实现原理
后面两个没有回答好吧,所以没有后续了。
小海豚能源科技
这家应该是要找做全栈的吧,开头就问我好几个前端相关的,我直接懵了,理所当然的没有后续了
面试题
用过jquery哪些框架
es6语法熟悉吗
vue用过哪些组件
spring用过哪些注解
使用@autowired注入的时候,如果这个接口有多个实现,怎么指定注入哪一个的实现
eureka搭过集群吗
mysql优化,什么时候不会用到索引
接受长期出差吗
开通金融
做互联网金融的,公司总部在北京,我面试的时候是在成都的新网银行公司,看这个模式应该就是驻场开发了,但是公司本身不是外包。
面试题
springboot和spring的不同
springboot特性,自动装配怎么实现的
spring用到哪些组件,具体场景
spring默认是单例还是多例,全局变量会有什么问题
spring事务传播行为、隔离级别
aop实现方式,jdk动态代理和cglib动态代理区别
jdk lambda表达式几种使用方式,取最大和最小值,list转map,list中有重复的怎么办
线程池 有哪些参数,各个参数的意义
ioc容器有什么优点
jvm 堆栈,区别,线程共享还是线程私有的
springcloud组件、用途,负载均衡的几种算法
分布式事务怎么做的
mybatis一对多,多对多怎么做
jpa和mybatis区别
vmstat命令干嘛的
redis查看内存占用命令
mysql导入大量数据怎么优化
mysql有一条数据死锁了,怎么排查问题,mysql表死锁,怎么排查
nginx反向代理是什么,正向代理呢
这次面试回答得挺好的,hr也打了好几次电话说面试官对我挺有意向的,就是一顿操作猛如虎,一问工资0.9。而且我当时还是在职,要求我一周到岗,我就没去。
兰亭集势
做海外电商的公司,但是进去之后是做一些小系统的开发
面试题
看过开源框架源码吗,SpringBoot自动装配原理
写个冒泡,写个单例模式
mybatis和jdbc怎么防止sql注入
单一职责原则是什么,里式替换原则是什么
3NF是什么
接口定义一个变量,这个变量的默认作用域
有没有自己搭建过微服务
linux怎么看java进程,除了jps和top命令还有其他的吗
最近看什么书,我回答多线程并发相关的,他:没用,要在项目里用才有用
最近在学什么技术?docker,他:没用,很简单不需要学习
有个部门表,怎么设计他的字段,获取一个部门下的所有子部门,除了递归还有什么方法?加个code字段,通过部门前缀like查询
京东物流(自带简历)
朋友内推的,听他说是稳了,去面就能过,结果还是翻车了。
面试题
java特点描述一下,继承封装多态分别是什么意思
synchronized和lock区别
ConcurrentHashMap线程安全怎么实现的
创建线程的几种方式,创建线程池几个参数的含义,线程饱和策略
sleep和wait区别
spring是单例还是多例,多线程并发会出现什么问题
SpringBoot如何解决跨域,具体怎么配置
全局异常捕获怎么做的
SpringSecurity的前后端分离,登录怎么做的
怎么设计一个安全的对外接口
单线程的redis为什么这么快
redis持久化方式
什么是聚簇索引,什么是非聚簇索引
mysql事务隔离级别
你觉得你能承担独立开发的任务吗
其他问题回答得挺好的,自我感觉不错,本来以为能收到offer的,但是朋友说那个面试官觉得我不行,不能承担独立开发系统的任务,估计是第8个问题回答失误了吧,其他我觉得我回答没有问题。
教育家网络科技
面试的人比较多,所以是群面,一个面试官对应多个面试者。虽然我回答得比另外一个面试者好很多,但是没有收到offer,很迷,真的很迷。
面试题
介绍项目,然后基本上就围绕着项目的业务说
对金额的计算用什么类型,数据库中用什么类型存储
SpringBoot怎么自定义注解
mysql优化,like查询的时候,数据量很大,如果like查询以%开头,不会走索引,怎么优化。多表关联查询,怎么优化
代码优化怎么做的,平时重构从哪方面考虑
海康交通大数据
海康下面的一家分公司,主要做车辆交通相关大屏数据统计报表之类的,面试官和我一个学校的学长,开头就问我是哪个老师教的,吓我一跳哈哈哈哈,我以为给老师丢脸了。
面试题
HashMap原理,底层结构,1.7和1.8区别,头插法还是尾插法、线程安全吗
ConcurentHashMap在什么地方加的锁,1.7和1.8区别,1.7用的segment,1.8用的synchronized
lock和synchronized这两个区别,1.6之后对synchronized做了什么优化
偏向锁、轻量级锁是怎么做到的,我回答的是每个对象都有对象头,对象头里做的标记,然后他问我对象头里有哪些信息
list和数组区别,哪个会内存泄漏,查询的话哪个快点。我觉得查询是一样快的,因为list本来底层就是数组
线程池各个参数介绍一下,原理是什么。你常用哪种线程池,为什么?
有哪些队列,你线程池一般用哪种队列
spring怎么解决循环依赖
jdk动态代理和cglib区别,哪个更快,有没有看过他们生成的字节码文件
cloud相关的组件用过哪些,hystrix熔断原理是什么,除了线程池还有什么。熔断有个半开状态,有什么用
过程还是挺愉快的吧,就是薪资待遇没有谈到位,比较可惜。
咻电科技(自带简历)
一家做共享充电宝的公司,面试官又是和我一个学校的学长,但是没有给我放水。
面试题
spring生命周期
线程池有几种创建方式
线程生命周期
eureka原理
lock和sync区别
有一个表有几个亿的数据,写sql分页查询怎么优化
redis内存淘汰策略有几种
dubbo熟悉吗
脏读幻读不可重复读,怎么解决
jquery冒泡了解吗
最后问了一些学习相关的建议,收获挺多的。
协能共创(自带简历)
公司很小,面试官架子不小,面试全程非常不愉快,经常在我说到一半打断我,挺会嘲讽人的。面试的时候没有空间了,然后在外面靠近电梯的走廊面试的。
面试题
因为我的项目是做人脸识别相机相关的,然后他问我图片处理到算法识别经历了什么过程,我是直接调算法,最多把jpg格式的图片转成bgr格式,或者图片有旋转的,通过exif修正旋转。但是我的回答好像不是他要的,然后就直接打断我,说我不知道就直接说不知道
rabbitmq用了哪些设计模式。发布订阅模式,还有其他的吗,我不知道,有知道的朋友可以告诉我一下
tcp/ip协议
让你设计eureka,你怎么设计
乐观锁,悲观锁介绍一下
我:乐观锁实际上没有加锁
然后他就直接打断我了,发出一声嘲笑,问我:那你觉得什么是锁。
jvm参数调优怎么做的
我回答的是用的微服务部署,有的微服务访问很频繁的,就多给他设置一些内存,比如网关,一些不怎么用到的,可以设置稍微小一点。然后他说:你们这就是全凭感觉瞎设置呗
哎,面完之后心情低落了很多,难受了一下午,开始质疑我自己。
通甲优博(自带简历)
坐车坐了两个小时,然后去面试先hr面,了解了基本的情况,然后没了。
我还是请假坐车2个小时过去的,hr没有提前了解我的基本信息就给我发面试邀请了吧,然后过来面试才觉得我不合适,所以直接就没有技术面试了。
返空汇
就是最开头说的那家,招聘网站上常年挂着招聘岗位,起码挂了快一年。过去先是做了一套笔试题,满分100,60分及格,没及格就没后续。
国信杰云科技
前一天电话面试,自我介绍之后,问了一些技术问题,然后就让第二天到现场面试。
现场的话,整个公司人员不超过10个人,本来想走了的,想着来都来了,进去坐坐也无妨嘛。结果这是我做的最后悔的一个决定。
整个面试体验非常差,面试官线是让我自我介绍,我前一天已经在电话里做过自我介绍了,不知道这是什么意思,面试中途还接了几个电话。
然后就问登录怎么设计的,前端密码怎么传输过去的,明文还是加密,我说前端加密没有必要也没意义,最多加上https,他说加上https没用,就是要加密传。
我就在思考怎么回答他的时候,他说这是面试,请你尊重这次面试(说话语气带了点怒火,感觉要骂人了),我也不能忍啊,直接起身就走了。
总结
面试和工作是两回事,面试没通过的人,工作能力不一定比你弱,面试通过的人,工作能力不一定比你强。所以面试没通过也不要灰心,回去好好总结复盘,不要因为失败就丧失斗志,加油!
来源于:https://juejin.im/post/6875244112317317128