精选

秋招求职时一些公司的面经

秋招时我记录了一些公司的面经,我的两个项目是“API开发平台”和“抹茶聊天室”,希望这些面经能给大家带来帮助

4399一面

  1. 类在什么时候加载
  2. aop的原理,点和面的关系
  3. 程序设计的原则
  4. 单例模式有哪几种,哪些能保证线程安全
  5. 线程的状态,线程怎么创建,如何理解原子性、有序性、可见性
  6. 反射在实际应用中的作用
  7. 程序执行时一定是顺序执行的吗,怎么让他顺序执行
  8. MySQL的内连接和外链接的区别
  9. MySQL事物的隔离级别,怎么查看
  10. jwt相较于传统的session有什么优点
  11. websocket和http的区别
  12. 限流的策略
  13. redis的淘汰策略
  14. redis的应用场景

美团一面

  1. 介绍一下你的项目
  2. 项目中的亮点在哪儿
  3. 对面向对象的理解
  4. 介绍一下集合框架
  5. 说一下JVM的内存模型
  6. Spring的启动过程
  7. HashMap和ConcurentHashMap底层怎么实现的,两者有什么差别
  8. 怎么避免哈希冲突
  9. 说一下信号量和锁
  10. 看你项目中有用到RRateLimiter,你说一下怎么实现的
  11. 限流算法知道哪些
  12. redis的持久化怎么做的
  13. 说一下MySql的锁
  14. 介绍一下RocketMQ,你项目中是怎么用的
  15. RocketMQ和RPC有什么区别,为什么不用RPC

算法:三数之和(LeetCode-15),买股票的时机(LeetCode-121

去哪儿

  1. 假如ArrayList和LinkedList的大小都为200,要在100的位置上插入一个元素,谁更快
  2. 多线程的运行结果
  3. 网关用的是同步的吧,那如果调用岂不是一直阻塞,怎么办
  4. 40核60G,要求达到1000qps,每个请求200ms,问需要部署几台机子,每台机子的线程池怎么设置
  5. 关于聊天室项目,要设计消息未读数,如果一个人有一万个群,怎么查未读数?

拼多多

  1. 常用的数据结构有哪些
  2. 为什么学Java
  3. Java怎么实现跨平台的呢
  4. 如果我每次都根据不同的平台编写对应的代码,这个字节码文件岂不是没用了
  5. ArrayList和LinkedList的区别
  6. ArrayList可以容纳多少个元素呢,如果我想要容纳更多的元素怎么办
  7. HashMap底层是怎么实现的
  8. HashMap链表什么时候转换成红黑树,那会转换会链表吗,什么时候转换
  9. 如果没有重写hashcode能使用HashMap吗,会出现什么问题
  10. 为什么每次扩容是原来的两倍,为什么数组的大小是2的幂次,不是的话会怎么样
  11. 网上也有很多API平台,为什么要做API平台呢

算法:让a转换成b的最小步数,有两种转换方式,a=a10+1和a=a2,如果不能转换就输出-1

维信金科

  1. 介绍一下最近所做的项目
  2. 聊天室里面的表设计
  3. 为什么房间表要分成两个,一个不可以吗
  4. 消息发送怎么保证不重复,怎么保证不丢失呢
  5. redis用在哪儿
  6. Java用的什么版本,spring Boot用的什么版本
  7. 为什么要使用spring Boot呢
  8. 依赖怎么注入的,怎么解决的循环依赖
  9. 拦截器的原理是什么
  10. hashtable 和 hashmap有什么区别
  11. 流知道吗,使用流会出现什么问题
  12. 基本类型怎么比较
  13. 包装类型可以用等于比较吗,那要怎么比较,有的包装类型为什么可以直接用等号判断
  14. 我要怎么判断一个对象是null呢,直接用==吗
  15. 聊天室中的文件上传是怎么做的

SHEIN

  1. 算法:最大交换(leetcode-670)
  2. tcp的拥塞控制
  3. MySQL的事务隔离级别
  4. 在读已提交情况下,a事物提交的数据,b能读到吗
  5. rocketmq如果有四个组,三个消费者组,怎么进行映射
  6. redis用了哪些数据结构,用来干嘛
  7. jvm调优怎么调,为什么要调优
  8. 说一下怎么用GPT解决问题的
  9. 平时怎么沟通的,有自己的一套方法论吗

信通亿力

  1. 自我介绍
  2. 说一下实习内容
  3. 实习用的框架是什么
  4. spring cloud有哪些部分
  5. dao层里面有什么
  6. mybatis的标签有哪些
  7. querywarpper和lambda表达式有什么区别
  8. 集合有哪些
  9. map和set有什么区别
  10. map的方法有哪些
  11. jdk8新特性说一下
  12. springMVC有哪些注解
  13. post和get的区别

睿联 一面

  1. 转nodejs的意愿
  2. 自我介绍
  3. 多态的理解
  4. 方法中参数是值传递还是引用传递
  5. 抽象类和接口的区别
  6. http的URL组成部分,https的请求报文有哪些组成
  7. http和https的区别,https是怎么保证安全性的
  8. 合成和聚合有什么区别
  9. 装饰器模式和***的区别
  10. 普通工厂和抽象工厂的区别
  11. MySQL中索引是怎么运行的
  12. 什么情况会索引失效
  13. 为什么采用b+树
  14. MySQL脏读和幻读的区别、怎么解决幻读
  15. 项目中的难点
  16. 为什么你使用了jwt还用redis管理
  17. 优雅停机是什么意思,怎么实现的
  18. Linux中权限的设置、可执行权对于文件夹是怎么体现

睿联 二面

  1. 实习具体内容、流程、使用的框架
  2. 介绍聊天室项目,有在用吗;设计的初衷;优雅停机怎么实现;单机和多机的实现上有什么区别;分布式锁用在哪里;
  3. API接口项目,说一下你划分模块的依据;在团队协作中这样划分会不会出现问题,如果队员想要添加一些功能或者依赖,怎么知道要放在哪个模块;API签名认证算法怎么实现的;你是怎么做限流的,在哪一层做限流。
  4. 自己设计限流算法,在哪一层做,要用哪些中间件,比如redis用什么数据结构、怎么存储
  5. 怎么用GPT解决问题的,有什么最佳实践吗

Shopee 一面

  1. 自我介绍
  2. 介绍一下做的好的一个项目,写出模型,流程,建表语句,以及技术选型,为什么这么选
  3. 介绍你知道的树,有什么区别,分别运用在哪些地方
  4. 算法:翻转二叉树(LeetCode226)(二面的算法:对于一个数组a,i < j 并且 a[i] <= a[j] ,则距离为j - i,求最大距离。例一:输入:[3, 5, 4, 2] 输出:2。(英文题目,不过大概意思能看懂))
  5. 一个猴子在山下往山上搬桃子,总共有90个桃子,一次能搬45个桃子,然后路程是45米,每走1米的话,他要吃一个桃子,问猴子最多能带多少桃子上山。如果是100个桃子,一次搬50个桃子,路程是50米呢?
  6. 设计一个手机验证码登陆,写出具体交互,模型,选用的技术以及怎么使用,要能防盗刷

卓望

  1. 自我介绍
  2. 介绍实习,具体是做什么工作
  3. 你有没有什么写代码规范,可以提升性能(关闭资源等)
  4. 接口和抽象类的区别
  5. concurrentHashMap是怎么保证线程安全的
  6. sql注入的原理,怎么避免sql注入
  7. 浅拷贝和浅拷贝,怎么实现深拷贝
  8. 单一职责的理解
  9. springboot默认容器是Tomcat,怎么换成其他的
  10. 接口和网络测试工具有用过哪些,如果要查找线上问题用什么工具呢

建信金科

  1. 自我介绍
  2. 介绍一个你觉得做的最好的项目
  3. 有哪些表
  4. 前端怎么请求到后端
  5. 业务分为几层
  6. 怎么实现的aop
  7. 为什么要用分布式锁,用在了哪里
  8. 怎么做日志检测的,用的哪些指令
  9. 线程池用的自带的吗还是自己定义的
  10. git遇到冲突了怎么办
  11. mybatis怎么实现拦截的
  12. hashmap是线程安全的吗,用什么代替

CVTE

  1. 自我介绍
  2. 介绍一下聊天室这个项目,遇到的难点,是自己解决的还是
  3. 在路由服务中,怎么知道我联系的人在哪个机子上
  4. tcp怎么连接的,三次挥手不行吗
  5. 内存泄露和内存溢出
  6. 多线程要注意哪些问题,如果一个线程没执行完但锁到期了会出现什么问题,怎么解决
  7. 网页展示的流程,要经过哪些节点
  8. API项目的难点,说一下请求的流程,如果要提高请求的qps怎么做,如果是MySQL的瓶颈怎么优化
  9. 最近有没有学什么新技术
0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
什羊
下载 APP