京东-面试经历复盘
希望之后还有往这篇文章更新的机会
京东后端一面2023.2 40min 电话面
没有录音,只记录几个印象深刻的点。
1.MySQL的两阶段提交的过程,和其他的两阶段提交有什么区别
2.Java线程池ThreadPoolExecutor提交任务后,怎么监控执行的情况
3.ThreadPoolExecutor中间线程死锁了怎么办,数据倾斜了怎么办
京东数仓一面2023.9 30min 视频面
京东健康。boss写着数仓,官网系统是算法工程师-数据挖掘,疑似希望招有传统统计学背景的。
1.自我介绍
2.实习
3.算法
重点问了聚类
4.lc739
5.大数据组件
spark了解程度
spark和flink区别
6.项目
7.情景题
7.1如果同时有多个任务都需要你去处理,你会怎么做
7.2如果导师给你口头安排描述任务,明天就要提交,你会怎么办
京东数仓一面2023.10 30min 视频面
京东零售。boss写着数仓,官网没流程,疑似希望招有cv背景的
1.自我介绍
2.项目拷打
3.sql
3.1自己讲对于窗口函数的了解
3.2字符串拼接函数
4.大数据组件
4.1 hbase负载均衡原理
5.算法
5.1 yolov系列各个模型网络原理区别
5.2 yolov推理部署实践中常用啥,怎么推理部署
5.3 磁带模型(?并不确定问了啥,应该是一个CV里面中的模型)
京东后端一面2023.10 45min 电话面
京东健康,算法工程组。
1.自我介绍
2.发展方向-对业务和中间件的倾向
3.java
3.1 hashmap
3.1.1 为什么键值对查询快
3.1.2 结构
3.1.3 哈希冲突和一般的解决办法
3.1.4 扩容过程
3.1.5 Hashcode与Equals
3.2 包装类
3.2.1 结构
3.2.2 为什么结构设计成这样
3.2.3 如果在缓存池中的对象是HashMap的Key,会发生啥
3.3 juc
3.3.1 线程安全集合类有哪些
3.3.2 CopyOnWriteArraylist和Vector区别
3.3.3 乐观锁和悲观锁区别
3.3.4 Syn的原理包括锁升级
3.3.5 并发环境下一定要用HashMap怎么办
4.实习
5.项目
CV+推荐系统+课题三个都问了
*推荐系统拷问了KNN相关的各种指标
6.数仓
6.1 拉链表
7.python
7.1 Python多进程怎么实现
8.sping
8.1 AOP+CGLIB
8.2 IOC
8.3 自己实现的一个类,需要交由容器托管怎么实现(不确定问的是是不是starter)
京东后端二面2023.11 80min 视频面
京东健康,算法工程组。两个面试官
1.自我介绍
2.大数据组件
2.1 Spark相比于MapReduce有什么区别,为什么出现了Spark
2.2 Spark怎么实现流式计算
2.3 RDD可不可变
3.java
3.1 juc
3.1.1 谈谈对线程安全的理解
3.1.2 讲讲AQS
3.1.3 Lock是怎么重写AQS的,包括公平锁,非公平锁重写的逻辑
3.1.4 Syn的原理,包括锁升级完整过程
3.1.5 ScheduledThreadExecutor原理
3.1.6 线程池提交任务的执行过程
3.1.7 拒绝策略一般用什么,为什么
3.1.8 线程池中提交任务想要得到运行结果怎么办,其原理是什么
3.1.9 Runnable和Callable区别
3.2 JVM
3.2.1 Java代码中新建一个类发生了什么过程
3.2.2 验证具体怎么验证的,详细说说
3.2.3 新建一个对象可能出现在哪些区域
3.2.4 JDK8默认的垃圾回收器是什么
3.2.5 你项目里配置的JVM参数是怎么样的,服务器硬件配置是怎么样的,怎么论证这个参数是最优秀的
3.2.6 讲讲CMS和G1的区别
4.redis
4.1 数据结构
4.1.1 String底层结构
4.1.2 Zset底层结构,包括相关的随机化算法
4.2 分布式锁
4.2.1 Setnx命令,及多客户端同时执行过程的例子推证
4.3 持久化机制
4.3.1 有哪些
4.3.2 一般咋用,conf文件里面配置什么东西
4.4 双写一致性
4.4.1 项目里怎么实现双写一致性的
4.4.2 各种一致性方案的比较
6.spring
6.1 部署上线的过程
7.mysql
7.1 事务,及举具体例子解释,多条带事务的SQL来,会发生什么
7.2 隔离级别
7.3 事务的不同特性是如何实现的
7.4 在项目中,讨论索引的使用
7.5 explain有哪些字段你会比较关注,kind有哪些种类
7.6 讲讲MVCC
7.7 讲讲MySQL加锁在磁盘上的操作,间隙锁具体是怎么实现的
8 场景题
8.1 有一个定时任务交由线程池执行,执行到一段时间后需要取消这个定时任务的执行,需要怎么办
8.2 在一个大型项目中,有一段业务逻辑需要定时执行,应该怎么设计
8.3 在一个大型项目中,有一段业务逻辑需要在某段业务逻辑之后一段时间执行,应该怎么设计
9.lc1143
京东后端一面2024.1 50min 视频面
京东零售,平台运营与营销中心 - 广告研发组。
1.自我介绍
2.操作系统
2.1 在操作系统的角度看,进程和线程有啥区别,能想到什么就讲什么
2.2 操作系统如何进行进程切换,其调度算法有哪些
2.3 在操作系统上线程是如何达到并发/并行效果的,它又是怎么实现的呢
3.Java
3.1 泛型
3.1.1 泛型擦除在编译过程中是怎么实现的
3.2 JVM
3.2.1 讲讲你知道的GC算法
4.大数据组件
4.1 spark和flink区别
5.MySQL
5.1 索引
5.1.1 mysql为啥不用二叉树用b+树
5.1.2 mysql为啥不用b树用b+树
5.2 优化器
5.2.1 PDD
5.2.2 除了PDD,其他知道的优化算法
6.Influxdb
6.1 Influxdb为什么适合时序数据存储
6.2 Influxdb和MySQL在使用场景上的区别
6.3 讲讲LSM树
6.4 LSM的compact过程
6.5 比较一下Redis的跳表和Influxdb跳表的区别
7.架构
7.1 比较比较lambda和kappa
8.实习
9.项目
10.lc225
京东后端二面2024.1 60min 视频面
京东零售,平台运营与营销中心 - 广告研发组。
1.自我介绍
2.项目
3.积累
3.1 讲讲《Resilient Distributed Datasets: A Fault-Tolerant Abstraction forIn-Memory Cluster Computing》和
《Spark: Cluster Computing with Working Sets》两篇论文
4.大数据组件
4.1 谈谈对RDD的理解
4.2 谈谈spark相比于mapreduce的优缺点,所有能想到的,想到啥讲啥
4.3 讲讲HBase读写的流程
5.操作系统
5.1 线程间通信的原理和java中如何实现
5.2 进程间通信的原理和java中如何实现
6.java
6.1 jvm
6.1.1 讲讲GC算法
6.2 juc
6.1.2 讲讲线程间同步工具类怎么用的,还有其原理都是啥
7.Influxdb
7.1 讲讲LSM树
8.数据倾斜
9.情景题
9.1 谈谈你认为自己的优缺点
10.lc716
京东后端三面-HR面2024.1 20min 视频面
京东零售,平台运营与营销中心 - 广告研发组。
1.自我介绍
2.研究生期间成绩
3.认为自己的优缺点
4.压力大的时候怎么办
5.高考为啥选择这所学校
6.为啥选择读研不直接工作
7.为啥保研选择这个导师这个方向
8.你和其他人团队协作怎么样,其他人怎么样评价你的
9.手头上的offer,对offer的倾向
京东后端一面2024.3 30min 视频面
京东健康,即时零售组。
1.自我介绍
2.实习
3.mysql
3.1 索引失效的场景
4.redis
4.1 redis常用数据结构有哪些
4.2 redis的集群模式讲讲你的理解
4.3 为什么redis这么快
5.java
5.1 juc
5.1.1 juc在项目哪个地方实操过
5.1.2 线程池执行任务的过程
6.spring
6.1 事务失效
6.1.1 一个方法A调用方法B,方法B开事务了,这个时候发生什么,为什么
7.mq
7.1 技术选型考量
7.1.1 kafka,rabbitmq,rocketmq项目里技术选型如何思考的