双 9 非科班转码|华为 OD 软件开发岗面经:机考 360 分,HR 压力面 + 两轮技术面
·
双 9 非科班转码|华为 OD 软件开发岗面经:机考 360 分,HR 压力面 + 两轮技术面
个人背景
- 学历背景:双 9 硕士,非计算机科班。
- 工作经历:曾在某 FAB 企业工作,离职后通过社招转码。
- 面试公司:华为 OD。
- 面试岗位:软件开发工程师。
- 机考语言:C++。
- 机考成绩:360 / 400。
点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解
华为OD面试真题精选:点击立即查看
一、机考环节
机考成绩为 360 / 400,使用语言为 C++。整体通过机考后进入后续面试流程。
二、HR 面
HR 面整体更偏压力面。面试官重点围绕“非科班背景”进行追问,例如:
- 非科班转码的动机是什么?
- 硕士学历与本科相比,对软件开发岗位的帮助体现在哪里?
- 如何证明自己具备软件开发岗位所需的能力?
过程中 HR 对非科班背景提出了较多质疑,整体氛围有一定压力,但最终通过。
建议:
非科班候选人在 HR 面中,需要重点准备以下内容:
- 转码动机要清晰,避免只说“行业前景好”。
- 要能说明自己为转码做过哪些系统性准备。
- 要突出项目、刷题、实习 / 工作经历中与软件开发相关的能力。
- 面对压力提问时保持稳定,不要急于反驳,可用事实和经历回应。
三、技术一面
技术一面以 项目经历 + C++ 基础 + 操作系统基础 + 手撕算法 为主,整体问题较偏基础八股。
项目相关
- 介绍项目经历。
- 围绕项目细节进行追问。
C++ 基础
- C++ 内存管理。
- 智能指针及循环引用。
- C++ 多态的实现机制。
char数组和string的区别。- 什么是
double free?什么是悬垂指针?分别在什么情况下发生? - C++ 类型转换。
inline和define是否有类型检查?new/delete和malloc/free的区别。- 构造函数能否是虚函数?析构函数是否可以是虚函数?为什么基类析构函数通常要声明为虚函数?
操作系统基础
- 进程和线程的区别。
- 死锁的概念、产生条件以及预防方式。
手撕算法
- 无重复字符的最长子串。
四、技术二面
技术二面相较一面更偏综合能力考察,包括软件开发理解、问题解决能力、面向对象思想、STL 容器、调试工具以及项目深挖。
综合能力问题
- 你认为什么是软件开发?
- 工作中遇到无法解决的问题时,你会怎么办?
- 你如何理解面向对象编程?平时写代码时如何体现?
C++ / 数据结构基础
map和unordered_map的区别。- 红黑树的定义。
- 红黑树查找过程。
map和unordered_map的时间复杂度。
工具使用
- 是否使用过 GDB?
- 常用 GDB 调试命令有哪些?
项目深挖
面试官对项目进行了较多深入追问,部分问题理解难度较高,需要结合项目实际尽量作答。
手撕算法
- 正则表达式匹配。
五、整体感受
整体流程中,机考成绩较好,但技术面中部分八股问题回答不够系统。技术一面偏基础,技术二面更看重项目理解、工程能力和表达逻辑。对于非科班转码候选人来说,除了刷题和背八股,更需要准备好“为什么转码”“如何证明自己能胜任软件开发岗位”“项目中体现了哪些工程能力”等问题。

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)