华为od面试记录

一、笔试(100+100+200)

第一题是数据流中的中位数

第二题是某通信公司,新员工编号生成问题

第三题是面试官调度问题

总结:运气不好,没有抽到简单题,都是中等难度题目,但是运气又好了点,考试前一个小时刷题碰到了跟第三题类似的,结果第一题100%,第二题空着了,第三题做出来了。就这样通过了.

二、性格测试:沿着乐观,积极向上,奋斗,团结,合作,听取他人意见等思路走,问题不大。

三、技术一面:

自我介绍
项目介绍
先是追着项目问,项目中遇到的最大的挑战是什么,怎么解决的。
jvm内存模型
gc的时机
年轻代和老年代gc的区别,底层实现。
priorityQueue底层原理
常用设计模式
springmvc的流程
自定义的bean怎么交给spring管理

面试官比较仁慈,没有多问,20来分钟就开始手撕代码。
题目是一个数组,按字符出现次数正序排列,如果次数相同,则倒序。比较简单。

四、技术二面:

bean的加载过程
spring容器加载哪些bean,加载哪些配置文件
非spring管理的bean怎么使用spring管理的bean
多线程处理共享变量的几种方式
设计模式,用到了哪些
mybatis dao接口与mapper怎么映射的。多数据源怎么映射
mybatis 分页怎么实现的
sql优化

手撕代码题目是 一个数组,找出非成对出现的一个数字,比较简单。

尴尬的时候来了,两轮技术面试评级不同,要加面。。。。

五、技术三面:

说实话,这是我经历过的面试中历时最长的一次,1小时40分钟。。。。被虐的不行了,考察了太多方面的技术,面完后我是懵逼的。。

大致回忆一下:

上来就是一道编程题:

一个字符串,找出至多存在两个重复字符的最长子串,直接暴力破解了,然后被问有没有更好的思路,说了个动态规划,就算过去了。

java:问了多线程,锁,线程池核心参数,参数设置依据,怎么看线程里任务的执行进度。volatile的作用,锁的原理等

jvm:问了运行时数据区域,各自作用,年轻代和老年代的gc区别,年轻代的对象满足什么条件下会转移到老年代。full GC一般持续多久会对应用产生影响,有没有看过gc的日志。

异常问题排查:cpu爆满的排查,内存爆满的排查,应用运行了一段时间突然变慢的排查,接口响应慢怎么排查,怎么定位是哪块代码的问题。

代码规范:写代码是要注意哪些东西,从性能上,可读性,可扩展性上分析

数据库:索引,sql优化,执行计划

中间件:redis的常用数据结构,用在什么地方。分布式锁的原理。kafka用在什么地方,消息丢失问题以及怎么解决。

spring:aop怎么理解,有什么好处,使用场景,aop的原理,有没有自己实现过动态代理。

暂时只能回忆这些了,后面再更新吧。

然后就通过了三面,定级终于定下了,等着综合面试和人事面了。后续继续更新接下来的面试。

更新。。。。。

这周一,也就是10月底,迎来了人资面试,主要内容:

自我介绍,了解平时爱好,会根据爱好追问,判断爱好是否真实。其次聊家常,家庭情况,判断是否稳定,以及侧面考察对加班的看法,职业规划等。还有薪资讨论等。时长30分钟。

接着第二天11.01就综合面试了。这个面试安排的挺快的,有点意外,因为网上都说主管面试很难约,有的等了一周,有的等了半个月的。可能运气好,正好主管有空吧。主管面应该是个业务主管,聊聊家常,了解做项目的经历,项目中遇到的最困难的事情,怎么解决的。以及加班的看法,因为华为的加班那是少不了的。反问环节问了部门业务的问题。感觉还是有前景的,能赚钱的业务才是好业务。最后还是谈薪资。结束。

11.02,接到通知,通过了,等offer的审批流程,说是3-5个工作日,看下最后需要多久吧,回头再来更新。 更新。。。。。 11.10晚上收到offer,第二天去体检了,可以找出体检报告快速的医院。体检结果出来后,还需要一周时间,才能入职,因为工卡的制作和邮寄,需要一周时间。但是如果想加快入职也可以,但是入职第一周没有工卡。每天只能通过访客证入园区,访客证是每天开一次,稍微有点麻烦。

你可能感兴趣的:(笔记,面试,职场和发展)