ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

华为AI岗秋招面试全流程复盘:机试、手撕代码与项目深挖实战经验

华为AI岗秋招面试全流程复盘:机试、手撕代码与项目深挖实战经验 1. 面试前我是怎么做准备的1.1 投递渠道和简历侧重点2025年秋招的节奏比往年更早我大概是在9月初就开始在华为官网招聘页面填了简历。这里有个很多人会忽略的点华为的招聘系统里同一个岗位在“校招正式岗”和“华为OD”两个通道下都可能出现填的时候一定要看清楚岗位编号和用工性质。我当时的目标是AI岗具体方向偏自然语言处理和大模型应用所以投递时优先选了与AI平台、算法应用相关的正式岗同时也留意了OD岗位作为备选。简历方面我针对性做了三轮修改。第一轮是把项目经历精简成“背景—动作—结果”三段式每段控制在三行以内第二轮是把技术栈单独拎出来写清楚框架版本和部署环境比如MindSpore 2.x、PyTorch 2.x、昇腾310推理卡这些第三轮是把竞赛和论文按含金量排序把与AI直接相关的放在最上面。华为的简历筛选比较看重“匹配度”不是看你会多少东西而是看你做过的东西和岗位方向对不对得上。所以投不同部门时项目描述的措辞我都会微调把关键词往岗位职责上靠。9月中旬收到了在线测评和机试通知。测评就是常规的性格测试和逻辑测试这部分只要保持前后一致、别故意选极端值基本都能过。真正决定能否进入面试的是后面那场机试。1.2 机试准备按华为的套路来华为的AI岗机试和开发岗机试用的是同一套题库就是大家常说的华为OD机试、华为OJ那套题。我刷题前先花了一晚上搞清楚规则3道编程题总分400分第一题100分、第二题100分、第三题200分考试时间大概两个半小时。需要注意的是题目分数和难度不完全成正比但第三题通常涉及更复杂的算法和数据结构。刷题策略上我没有盲目去刷LeetCode的困难题而是按华为题库的考点分布来。参考了历届面经和题库目录重点刷了这几个方向数组和字符串处理、栈和队列应用、二分查找、双指针、动态规划、图的最短路径、树的遍历与重建。华为的题有一个特点就是题干特别长喜欢包一层业务场景比如“设备日志解析”“流量调度”“任务分配”之类的但剥掉外壳后内核还是经典算法。所以平时练习时我会有意识地训练自己快速读题、提取核心模型的能力。另外还有一个细节华为机试现在普遍采用双机位监考也就是需要一台电脑答题、一台手机或者平板放在侧后方拍摄。考试前一定要提前调试好摄像头权限和网络环境避免考试当天因为设备问题耽误时间。我就是因为提前做了这个准备考试时省了不少心。2. 机试那天三道题把我问出汗了2.1 机试的真实环境与流程我预约的是10月8号的机试线上进行。登录系统后页面会显示倒计时和题目列表。整体界面很简洁左边是题目描述右边是代码编辑区支持的语言包括C、Java、Python等我选了Python。这里提醒一句华为机试的系统对Python的版本和可用库有明确说明基本就是标准库加一些常用库但像numpy这种第三方库是不一定可用的。所以如果平时习惯了用numpy处理数组考试前最好适应一下纯Python的写法免得临时抓瞎。机试过程没什么特别的仪式感但监考确实严格。副机位的手机需要打开指定的监控软件并且全程不能离开镜头范围。环境里不能有其他人、其他电子设备纸质笔记我建议也别放桌上免得被判定违规。这年头找工作不容易别在这种地方踩坑。2.2 三道题的考点复盘第一题是字符串处理给定一段设备日志让我解析出特定格式的时间戳并排序。这题剥掉外壳后本质就是“按规则拆分字符串自定义排序”属于送分题。但我当时多留了个心眼把时间戳的合法性判断也写了进去因为题目里确实隐藏了一条“非法记录需要跳过”的说明。这类细节就是华为机试的典型风格题干长、条件多漏看一条就可能导致用例过不全。第二题是一个典型的动态规划问题背景是“AI训练任务分成若干子任务每个子任务有耗时和依赖关系求并行执行的最短时间”。我当时先把依赖关系转化成图再用拓扑排序的思路求关键路径。这道题难度中等关键是识别出“关键路径”这个模型。如果对拓扑排序和DP不熟很容易绕进贪心的坑里所以刷题时一定要把这类经典模型练熟。第三题是最耗时的一个关于“网络拓扑中计算最少需要部署多少个AI模型副本满足所有节点请求”的问题。拿掉背景后是“覆盖问题”的变种我用了树形DP来解。说实话这题我并没有在考试时间内完全跑通所有用例但把主体逻辑写对、过了部分用例就交了。华为机试是按用例给分的部分通过也能拿到不少分数所以遇到难题别直接放弃能拿一分是一分。2.3 机试成绩与后续节奏机试结束后大概一周我收到了成绩通知和性格测评的链接。华为的流程是机试通过后再安排技术面试。这里的节奏有点看部门有的部门机试完两三天就会约面有的会拖到一两周。所以在机试结束后就要开始准备面试了不要等收到通知再临时抱佛脚。我给自己定的准备周期是三天重点做三件事把简历上每个项目按“技术难点解决方案量化结果”重新梳理一遍把大模型相关的八股文过一遍再把常见的AI技术栈和华为自研的框架摸了摸底。这三件事后来被证明完全押中了面试的重点。3. 技术面一面拷打项目二面追问前沿3.1 一面项目深挖 手撕代码一面安排在10月10号上午面试官是一位做AI平台开发的工程师。开场先让我做了两分钟自我介绍然后直接进入项目深挖环节。他问的问题非常细细到让我怀疑他是不是比我还熟悉我的项目。他挑了我简历里的一个RAG问答系统项目连续问了十几个问题你的文档切片策略是怎么定的Embedding模型为什么选这个检索回来的Top-K是多少怎么调的重排模型用了交叉编码器还是别的结构回答的置信度阈值怎么设的推理时延大概多少我当时只准备了大方向被问到细节时确实有几处卡壳后来我坦诚说这是团队协作项目部分参数是同事调整的然后立刻补充了我自己负责部分的技术细节。面试官点头表示理解接着又问了改进空间和上线后线上效果。这里分享一个心得项目经历写到简历上就意味着你要对它负全责。哪怕某个模块不是你亲手做的也要把来龙去脉搞明白因为面试官默认“你写在简历上就等于你懂”。更好的策略是简历上只写自己深度参与的环节其余提一下就好。一面后半段是手撕代码。面试官在共享白板上出了一道题实现一个带过期时间的LRU缓存。这道题说难不难说简单也不简单需要在传统LRU基础上增加一个过期时间的判断。我用了哈希表加双向链表的经典结构来写然后在get的时候判断数据是否过期。写完后面试官追问了两个问题如果多个线程同时访问怎么办你的过期策略是惰性删除还是主动清理这两个问题其实是考察并发编程和系统设计意识我分别说了加锁方案和让写入操作顺带清理过期项的思路。一面整体持续了大概50分钟面完感觉技术问题回答得七七八八手撕代码虽然调了几分钟bug但最终跑通了。3.2 二面大模型、Agent、还有AI编程二面安排在下午面试官是一位技术专家看起来级别更高。这一面明显更看重技术视野和对前沿方向的思考能力代码题反而没怎么考。开场他先问了我对大模型应用落地的看法我讲了RAG、Agent、以及AI编程辅助工具这“三驾马车”。提到AI Agent时我说自己试过用LangGraph搭工作流也关注过Spring AI这类把大模型能力集成进Java后端生态的框架。面试官对Spring AI饶有兴趣问我在企业级场景下用这类框架有什么好坏我就结合部署、可观测性、工程化这些维度聊了聊。这里能感觉到华为AI岗不仅要懂算法更看重你能不能把模型变成产品里真正能跑起来的模块。接着他问了一个让我印象很深的问题“如果给你一个业务场景比如客服工单自动分类你怎么从零设计一套方案”这个问题考的是全链路思维。我按照“数据收集与清洗—预训练/微调—模型选型—部署与迭代”的结构回答期间他不停追问数据量大概多少标注成本怎么控制阈值怎么定模型误判了怎么办整个问答像在做一个简化的项目评审。最让我紧张的是他问到了AI编程工具。他表示作为工程师他本人会关注这类工具对研发效率的影响问我怎么看待AI编程会不会让一部分开发岗被替代。我回答说AI编程目前更像是“高级补全工具”它能减少重复劳动但需求分析、架构设计、质量保障这些环节仍然依赖人的判断短期内不是替代关系而是工作方式的改变。他听后没有评价对错只是点了点头继续下一个问题。二面结束后我对华为AI岗的认知加深了一层他们要的不是只会在模型层面调参的人而是能站在工程和业务角度把AI技术落地成稳定系统的人。3.3 主管面聊的其实不是技术三面是主管面气氛明显比前两轮轻松。这一轮没有问具体的算法题或技术细节更多是围绕我的经历、性格和做事方式展开。主管问了我三个方面的内容第一过去遇到最大的技术挑战是什么怎么克服的第二对加班和高强度工作的看法第三职业规划是怎么考虑的。他特别关注抗压能力和团队配合能力反复确认我在协作项目中扮演的角色以及遇到分歧时怎么处理。我自己的原则是真实坦诚。说到加班我没有一味表忠心而是说愿意为了项目节点全力以赴但也强调更看重工作成果和个人的持续成长。说到职业规划我讲了两三年的短期目标在AI工程化方向做出深度成为团队里可以独当一面的人。主管比较认可这种务实的态度。这一面大概30分钟聊完我心里反而有些打鼓因为技术问题少容易让人摸不清判断标准。但后来复盘发现主管面核心就是看你的性格和价值观跟团队合不合拍这种问题没有标准答案做自己反而最稳妥。4. 华为AI岗的几个细节很多人容易忽略4.1 OD和正式岗投递前就要想清楚华为OD这个机制每年秋招都有很多人搞不清楚。OD全称是Outsourcing Developer虽然日常工作和正式员工在一起但在编制、待遇、晋升路径上是有差异的。我身边有几个朋友走的是OD通道他们入职后在工作内容上和正式员工差别不大但转正需要满足特定条件比如绩效考核优秀、项目表现突出并且要有名额。我的建议是如果你是应届生优先走校招正式岗如果正式岗简历被筛掉或者面试没通过再考虑OD作为备选。不要一开始就投OD因为OD和正式岗在系统里是不同流程一旦进入OD流程再想转投正式岗可能会有障碍。另外投递时注意看清楚岗位描述里写的用工性质别迷迷糊糊投错了。4.2 华为技术栈的“隐藏考点”华为AI岗面试中除了互联网公司常问的PyTorch、TensorFlow还会频繁出现华为自研的技术栈。我在准备时特意花时间了解了MindSpore框架的特点、昇腾系列芯片的算力定位以及ModelArts平台在模型训练和部署中的作用还了解了一下华为盘古大模型的演进脉络和行业应用方向。面试时这些内容不一定直接问但当你提到大模型、推理优化、模型部署时面试官很可能会顺势问“你们有考虑过昇腾环境吗”“有没有了解过MindSpore和PyTorch的性能差异”如果你能接上这些话题会被认为对加入华为有更强的意向。这是隐藏的加分项也是我在面试中明显感觉到占优势的地方。4.3 面试时长和节奏的把控华为的面试节奏比很多公司要紧凑得多。我这一天之内就完成了两轮技术面和一轮主管面中间间隔只有十几分钟。这种紧凑安排对体力和心理状态都是考验尤其是上午机试刚消耗了大量脑力下午还要连续作战。我的应对方式是面试间隙哪怕只有十分钟也要去洗手间洗把脸、喝口水快速在手机上回顾一下下轮可能问到的内容。不要和别人聊太多无关的话题节约精力。另外因为每轮面试之间可能直接切换面试官建议提前把简历和项目材料放在手边随时能打开再说一遍技术方案。5. 复盘与避坑清单5.1 时间线管理秋招是一个漫长的过程别以为面完华为就结束了。我建议列一个表格记录投递的公司、岗位、投递日期、流程节点和备注。我自己的表格里华为这一行从“投递简历”到“机试通过”到“面试完成”都有时间记录。这样既不会错过后续通知也方便复盘每一家的进度节奏。另外不同公司的秋招时间会有重叠可能出现同一天收到多家公司面试通知的情况。这时候要根据自己的优先级排序比如把最想去的公司的时间先定下来其他公司尝试协调时间。我当时就遇到了一场冲突好在及时发邮件沟通把另一家时间调整到了第二天。5.2 手撕代码的三个习惯经过华为这轮面试我意识到手撕代码环节有几个习惯特别重要。第一写之前先和面试官确认边界条件。比如这个数组是不是一定非空、整数有没有取值范围这些看似废话的确认能帮你规避很多隐藏用例。第二代码写在编辑器里时不要贪快先把框架搭好再填细节最后自己口头跑一遍测试用例。我一面时就是靠这个习惯在提交前发现了一个列表越界的错误。第三写完不要立刻说“完成了”主动分析一下时间和空间复杂度再说可能的优化方向。哪怕不优化这个动作也会给面试官留下好印象。5.3 几个值得注意的小坑第一个坑是简历里写了太宽泛的技术栈。我一开始写了一堆“熟悉机器学习、深度学习、NLP、CV”但项目经历里只有NLP方向的内容面试官很容易顺着简历问你CV的问题答不上来反而减分。后来我把简历改成了“深度掌握NLP相关技术熟悉CV基本方法”既诚实又避免被追问。第二个坑是别忽略HR面。华为的流程里HR面虽然主要谈薪酬和意愿但也会考察你的沟通表达和入职稳定性。别以为到了这一步就稳了回答“为什么选择华为”这类问题时还是要认真组织语言。第三个坑是Offer沟通中的细节。华为的薪酬结构、绩效奖金、工作地点和部门归属都值得在收到意向通知后仔细确认清楚。我见过有同学拿到意向书后才发现岗位地点和自己预期不符这就很麻烦了。所以接到HR电话时一定要把关键信息问清楚别不好意思。写到这里这轮华为AI岗的面试经历算是完整复盘了一遍。如果你正在准备秋招希望这篇内容能帮你少走一些弯路。最后分享一个小技巧无论面试结果如何每场面试结束后都花十分钟记录下面试官问过的问题和自己的回答这些记录就是你后续面试最宝贵的练习素材。
返回列表