Posts

2025英伟达面经与真题

Image
 英伟达作为近几年来全球AI竞赛的最大赢家,几十年前起步时仅仅是个游戏加速引擎的小玩家,后经多次垂死挣扎转型成为GPU高级玩家,逐渐在游戏配置、虚拟货币挖矿、AI服务器方面成为全球领头羊,我对英伟达的崇拜和向往要从2022年全球AI大模型爆发开始,在此之前,英伟达对我来说顶多算是个游戏服务器厂商和钻漏洞做挖矿GPU的公司,但它现在成为我职业发展的选项之一。 三年前我从中科大数学系本科毕业后到美国芝加哥大学作为交换生,进修芝加哥大学的计算机科学专业,在校期间,曾多次找学长推荐进入Microchip开始实习,一开始做一些嵌入式软件开发,后经转岗从事算法研究工作,去年毕业后通过多轮面试正式成为英伟达的员工,但这一路上并不是非常顺利,曾多次面试碰壁,没有顺利通过所有环节,好在师兄在面试上也给予了许多帮助,包括简历优化、 OA代做辅助 ,模拟面试和面试题分享等,可以说如果没有师兄的鼎力相助,我大概率是没法进入英伟达任职的,毕竟我的实习经验并不算很亮眼。 今天主要想通过这篇文章分享一些我对英伟达面试的一些流程总结和一些技术考察点的分享,便于有需要的同学进行提前做准备,别再像我一样反复碰壁。 英伟达软件开发工程师招聘和面试大致流程 英伟达的面试流程通常始于简历筛选,候选人需要在简历中充分展示相关的经验和技能。通过初步筛选后,符合条件的申请者将被邀请参加在线测试(OA),主要考察编程和解决问题的能力。这一阶段对于能否进入下一环节至关重要。 在线测试表现优秀的候选人可能会先进行一到两轮电话面试,之后才会被邀请参加现场面试(Onsite)。现场面试环节以其复杂性著称,通常包括多轮技术面试,涵盖编程练习、系统设计以及对过往项目的深入讨论。这一阶段旨在考察候选人的技术实力以及是否契合公司文化。 简历筛选 在英伟达,简历筛选流程采用AI算法自动完成,重点关注相关经验和技术技能。约75%的申请者会在这个初步阶段被筛掉,通过初步筛选的申请者通常会进行在线测试(OA),主要考察编程和解决问题的能力。在线测试中表现顶尖的候选人会被邀请参加初步的电话筛选。 电话面试 英伟达通常会为软件工程师候选人安排一到两轮电话面试。这些初步的通话侧重于评估技术技能和文化契合度,内容包括编程问题以及对过往项目和经验的讨论,电话面试设计得比较精简,通常每轮约45分钟。候选人可能会被要求解决编程难题或解释复杂算法...

TikTok面试中对数据结构和算法能力的考核点与应对方法

Image
在 TikTok 的技术面试中,我们不仅考察你的硬实力,更关注你在高压下的临场反应和问题解决能力。你需要快速理解问题,清晰地表达思路,并在面试官的追问下展现你的深度和广度。今天,我们回顾一场由CSOAsupport参与的 TikTok SDE 面试辅助过程实况,看看候选人是如何在我们的协助下应对实时问题挑战的。 面试开始,在确认了基本的音频和屏幕共享后,面试官通常会直接切入正题,大致对话如下: 面试官: “你好,请简单介绍一下你自己,重点突出与我们职位相关的经验和技术栈。” 候选人: “您好,我是一名拥有五年后端开发经验的工程师,目前在一家知名互联网公司负责核心业务系统的研发。我的主要技术栈包括 Golang、Java,熟悉微服务架构、分布式系统以及高并发场景下的性能优化。在之前的项目中,我主导了多个核心模块的设计与开发,例如用户增长和内容推荐系统。我对 TikTok 这样充满活力的平台非常感兴趣,也相信我的技术能力能够为团队做出贡献。” 面试官: “你提到内容推荐系统,能详细说说你最近参与的一个最具挑战性的项目以及你在其中的角色吗?” 候选人: “最近我参与的一个挑战性项目是对现有推荐系统的实时性进行优化。由于业务快速发展,原有的离线计算模型已经无法满足需求。我负责了将部分核心推荐逻辑迁移到实时计算框架 Spark Streaming 上,并引入了基于 Redis 的低延迟特征存储。这个过程中最大的挑战在于保证数据流的稳定性和实时性,以及如何在高并发场景下进行精准推荐。我主导了技术方案的设计和核心代码的开发,并负责了整个迁移过程的监控和调优。” 面试官: “在实时计算的优化过程中,你遇到了哪些具体的技术难点?又是如何解决的?” 候选人: “主要的难点在于数据一致性和延迟控制。为了保证数据一致性,我们采用了 Kafka 作为消息中间件,并设计了完善的数据校验机制。在延迟控制方面,我们对 Spark Streaming 的任务调度和资源分配进行了精细化调优,并利用了 Redis 的 Pipeline 特性来减少网络开销。此外,我们还引入了基于时间窗口的聚合计算,以平衡实时性和准确性。” 面试官: “好的,接下来我们来看一道算法题。” 面试题目: Problem Statement: 设计一个简易的限流器。假设我们有一个 API 接口,要求在过去 1 分...