泪目!跳槽太不容易了,美团4轮面试,四个小时灵魂拷问,结局我哭了!
Posted java构架师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了泪目!跳槽太不容易了,美团4轮面试,四个小时灵魂拷问,结局我哭了!相关的知识,希望对你有一定的参考价值。
大多数情况下,程序员的个人技能成长速度,远远大于公司规模或业务的成长速度。所以,跳槽成为了这个行业里最常见的一个词汇。
实际上,跳槽的目的无非是为了涨薪或是职业发展,我也不例外。普通本科毕业后,进了一家互联网公司,这几年里不断在积累经验,最终选择跳到美团,涨薪了50%,下面分享一下我个人的面经和一些心得建议。
面经
美团一面:
- redis集群,为什么是16384?哨兵模式,选举过程,会有脑裂问题么?raft算法,优缺点
- JVM类加载器,自定义类加载器,双亲委派机制,优缺点,tomcat类加载机制
- Tomcat热部署,热加载了解吗?怎么做到的?
- cms收集器过程,g1收集器原理,怎么实现可预测停顿的?region的大小,结构
- 内存溢出,内存泄漏遇到过吗?什么场景产生的?怎么解决的?
- 锁升级过程,轻量锁可以变成偏向锁么?偏向锁可以变成无锁么?自旋锁,对象头结构,锁状态变化过程
- kafka重平衡,重启服务怎么保证kafka不发生重平衡?有什么方案?
- 怎么理解分布式和微服务?为什么要拆分服务?会产生什么问题?怎么解决这些问题?
- 你们用的什么消息中间件?kafka,为什么用kafka?高吞吐量,怎么保证高吞吐量的?设计模型,零拷贝
- 算法1:给定一个长度为N的整形数组arr,其中有N个互不相等的自然数1-N,请实现arr的排序,但是不要把下标0∼N−1位置上的数通过直接赋值的方式替换成1∼N
- 算法2:判断一个树是否是平衡二叉树
美团二面:
- Innodb的结构了解么?磁盘页和缓存区是怎么配合,以及查找的?缓冲区和磁盘数据不一致怎么办?mysql突然宕机了会出现数据丢失么?
- redis字符串实现,sds和c区别,空间预分配
- redis有序集合怎么实现的?跳表是什么?往跳表添加一个元素的过程,添加和获取元素,获取分数的时间复杂度,为什么不用红黑树?红黑树有什么特点?左旋右旋操作
- io模型了解么?多路复用,selete,poll,epoll,epoll的结构,怎么注册事件,et和lt模式
- 怎么理解高可用?如何保证高可用?有什么弊端,熔断机制,怎么实现?
- 对于高并发怎么看,怎么算高并发,你们项目有吗?如果有会产生什么问题,怎么解决
- 项目介绍
- 算法:给定一个二叉树,请计算节点值之和最大的路径的节点值之和是多少,这个路径的开始节点和结束节点可以是二叉树中的任意节点
技术三面:(主要从项目入手,主要是解决方案)
- 如何理解内存泄漏问题?有哪些情况会导致内存泄露?如何解决?
- 怎么理解强一致性、单调一致性和最终一致性?
- 分布式锁有哪些解决方案?
- 如何解决Redi缓存穿透的问题?
- Redis hash算法用的是什么?
- Redis集群方案应该怎么做?都有哪些方案?
- elasticsearch为什么检索快,它的底层数据结构是怎么样的?
- netty应用在哪些中间件和框架中呢?
- 线程池的参数
- 讲一下B树和B+树的区别
- 为什么要用redis做缓存?
- 了解Springboot吗?那讲一下Springboot的启动流程吧
- 如何解决bean的循环依赖问题?
- Java有哪些队列?
- 讲一讲Spring和Springboot的区别
美团四面(hr):
- 先介绍一下你自己吧
- 说一下四种IO模型
- 平时怎么去学习的?
- 为什么你说学习了要去实践?
- 说一下的最大的优点和缺点
- 举一下你缺点的例子
- 想象一下你几十年后是怎样的生活?
- 你觉得最痛苦的一段时间
- 对你影响最大的一件事情
- 在安排活动的过程中有没有发生什么冲突?
- 你有什么崇拜的人吗?
- 你有什么想问的?
题目不是记得特别清楚了,大概就这样吧,接下来分享我的面试心得!
心得
1.我是如何准备面试的?
①准备简历(敲门砖,不会包装简历的程序员只能去外包)
程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:
②了解面试公司,做好功课,知道问什么
对一线互联网大厂的面试点,我也做了以下总结:
阿里巴巴、百度、腾讯
字节跳动、美团、京东
③梳理知识体系,学会举一反三
实际上,梳理知识体系是最简单的事,但很多开发小白总是一头雾水,实际上从第二点的大厂面试点就可以总结梳理出来我们应该要学什么,要掌握什么,通常我的方法是“大厂面试点”+“工作年限”来梳理自己接下来的学习及发展路线图。
之后,就需要根据路线图上的重点去进行有针对性的学习,在学习过程中,学会举一反三,学会写笔记,做总结。
④面试前刷题
Java技能储备
不用多说,相信大家都有一个共识:无论什么行业,最牛逼的人肯定是站在金字塔端的人。所以,想做一个牛逼的程序员,那么就要让自己站的更高,成为技术大牛并不是一朝一夕的事情,需要时间的沉淀和技术的积累。
下面是详细的学习路线及资源:
大致内容如下:
程序员必备书单
《Java核心知识点合集(283页)》
内容涵盖:Java基础、JVM、高并发、多线程、分布式、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、数据库、云计算等
《Java中高级核心知识点合集(524页)》
这些内容均免费分享给大家,需要完整版的朋友,点击蓝色字体这里查看获取方式【面试必备】
《Java高级架构知识点整理》
《Docker从入门到实践》
《spring could 学习笔记》
《MySQL性能调优与架构设计解析文档》305页
《nginx入门到实战》319页
《Java并发编程》385页
《1000道 互联网Java工程师面试题 (485页)》
Java各知识点综合面试专题(1000+题)
这套题库里面中包含了以下很多个模块(都有单独的PDF文档):并发编程,多线程,集合框架,设计模式,数据库,性能优化,RabbitMQ消息中间件,ActiveMQ消息中间件,Dubbo,JVM,Kafka,MongoDB,MyBatis,MySQL,Netty,Nginx,Redis,Tomcat,Zookeeper,Spring,SpringBoot,SpringCloud,SpringMVC,…….
互联网一线大厂面试题库(500+题)
这套题库里面中包含了以下很多个公司:百度篇,京东篇,腾讯篇,头条篇,美团篇,华为篇,滴滴篇,………
以上这些内容均免费分享给大家,希望能帮助到各位,需要的朋友,点击这里蓝色字体,备注“CSDN+面试题”一键三连提高通过率
结语:
- 首先,技术面试是一个 认识自己 的过程,知道自己和外面世界的差距。
- 更重要的是,技术面试是一个双向了解的过程,要让对方发现你的闪光点,同时也要 试图去找到对方的闪光点,因为他以后可能就是你的同事或者领导,所以,面试官问你有什么问题的时候,不要说没有了,要去试图了解他的工作内容、了解这个团队的氛围。
以上是关于泪目!跳槽太不容易了,美团4轮面试,四个小时灵魂拷问,结局我哭了!的主要内容,如果未能解决你的问题,请参考以下文章
泪目!女朋友跳槽太不容易了,挂了8家公司,终于收获京东offer