字节跳动二面:
- 自我介绍
- 项目询问:问了简历上写得最早的项目的情况,项目QPS ?数据来源和传输形式?
- 发起一个HTTP请求的过程?刚才提到DNS , DNS用的什么传输层协议?为什么说用的是TCP协议?
- (我说其实我不清楚是用的什么协议)他说那让你设计的话用什么协议比较合适? (思考了一下,说
- 觉得UDP比较合适,比较轻量不占用服务器带宽,查了一下TCP和UDP都有 ,用在不同情境下)
- TCP协议的三次握手和四次挥手过程?
- 同步IO和异步IO的区别?
- 操作系统的blablabla? (懵)算了,直接问你好了, select和epoll ?
- 线程如何实现同步?
- MySQL了解到什么程度? binLog知道吗?
- 描述一下堆排的过程?建堆的时间复杂度?最大堆中求前K个最大值的时间复杂度?
字节跳动三面:
- 自我介绍。
- ConcurrentHashMap在Java7和Java8中的区别?为什么Java8并发效率更好?什么情况下用
- HashMap ,什么情况用ConcurrentHashMap ?
- 加锁有什么机制?
- ThreadLocal ?应用场景?
- Web容器用的什么?你项目里涉及了SSM框架,一个请求到Tomcat容器了,怎么到SSM代码中去?
- 网络协议了解吗?
- 项目介绍一 下是做什么的?讲一讲学到什么东西?
- 平常怎么学习?
- 大学到现在遇到的最大困难是什么?怎么克服?事情太多的时候会有压力吗?
- 未来的规划?
- 目前有offer吗?
- 设计一个系统:用来促成交易,有多种商品,有购买方和卖出方,促成买家价格大于等于卖出价格的交易。
写在最后
作为一名即将求职的程序员,面对一个可能跟近些年非常不同的 2019 年,你的就业机会和风口会出现在哪里?在这种新环境下,工作应该选择大厂还是小公司?已有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动?
就目前大环境来看,跳槽成功的难度比往年高很多。一个明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底。
最近我整理了一份复习用的面试题及面试高频的考点题及技术点梳理成一份“Java经典面试问题(含答案解析).pdf和一份网上搜集的“Java程序员面试笔试真题库.pdf”(实际上比预期多花了不少精力),包含分布式架构、高可扩展、高性能、高并发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!
由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!有需要的朋友可以戳这里免费获取
Java经典面试问题(含答案解析)
阿里巴巴技术笔试心得
阿里巴巴技术笔试心得
[外链图片转存中…(img-bcxrpsAP-1628610846827)]