华为OD面试

个人情况:23届硕,大数据方向,之前在导师安排下在某行北分实习一年,主要做些报表开发,后在字节实习半年做数据仓库,没有HC就没法转正,2023春招签约联洋国融,7.10入职,8.3被裁,理由:公司降本增效。找工作ing......

面试前:听HR说华为OD是按照招聘者选择开发语言进行面试的,之前实习主要做数据仓库,好久没碰Java了,顿时紧张起来......

笔试机考(不到300,有个题实在想不出用例)+性格测试

技术一面(2023-08-23):

1.为什么没在字节转正

行情不好,没有HC

2.讲一下常见的数据结构

顺序表,链表,然后讲了下他们的区别;栈,队列;树,图,大致讲了些常见的种类。

面试官又问了下队列,刚才应该是跟招聘部门联系了,没太注意我说,然后又问了堆(这个是我忘了说),接着说跟招聘部门沟通了,主要是做大数据相关,问些大数据相关知识(心里窃喜)

3.讲一下大数据的三驾马车

讲了Hadoop的HDFS、MapReduce和Yarn(我相信大多数人都会这样讲)。面试官说Yarn和MR应该属于一驾马车,让我想想还有没,然后给我说还有一驾马车是HBASE,我心里想着是不是面试官不是做大数据的所以不太懂呀,后来搜了下,小丑竟是我自己最早学习Hadoop时确实看过大数据的发展史,但那么久早忘完了,大数据的三家马车基于Google发表的三篇论文:分布式文件系统 GFS、大数据分布式计算框架 MapReduce 和 NoSQL 数据库系统 BigTable。具体有兴趣的可以自行 查阅相关知识。

4.刚才你讲的HDFS中,除了三副本存储之外,还知道哪些保证高可靠性的技术?

一开始说了校验和保证数据的正确性,但面试官想要的不是这个结果,想起了Hadoop3.0有个纠错码技术,节省存储成本同时还可以通过算法恢复丢失的部分数据,面试官应该想要这个答案,说了个类似得技术,名字没听过,但技术类似。

5.MapReduce存在的问题怎么解决?

刚开始以为问的点是Shuffle的痛点,答了一些优化知识,后来发现面试官想要的答案是Spark等较新的技术对MR的优化部分,就是Shuffle是不可避免的,把中间结果落盘存储改到内存中;还提了下Tez引擎,最后听面试官的话应该直接说Spark为什么MR快,模型、计算等方面。

6.Spark调度过程

简单打了下任务的提交,StageSchedule、TaskSchedule以及资源分配

7.Flink相对Spark的优势

Flink不太了解,就没回答。

8.讲下HBASE

这点没问具体问题,直接让自己将,就讲了下大概,没往深处将。后来想想还是应该选择一个点往深处讲。

9.谈一下对大数据未来发展方向的看法

一下子高度就拉满了,讲了处理响应时间这一块,后来想了下还可以讲下存储这一块。

10.讲下过去做的项目

11.深度遍历和广度遍历

这个比较简单,还OK

12.算法题,上台阶

斐波那契数列,用dp数组写了之后问还能不能,优化下,就用三个变量滚动式计算节省了空间。

最后又问我斐波那契数列的原理,当场去世...

----------------------------------------------------------------------------------------------------------------------------

技术二面(2023-08-25):

这次面试就纯纯Java后端的问题了

1.字节实习主要做了哪些内容?

2.遇到哪些问题?

3.对数仓做过哪些优化?

4.有没有接触过一些事务的处理?

实践没接触过,回答了下事务的四大特性,以及MySQL中的事务级别。

5.连接池的优点?

减少连接响应时间;面对激增的连接请求有个缓冲作用(专业词:平滑扩展);提供特殊需求(可配置),如单连接连接池。后来查了下,还有个资源复用。

6.讲一下死锁

回答了产生死锁的四大必要条件,想要避免死锁,只需打破其中任意一个条件即可。(进程和线程都可能发生死锁)

7.讲一下知道的Java设计模式

23中设计模式,知道的有单例模式,工厂模式,服务端-客户端模式,观察者模式,后面俩还只是知道

8.讲一下循环的递归的区别

递归就是重复调用自己,需要有个退出条件,如果达不到条件可能一直递归,然后OOM,循环中每一步的动作都是一样的。然后面试官给讲了下可以从代码的实现,可读性和维护性上分析,这点确实是没考虑到的。

9.进程和线程的区别

通常一个进程包含多个线程;

进程是操作系统分配资源的最小单位(线程是调度和任务执行的最小单位,这句没说出来);

进程内所有线程共享资源(说的不准确,方法空间和代码是共享的,但程序计数器和运行栈是私有的);

进程之间通讯要比较麻烦,而进程内线程通讯相对来说比较简单;

(进程的切换花销要比线程的切换大);

(进程有自己的执行入口,顺序执行序列和执行出口。线程不能独立执行)

10.代码题

N*3的矩阵,列顺序不变,任意挑出3行数据能组成对称矩阵,求有几种这样3*3的矩阵。

想到了回溯,但时间关系不敢去尝试,用了暴力遍历。

----------------------------------------------------------------------------------------------

二面过了之后HR说评级B级,技术定级不透漏,最高给到15k,接受不了就给拒了

#面经#
全部评论
老哥,求回复,华为不是大公司吗,为啥只能开15k的,这感觉中厂都不止15k啊
1
送花
回复
分享
发布于 2023-08-29 17:18 上海
感谢
点赞
送花
回复
分享
发布于 2023-08-29 10:47 江苏
滴滴
校招火热招聘中
官网直投
兄弟几篇文章写的都很好,对其他人选很有帮助,应届3周那个实在有点惨哈哈哈哈哈
点赞
送花
回复
分享
发布于 2023-08-29 11:40 广东
我的天,还会问三驾马车这种问题啊
点赞
送花
回复
分享
发布于 2023-08-29 17:09 上海
三个月试用期80%薪资就更低了 还没绩效
点赞
送花
回复
分享
发布于 2023-08-31 02:06 海南
兄弟,你现在咋样了?我是社保交了一个月,难受呀
点赞
送花
回复
分享
发布于 2023-09-11 09:58 上海
哥们现在找到了吗
点赞
送花
回复
分享
发布于 04-19 21:33 河北

相关推荐

头像
04-29 11:17
C++
本人情况:本科211科班,考研二战失败,1年空窗期,本科期间没有找实习,可以说对工作这方面了解太少了,犹豫的时候看别人的面经关注了@华为HR(OD)郑经理(240308510) 这位,她很贴心地私信我了解了情况,然后开始准备od机试。Base:成都一、机试3月27号开始准备机试,因为个人原因耽误了时间4月9号才完成机试,正常情况下一周时间准备即可。三道题分别是找朋友、火星文计算和可处理的最大任务数,运气比较好400分通过。Hr会给你发题库,我的建议是可以做**hot100里面的简单题和中等题,然后去csdn上找一下今年od机试c卷的题做做。二、性格测试4月10日完成性格测试,按hr辅导的做就能通过。三、hr资面4月11日进行资面,比较轻松,在简单的自我介绍后hr问了一些我的基本情况,问了一点简历上写的项目,问如何看待加班,然后向面试官提问。四、技术一面4月15日技术一面,先自我介绍,然后询问简历上的项目,问项目中间遇到了什么困难以及怎么解决的。然后手撕代码,先撕了**#20有效的括号,然后又出了一道#14最长公共前缀,都通过了,之后面试官会问你答题的思路。之后就是八股,c与c++的区别、c++的内存分布模型、栈和堆的区别,其他的几个问题忘了。还根据简历上课程询问了数据库,linux操作系统,不过我忘得差不多了,面试官也没有为难。最后向面试官提问。五、技术二面4月16日技术二面,二面有点折磨,上来先手撕代码#300最长递增子序列,通过了但是思路有点没解释清楚。之后就被拷打了,问了很多问题,静态变量和局部变量、深拷贝与浅拷贝、虚拟内存相关、面向对象、多态、构造函数和析构函数、类、模板、union、左值和右值、强制类型转换,数据结构常用的树,包括红黑树也问到了,数据库和算法、软件测试。面试管还会延申提问比如我提到了排序,面试官就问有哪些常见的排序方法然后问了我归并排序的思路以及时间复杂度。因为太久没复习了加上面试准备时间挺短的,大概只能回答上一半的问题,总共面试了一整个小时多几分钟才结束。六、主管面4月17日主管面,主管人很好。自我介绍后询问了基本情况,问了点项目相关的问题,然后也简单问了一些c++八股,c和c++的区别、内存泄露、多态等。然后对部门做了简单的介绍,接着就是向他提问,整体比较轻松,谈到了期望薪资。4月25日收到offer。
查看16道真题和解析
点赞 评论 收藏
转发
20 62 评论
分享
牛客网
牛客企业服务