3.25 OPPO 底软开发 一面面经(4.8更新,二面已凉)

4.8号更新(其实是4.2号看到挂的),已经挂了。基本上没怎么问项目,问了一些基本的Linux八股,比如调度有哪些。然后问了问我以前实习(老板公司)的项目,问我在里面最困难的是什么,学到的最珍贵的是什么等hr面的内容,第二天早上起来就挂了。

虽然也理所当然,有朋友前一周就HR面+OC了,这个岗位本来就少(据说是成都2+深圳3?),我在下一周才二面,就这么说服自己好了
————————————————————————————————————

3.27更新,OPPO发二面通知了,下周二

————————————————————————————————————

看了一圈好像没看到比我更快的,我自己也觉得快。我今天下午五点回学校的路上突然接到HR的电话,问我能不能今晚七点半面试,我想想觉得面就面吧,就接了。

本人双偏上9,但是本科不是计算机的。研究生对操作系统和嵌入式都感兴趣,因此做的一个手搓操作系统的项目,一个是C51检测氢气和温度的项目。

面试官看起来人还不错,说话比较好听。

1.自我介绍,我稍微说了一下我的bg和爱好,他小声说了一下我本科(我本科不是计算机),问我既然本科不是计算机的,有没有学过计算机的一些基本的书籍,我说有(确实有)。
2.问我对哪些语言比较熟悉,我说我C、C++都比较熟悉,实验室横向也用Python比较多。

于是这里开始问C语言的基本题目:

3.问我i++和++i的区别,出了一道a = i++,a的值。
4.问我数组和链表的区别,我回答主要是连续内存分配上。他问我那什么时候用数组什么时候用链表,我说如果要求连续分配(比如随机访问)用数组。
5.问我栈和队列的区别,我说先进后出和先进先出(这里有点乌龙,我嘴快说反了,然后纠正),接着问我用栈来实现队列,我提出的是双栈方法。
6.然后问我操作系统进程和线程的区别,我说简单来说就是进程是资源分配最小单位,线程是执行调度最小单位,线程会共享进程的资源,然后也有自己的独立的栈用来保存局部变量函数调用之类的。
7.问我现在有一个进程里面有一个变量a,有两个线程分别对这个a++(执行100次),最后的结果是多少。我说大概是200,因为量比较少,可能不会有很明显的竞态。如果量很大(比如10w次)且不上锁,得到的结果就小于20w。

操作系统到这里结束,然后就是拷打项目。

8.首先问我觉得哪个项目最能体现自己的能力,能说服他让我通过面试,我说那就问我操作系统的项目吧。但是因为问的太杂,我没回答到他的点子上。于是他换了个问题,问我这个操作系统项目最难的是什么,我说是debug,因为本身不是用户态软件可以用断点来debug,因此遇到问题就只能逐行删除编译,或者print方法。我也补充应该还有dbg方法可以用(但是我自己确实连不上)
9.问我中断,问我怎么实现的中断。我说是先写stvec,把中断代码入口放进去。有中断的时候就进入这个入口,然后把重要寄存器sepc、sstatus和x0-x31之类的保存,然后调用实际的中断句柄,用scause里的值来判断是哪种中断。我以syscall为例解释了一下整个流程。
10.让我解释一下我这个操作系统的定时器中断下,两个进程之间的上下文切换。我说将cpu的需要保存的信息(如sepc、sp、tx)之类的保存到自己的内核栈里面去,然后将下一个进程的内核栈中保存的这些数据还原到cpu内,这样就完成了上下文切换。
11.问我怎么实现的虚拟地址到实地址的转换,我解释了一下我自己实现的riscv的rv39机制。

反问:
我问他OPPO这个岗位更看重的是什么?
他的回答是这个岗位看中的是实习生的潜力,他们都把实习生当成一张白纸,如果有潜力,进去之后再培养。毕竟是实习生又不是社招(类似的话)。

总的来说今天的面试我有点忐忑, 因为面的实在是太基础了,我以为会问我比较细节的嵌入式八股或者操作系统细节,结果C语言的问题给我把脑子干懵了。

目前还是已完成面试,先放一个害怕在这,怕kpi更怕一眼觉得不行水时长
#0offer互助地##投递几十家公司,到现在0offer,大家都一样吗##投递几十家公司,到现在0offer,大家都一样吗#
全部评论
我昨天底软二面过了,约的周五HR面,好奇面试官是怎么耐心的听完你讲rcore的,我也是这个项目,面试官直接说rcore和xv6都是toy项目,企业里用不到,一面时无数次打断我,二面的时候我就吸取教训只说Linux下的实现了,感觉讲rcore面试官听不懂也不愿意听,只能拿来当跳板去讲Linux。
3 回复 分享
发布于 03-26 19:12 陕西
我靠,感觉问的也太简单了,哥们复筛直接挂了
2 回复 分享
发布于 03-25 20:44 上海
哥,看下状态码,可以看到自己过没过
1 回复 分享
发布于 03-25 21:18 陕西
窝趣还问这些啊 哥们基础知识贼差 明天面😂
1 回复 分享
发布于 03-25 21:09 四川
佬,你的os是那个rcore吗?还是改了改?
点赞 回复 分享
发布于 04-23 08:53 浙江
佬,咱俩操作系统项目一样
点赞 回复 分享
发布于 04-13 20:14 吉林
这么少的hc!我已经在xhs看到至少3个人排序拿offer了
点赞 回复 分享
发布于 04-08 21:48 新加坡
牛牛牛
点赞 回复 分享
发布于 04-01 08:39 江苏
哥你有二面了吗?二面是技术面吗?
点赞 回复 分享
发布于 03-29 19:15 广东
感觉你应该更稳很多人都只有二十来分钟
点赞 回复 分享
发布于 03-28 14:52 广东
楼主你投的是第一轮吗?过了初筛到复筛到面试要过多久呀,想了解一下他投了简历之后的时间进度,
点赞 回复 分享
发布于 03-28 09:50 四川
老哥怎么样了 有更新吗 我下午面的也是已完成
点赞 回复 分享
发布于 03-26 18:20 辽宁
我的复筛也直接挂,感觉卡本科学历
点赞 回复 分享
发布于 03-26 13:08 陕西
哦哦谢谢
点赞 回复 分享
发布于 03-26 13:02 上海
哥一共几面啊
点赞 回复 分享
发布于 03-25 22:59 上海
纯聊天
点赞 回复 分享
发布于 03-25 21:24 黑龙江
czhyyds
点赞 回复 分享
发布于 03-25 21:08 四川

相关推荐

09-22 14:41
已编辑
门头沟学院 算法工程师
面试是24年7月的现在已经入职几个月了,补一下面经,帮有需要的同学参考。BG:本硕985 计算机论文1A1B一面:技术面自我介绍 & 简历相关。简单介绍了自己在多模态和大模型方向的研究/工作经历,包括在校期间的论文工作以及实习经历。面试官主要针对简历上的项目提了一些细节问题,比如具体模型的量级,提升了多少,和哪些方法做了比较等。因为是自己的工作,所以没有卡壳。问有没有遇到过 Python 文件之间互相 import 的问题,出现这种问题怎么办?让我简单介绍了一下 PPO 算法,以及和 TRPO 的区别是什么?接着 PPO,问了一下 ChatGPT 的 RLHF 流程,以及为什么不直接用 SFT,而是要用强化这么麻烦的方式训练模型?继续追问 RLHF、SFT、LoRA 的区别,分别适用于什么场景?反问:公司现有业务是什么,计算资源情况等。二面:主管面论文介绍。让我用通俗的语言介绍我自己发表和投稿的论文,重点是研究动机和要解决的问题。问有没有亲手训练过大模型,最多用了多少张 GPU 卡?并行训练使用的框架是什么?介绍一下 DeepSpeed,说一下这个框架在并行的不同阶段(ZeRO stage)分别做了哪些事?训练模型的时候,数据量有多少,怎么收集数据的,训练花了多少时间?遇到的最大问题是什么?问在大模型全量微调时,显存消耗分别由哪些部分占用?(参数、梯度、优化器状态、激活信息等),分别占用多少?假设模型参数量为N,请分不同情况讨论和计算一下微调所需要的显存(不同精度、batch size、seq len 等)。说一下 LoRA 公式,讲一讲其中 A 和 B 两个矩阵分别表示什么。LoRA 的优缺点是什么,什么场景下适合使用?问知道哪些大模型训练和推理框架,用过哪些?问 LLaVA 的结构是什么,和常规的纯文本大模型有什么区别?Encoder-Decoder 结构的模型转 ONNX 的一般流程,遇到不支持的算子怎么办?可能遇到的问题(动态 shape、模型中逻辑判断需要单独写、模块拆分等)。三面:HR 面主要问了为什么选择公司,对团队的看法,对岗位的认识;未来大致的规划,面试过程的体验,有没有别的公司的 offer 等。以及询问了期望薪资等。之后就是等待,最终和期望薪资基本一致。总体感受面试流程比较顺畅,问题也比较贴合岗位要求;如果和岗位匹配度高,一般流程推进速度会很快。入职以后,工作内容和面试被问的问题也差不多,基本上都是算法工程师需要做的内容,团队氛围也很不错。只是毕竟是企业,不可能光搞研究,在承接业务时还是免不了和很多人打交道和来回battle需求,这个无可避免。
查看19道真题和解析
点赞 评论 收藏
分享
不会hc都被抢完了吧
投递深圳市新凯来技术等公司10个岗位
点赞 评论 收藏
分享
评论
24
53
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务