本人情况:2019年从北交大专科毕业,进入互联网行业,到目前有3年软件开发经验,在工作期间自考本,2021年毕业(双证都有),专、本均是计算机专业。
目前在职,正整备换工作,求职“Java软件开发岗”,期望薪资17-20k,从月初到现在,面试了7、8家公司,有的进入二面被刷,有的一面直接被刷,目前只收到1家公司的offer。
但是现在有个让我头疼的问题:约我面试的公司全是外包,我不想去外包,但是除了外包公司我又约不上其他公司,无奈只能妥协。怎么办???求大佬们给出出主意
(我目前公司正在做的是个“视频”项目,到目前完成60%了,我是从0开始跟着做的,所以面试官会问好多关于“视频项目”的问题)
下面是我面试过程中,面试官们提的问题,我都有去录音,去做复盘,有需要的牛友可以参考……
公司:北京亚大
日期:2022-11-2 星期三
面试时长:5分钟
面试感受:被侮辱了,五分钟结束面试……因为他让我答底层源码,我没答上来,面试官态度就非常不好,直接凉
面试问题如下:
- ArrayList和LinkedList的区别
- HashMap和ConCurrentHashMap的区别
- 为什么HashMap是线程不安全的?
- 链表里面是怎么实现闭环的?如何证明链表有一个环?
- SpringBoot是如何实现自动装配的?
公司:中科软
日期:2022-11-3 星期四
面试时长:35分钟
面试备注:一面,电话面试。自我感觉良好,面试问题基本全部答上来,特别喜欢这个面试官,顺利进入二面
面试问题如下:
- 说说你项目中用到了哪种“视频流”?
- 面向对象三大特征?着重说说“多态”
- 实现多线程的几种方式
- 常用的线程池有哪些?有哪些参数?工作流程是什么?拒绝策略有哪些?
- 如何自定义拒绝策略?
- 核心线程数和最大线程数怎么设置,范围是什么?
- 线程池队列有哪几种?常用的是哪种?有界还是无界?
- 怎么做SQL优化的?
- 谈谈RabbitMQ?产生背景?如何解决?
- 你项目中为什么要使用RabbitMQ?它的工作原理是什么?
- linux查看log日志的命令是什么?
- 个人优势是什么?
- 你项目中发票和添加水印是怎么做的?
- Java中定时器用到过吗?
- SQL触发器用过吗?
- SQL脚本写过吗?
- 项目中用的是逻辑删除还是物理删除?
公司:中科软二面
日期:2022-11-4 星期五
面试时长:64分钟
面试备注:电话面试。这个面试官很好(态度也好、说话也中听),我感觉面试的非常好。但是hr没有给我反馈,我等周一上班给hr打电话问结果,他说:可能是我要求太高了!
面试问题如下:
- 你项目中上传“巨大的视频”,发现总是上传失败,怎么处理的?
- 说说视频中“分片上传”和“断点续传”是怎么实现的?
- 很多用户同时访问一个视频源,如何做,性能最好?
- 视频存在哪里了?
- 租了3台服务器,视频存在哪个服务器,怎么管理?
- 把视频上传到服务器,是怎么管理的?
- 传统开发和微服务开发的区别?
- 什么是重载?什么是重写?
- 静态变量和普通变量的区别?
- 抽象类和接口的区别?
- 说说字符流和字节流
- GBK和UTF8的区别
- UTF8和Unicode的区别
- 什么是类加载器?过程是什么?分什么类别?
- 什么是双亲委派机制?
- 说说JVM内存结构和加载过程
- JVM的堆内存和栈内存是做什么用的?
- 聊聊网络协议
- Java中ServerScoket与Scoket怎么实现通信?
- TCP和UDP的区别?
- TCP的三次握手
- http的报文格式
- 文件上传的基本原理是?报文怎么组织的?
- cookie是存在报文头还是报文体里面?
- http和https的区别?
- SSL在https起什么作用?
- 线上项目,CPU利用率达到100%怎么排查?
- JVM内存启动,内存过大怎么办?
- linux用的怎么样?
- 用的什么数据库?
- 数据库存储过程写过吗?
- shell编程写过吗?
- 你什么时候离得职?为什么要离职?
公司:中电金信
日期:2022-11-8 星期二
面试时长:51分钟
面试备注:电话面试,这个公司的hr非常好,提前给我发了一大堆面试可能会被问到的问题,我认真准备,顺利进入二面
面试问题如下:
- 自我介绍,说一下最近做过的项目和所负责的模块
- 你做的项目数据量大吗?视频存在哪里?
- 流这块,BIO、AIO、NIO用的哪个?
- 为什么用NIO?
- 除了当前项目,哪个项目或者中间件,NIO的场景用的多?
- NIO是怎么实现“同步非阻塞”?
- NIO和AIO的区别?
- 线程池的运行原理
- mysql的引擎用的哪种?
- 一坨SQL语句,是怎么实现事务的?
- 在执行一些sql时,其他线程可以看到吗?
- “可重复读”和“读已提交”的区别
- SQL优化:sql已经添加索引了,但是性能还不够,哪方面导致的?
- 为什么要避免“select *”?
- 说说mysql慢查询的原因,有哪些?
- sql字段冗余有什么好的解决办法?
- SQL分库、分表有了解过吗?
- 索引是建的越多越好吗?
- mysql分库分表之后,id主键该如何处理?
- Spring事务的分为:编程式和声明式
- Spring事务会失效吗?
- Spring中的@Transaction可以嵌套吗?
- 事务的传播机制
- 分布式锁的应用场景?代码是怎么实现的?
- Redis和Zookeeper分布式锁的实现
- 为什么Redis比Zookeeper快呢?
- 分布式事务有用到过吗?
- 分布式事务的解决方案
- 什么是二阶段提交、三阶段提交?
公司:神州信息
日期:2022-11-9 星期三
面试时长:30分钟
面试备注:电话面试,这个面试官说话不标准,好几次我都听不明白他问的问题,他能把“SpringBoot”说成root,大无语……
面试问题如下:
- 你项目中的RabbitMQ在哪里用的?如何保证消息被消费而不是被丢失呢?
- SpringBoot中,自己写了一个配置文件(.properties),想要读取到DAO层,怎么做呢?
- 注册中心有配置过吗?怎么配的?
- 说一下Feign,你对它的理解
- 服务器的负载均衡机制
- 负载均衡的算法有什么?
- 用过国产数据库吗?面试官和我说了这样一句话,印象很深刻:因为芯片事件,银行、国企之类的公司他们都在国产化,Oracle特别好用,他也不用,都在用华为产的一些东西,安全嘛。过后,我特地研究了两款国产数据库:达梦和tidb
- 分布式数据库有用过吗?了解多少?
- 分布式事务用过吗?
- 分布式事务怎么保证事务的一致性?
- mysql怎样查看一条sql语句的执行情况
- 缓存用过Redis,还有做过其它缓存吗?
- 技术异常和业务异常怎么处理的?自己的业务异常怎么处理?
- 除了使用RabbitMQ,还有用过其他的吗?
- 自测/单测有用过吗?(我到现在都不知道这是个啥问题)
- JVM有了解吗?分哪些区域?
- 最后面试官问我:加班、出差能接受吗?
下面是hr给我发的面试反馈,看完后我感触挺大:你要想通过面试争取到较高的薪资,人家问你问题,你回答的时候就不能说:了解过,而应该说:我很擅长,然后再给他讲明白了。
公司:中电信息二面
日期:2022-11-9 星期三
面试时长:30分钟
面试备注:电话面试,这个面试官的问题不是八股文里面的,他在揪着你的项目往死里问,我后来有仔细听录音,发现问题在“我回答了,但是没有答到点上”
面试问题如下:
- 你简历中体现的是三个项目,是自研的还是外包的?
- 公司的业务是什么?看你写的这3个项目挺复杂的
- 这个面试官就一直在揪着问项目,一直让我讲视频的“分片上传”和“断点续传”功能,结果我没给他讲明白……
- 让再讲一个自己比较擅长的项目,我讲的是之前做过的“权限管理系统”,他又揪着我的项目往死里问……
- Java线程池有哪些核心参数?
- 核心线程数和最大线程数怎么设置?为什么是CPU+1?队列怎么设置?
- mysql事务的原理是什么?
- mysql的隔离性怎么实现?
- 隔离级别:可重复读和不可重复读,是基于什么实现的?
- 读已提交和不可重复读有什么区别?
- mysql常见的存储引擎有什么?
- 执行SQL响应语句比较慢,该怎么分析呢?
- SQL语句添加索引,速度就一定会提升吗?如果加了索引还慢的话怎么办?
以上是我6次面试中被问到的问题,感触颇多,要是谈收获的话,当属:他只有往死里问你的时候,你被打击的时候,提升的越快!如果他问的都是一些你会的问题:要么就是你太优秀了,要么就是收获不怎么大。
还有4家公司的面试问题,由于时间问题没有整理出来,就不写了……
说明:上面的问题,我都有整理成笔记,并且做出了答案,用Typora记录的,没有把答案也写出来,是寻思乱糟糟的,不好看。***********
#Java面试##外包到底能不能去#