01.Java后端社招高频500题-v01-38

135 阅读5分钟

更新日志

v1.0-20230905,加入题目,不足100题,答案未找到正确的

有赞:

一面:

  • hashMap原理,put和resize过程

    • 不会
  • 线程池有哪些类型

    • 不会
  • concurrentHashMap分段锁原理,java8和java7实现的区别

    • 不会
  • B-树和B+树区别,数据库索引原理,组合索引怎么使用?最左匹配的原理

    • 不会
  • spring生命周期,几种scope区别,aop实现有哪几种实现,接口代理和类代理会有什么区别

    • 不会

二面:

  • 1.项目介绍

    • 我开发了一个新媒体办公系统,因为有xxx的业务需求,这时候需要xxx模块来提高效率
    • 这个项目使用了SpringBoot xxx
    • 我负责开发xxx模块,用xxx技术实现了xxx功能
    • 我使用了xxx技术解决了xxx问题
    • 我是用xxx技术优化了性能,使用xxx测试工具实测性能提升xxx
  • 2.斐波拉契数列非递归实现

    • 不会
  • 3.短URL实现

    • 不会

三面:HR+主管

  • 你现在做的事情,为什么要离职?反正对你性格生活薪资全面了解

    • 我离职是因为想到北京来发展,我有一些朋友在北京,来了之后方便交流,在北京发展会好一些

今日头条:

一面:

  • 自我介绍,

    • 面试官你好,我
  • 做的项目价值,架构设计,给你一个集群你会怎么分布,考虑哪些因素,容灾、负载均衡

    • 不会
  • 让你来设计咸鱼,你会怎么设计?模型设计

    • 后端微服务,管理系统用若依,商城用SpringBoot springcloud
  • linux常用指令

    • ls 看目录
    • :wd 退出

二面:

  • 算法在线编程

  • 项目,主要做了什么,项目中碰到的问题有哪些,都市怎么解决?你觉得那个项目是最有挑战的

    • 用若依

    • 遇到的问题,解决

    • 有挑战的项目

      • AI,需要思考业务逻辑
  • java多线程,线程池的选型,为什么要选这个,底层实现原理

    • 不知道

三面:

  • 你最熟悉的项目,做了什么,为什么这么做,怎么体现你项目的价值

    • AI舆情分析,我做了系统设计,因为基于对业务的理解,我能更好的生产这个项目,这个项目已经开源在GitHub
  • 让你来推广广告,你会怎么设计?

    • 不会,问Ai
  • java基础问了些,JVM内存模型 G1和CMS垃圾回收器

    • 不会
  • 如何中断线程,await和sleep区别

    • 不会
  • 设计一个秒杀系统

    • 用MQ设计消息队列
  • spring生命周期,几种scope区别

    • 不会

四面:

  • 跟上面差不多

五面:

  • 主管面,主要问项目,然后说下他们在做什么

    • 项目

六面HR:

  • 期望薪资,为什么要离职,现在的级别,会考北京的原因

    • 北京技术发展好,卷的厉害

网易:

一面:

  • RPC原理,netty原理

    • 不会
  • hashMap原理

    • 一种数据结构,红黑树什么的,不太会
  • redis缓存回收机制,准备同步,哨兵机制

    • 不会
  • 要统计10分钟内订单的亏损,你会怎么设计(strom窗口模式)

    • 不会
  • 项目:你做了什么,为什么要这么做,用了什么技术要解决什么问题

    • 做的是管理系统,主要是解决业务流程问题,
    • 用技术提高办公效率
    • 用redis和Es提高了查询效率,公司内部有一个自媒体数据库,有几十万篇文章,供内部引用和参考

二面:

  • 分布式缓存redis原理,

    • 不会
  • zookeeper锁是如何实现的

    • 不会
  • 分布式缓存读写不一致问题

    • 事物?那也不对啊,不会
  • java线程你是怎么使用的

    • 同事解决查询问题,不会
  • 数据库是如何调优的

    • 读写分离
    • 分库分表
    • 使用redis
    • 使用es
  • git rebase命令发生了什么

    • 不会
  • 讨论项目

三面HR:

  • 薪资,为什么要离开,级别

    • 为了发展

华为:

一面:

  • 结构数据库和非结构数据库区别,你了解的非结构数据库有哪些

    • 非关系型数据库我知道有?
  • 频繁的增删数据量某个表,数据库最终数据只有几万或者更少,为什么查询会变慢

    • 不知道
  • 数据如果出现了阻塞,你是怎么排查的,top和jstack命令用过没,jstack命令的nid是什么意思,怎么查看java某个进程的线程

    • 不知道
    • 不会
  • 大数据算法聚类算法有哪些

    • 不会
  • 写一个算法判断某个数是2的n次方

    • 只会循环
  • 说你最熟悉的项目

    • 一个自媒体辅助系统,用了Ai,es,和管理系统
    • 突出功能的实用性

二面HR:

  • 薪资级别,你是怎么抗压的,平时喜欢做什么,对加班什么看法

    • 跑步
    • 看书旅游
    • 能产生价值且薪资合理或者KPI考核规范即可

三面业务主管:

  • 你想做什么,会给你介绍他们部门做的东西

    • 基于自己的技术栈
  • 你自己做的项目,怎么设计的

    • 先实现功能,用最容易实现的技术栈
    • 不要技术资源浪费,
    • 再迭代,敏捷开发

总结

零零碎碎的比较多,整体上面试分为几个部分:

  • java基础知识和源码

    • 源码不会
  • 线程池,这个每个面试都必问,结合使用场景和原理说一说

    • 不会
  • 分布式必要要去了解,每个面试基本都会问,redis、dubbo、kafka或者其他,集群管理zookeeper

    • 不会
  • 数据库性能调优,组合索引和原理也是必问

    • 不会
  • 业务设计能力和架构negligence考察

    • 业务容易一点
    • 技术选型

参考Java后端社招面试经历(三年工作经验)_Coder编程的博客