华为线下面试-通用软件开发
Java语言,华为通用软件开发,线下一天面完,记录一下面试过程。
一面
主要偏一些基础的数据结构、排序和java的基础
- Java问了多线程的状态,sleep、yield、wait的概念
- Redis的缓存击穿、雪崩
- 数据库的优化怎么实现的
- 反射的概念
- 抽象类和接口的区别
- 项目中那个地方使用到了抽象类
- NIO和BIO
- 多线程怎么保证数据的一致性
- 线程死锁怎么解决
算法题:二维矩阵,值为0或1,找到每个位置最近的0
的距离,返回一个二维数组的结果
二面
主要偏项目相关问题,但是不会问具体很深的知识点
- List和数组的区别
- 项目中某个功能的实现的输入输出是怎么确定的
- 项目中的Flask怎么使用的
- SQL的注入安全
- SpringBoot在项目中对开发的帮助在哪里,
- 数据中间的传输、存储过程,是怎么保存在数据库中的,传输的频率、时间等具体的信息、
- 后端和数据库的连接是怎么实现的
算法题:力扣32最长有效括号和64最小路径和
主管面试
主要是对个人性格、抗压性的问题
- 项目的分工,自己负责的部分
- 对华为文化的看法
- 你怎么看力扣刷题
- 遇到一个不配合的对接人,怎么处理
- 让你负责一个项目,你觉得最重要的因素是什么?
- 你认为你现在做的数字化对你所在的领域有什么帮助、有什么未来的发展方向
- 你的发明专利和软著是怎么想出来的
- 想要选择的方向
主管面没聊薪资,感觉有些奇怪。