2024后端开发面试题总结

一、前言

上一篇离职贴发布之后仿佛登上了热门,就连曾经阿里的师兄都看到了我的分享,这波流量真是受宠若惊!

回到正题,文章火之后,一些同学急切想要让我分享一下面试内容,回忆了几个晚上顺便总结一下,专家岗位面试主要对项目、技术和算法三个方面进行考查,有问题可以留言讨论。

二、项目篇

项目上要从工作经历中挑有技术或业务难度的项目,这样才能吸引面试官,相应地面试官会适当做些技术或业务上的扩展来进一步考查深度,不要给自己挖坑就行。最好的办法自己尽量要先从项目上挖掘一些延伸可能点,提前做好调研,面试过程中才不至于陷入尴尬的局面。

1)营销平台建设
  • 营销架构分层都有什么?核心领域模型是什么?

  • 每满减、阶梯满减怎么支持?

  • 互动任务的类型有哪些?周期性任务怎么设计 ?

  • 营销稳定性都做过哪些事情?

  • 营销计算时比较耗费cpu,怎么解决?

2)跨境供货平台
  • 业务链路是什么?核心领域模型是什么?系统难点在哪里?怎么解决?

  • RBAC与 ABAC 区别?数据权限怎么设计?

  • DDD 思想,聚合、实体、值对象的概念?怎么识别出领域模型?DDD六边形架构解决什么问题?DDD战略设计核心点?

三、技术篇

技术上八股文考查的非常少,主要是偏并发类的场景题:

  • 怎么在最快时间内发送大量消息?

  • qps 100,数据库只有3qps,怎么保证用户侧无感访问同一个热点key?

  • 数据库:explain 索引类型优先级、range类型的优化、深分页的优化方式

  • 缓存类:redis读取key超时解决方案

  • 设计类似于 diamond(配置中心)的系统

  • 并发类:线程池原理,以及曾经遇到的坑有哪些?

  • 微信摇一摇功能的实现,要求以最快速度匹配时间接近的人?

  • 分布式锁实现的方式有几种?可能会出现什么问题?

  • 两地三中心,数据怎么同步?(订阅binlog+kafka,同时要解决数据回环问题)

  • 有没有遇到过服务挂了,但 cpu 和内存都正常的场景,假如没有遇到,可能的原因有哪些?(比如I/O瓶颈、业务线程池满、GC都可能)

四、算法篇

针对后端开发岗位,算法题难易程度普遍是:简单、中等,建议 leetcode Top150热题中等偏下即可,不要纠结于 hard 等级的题目,也没有必要。

  • 最小差

  • 按奇偶排序数组

  • 两数之和等于target,并返回满足条件两个数的索引

  • 单例线程安全一种写法

  • 场景算法开放题:对已存在的文件目录,请实现一个往指定文件中追加内容的算法。

    核心思路使用树结构来存储,然后使用深搜的方法找到追加文件,最后将内容追加进去。

java 复制代码
/**
* targetFile:目标文件,如/a/b/c.txt
**/
public void appendContext(String targetFile, String context) {
    //......
}
相关推荐
XiaoLeisj2 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
paopaokaka_luck2 小时前
【360】基于springboot的志愿服务管理系统
java·spring boot·后端·spring·毕业设计
dayouziei2 小时前
java的类加载机制的学习
java·学习
码农小旋风3 小时前
详解K8S--声明式API
后端
Peter_chq3 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
Yaml44 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
小小小妮子~4 小时前
Spring Boot详解:从入门到精通
java·spring boot·后端
hong1616884 小时前
Spring Boot中实现多数据源连接和切换的方案
java·spring boot·后端
aloha_7894 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot
记录成长java5 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet