← 返回岗位列表

阿里巴巴

校招

AI芯片编程模型设计实现-阿里星

北京/成都/杭州/上海 · 校招 · 2027 届 · 博士

长期有效

任职要求

  • 计算机科学、软件工程或相关专业,硕士及以上学历(博士优先)
  • 深入理解编译原理,在编译器前端(Parsing/Type Checking)、中端(IR/Optimization)、后端(Code Generation/Register Allocation)中至少精通一个方向
  • 熟悉 LLVM、GCC 等主流编译器框架的架构和实现
  • 扎实的 C/C++ 编程能力,良好的数据结构和算法基础
  • 理解编程语言理论,熟悉异构计算编程模型
  • 对计算机体系结构有基本理解,了解指令集、流水线、存储层次等概念
  • 加分项
  • 有异构计算编程模型(CUDA/OpenCL/SYCL/OpenMP)的设计或实现经验
  • 参与过 LLVM、GCC、Rust、Clang 等主流编译器或编程语言项目的核心开发
  • 有 DSL(领域特定语言)设计经验,或设计过自己的编程语言
  • 有程序分析(静态分析/动态分析)、形式化验证(Formal Verification)相关经验
  • 在编程语言、编译器领域发表过顶级论文(PLDI/POPL/OOPSLA/CGO/CC/ICFP 等)

岗位描述

我们正在为自研 AI 芯片打造全新的编程语言和编译器工具链。这不是一个简单的""移植 LLVM 后端""的工作——你需要从零开始思考:什么样的编程模型能让开发者高效地表达 AI 计算?什么样的类型系统能在编译期捕获更多的并行化机会?什么样的中间表示能同时服务于高层优化和底层代码生成?

你将参与设计面向 AI 芯片的编程语言(DSL),开发编译器前端(Parser/Type Checker/IR Builder),构建中端优化框架(数据流分析、循环变换、自动并行化),以及实现后端代码生成(指令选择、寄存器分配、指令调度)。你的工作将定义开发者如何在自研芯片上编程,影响深远。

  • • 设计并实现面向 AI 芯片的编程语言,包括语法设计、类型系统、语义定义、标准库设计
  • • 开发编译器前端,包括词法/语法解析、语义分析、类型检查、中间表示生成
  • • 构建编译器中端优化框架,包括但不限于:数据流分析、死代码消除、循环优化(Loop Fusion/Tiling/Unrolling)、内联、常量折叠、自动向量化
  • • 实现编译器后端,包括指令选择、寄存器分配、指令调度、代码生成
  • • 设计中间表示(IR),平衡表达能力和优化空间,支持多层 IR 渐进降级(Lowering)
  • • 与硬件团队协作,参与指令集设计评审,确保编译器能充分利用硬件特性
  • • 计算机科学、软件工程或相关专业,硕士及以上学历(博士优先)
  • • 深入理解编译原理,在编译器前端(Parsing/Type Checking)、中端(IR/Optimization)、后端(Code Generation/Register Allocation)中至少精通一个方向
  • • 熟悉 LLVM、GCC 等主流编译器框架的架构和实现
  • • 扎实的 C/C++ 编程能力,良好的数据结构和算法基础
  • • 理解编程语言理论,熟悉异构计算编程模型
  • • 对计算机体系结构有基本理解,了解指令集、流水线、存储层次等概念

加分项

  • • 有异构计算编程模型(CUDA/OpenCL/SYCL/OpenMP)的设计或实现经验
  • • 参与过 LLVM、GCC、Rust、Clang 等主流编译器或编程语言项目的核心开发
  • • 有 DSL(领域特定语言)设计经验,或设计过自己的编程语言
  • • 有程序分析(静态分析/动态分析)、形式化验证(Formal Verification)相关经验
  • • 在编程语言、编译器领域发表过顶级论文(PLDI/POPL/OOPSLA/CGO/CC/ICFP 等)

你的简历匹配这个岗位吗?

上传简历,AI 会对照这份 JD 指出你的差距和需要补强的地方

该岗位可能会问的问题

基于 算法 岗位的常见面试问题整理

请解释 Transformer 模型的自注意力机制(Self-Attention)

类型专业能力·难度困难
查看答题思路

1. Self-Attention = 序列中每个 token 与所有 token 计算相关性权重 2. Q=Wq·x, K=Wk·x, V=Wv·x; Attention(Q,K,V)=softmax(QK^T/√d_k)V 3. 除以 √d_k 防止点积过大导致 softmax 梯度消失 4. 多头注意力:多组 QKV 并行,拼接后线性变换,捕获不同子空间特征 5. 对比 RNN:可并行计算,捕获长距离依赖

你做过的最有深度的算法/模型项目是什么

类型项目经历·难度中等
查看答题思路

1. 一句话说清任务:分类/生成/检索/推荐 2. 模型选型:为什么选这个而非那个 3. 数据:数据量、来源、清洗策略 4. 创新点:你做的改进是什么(不是调参) 5. 结果:核心指标提升(准确率/召回/延迟)

过拟合是什么?怎么判断和解决

类型专业能力·难度简单
查看答题思路

1. 过拟合=训练集表现好、验证集表现差,模型记住了噪声 2. 判断:train loss 持续下降而 val loss 上升 3. 解决:更多数据 / 正则化(L1/L2) / Dropout / 早停 / 数据增强 / 降低模型复杂度

解释梯度下降的原理,SGD 和 Adam 的区别

类型专业能力·难度中等
查看答题思路

1. 梯度下降:沿负梯度方向更新参数,使损失降低 2. SGD:每次用随机小批量估算梯度,引入随机性帮助跳出局部最优 3. Adam = Momentum + RMSProp:自适应学习率 + 动量加速 4. Adam 收敛快但可能泛化不如 SGD;CV 常用 SGD,NLP 多用 Adam

给你 10 万条未标注的文本数据,如何找出其中 10 个主题

类型情景/案例·难度中等
查看答题思路

1. 预处理:分词、去停用词 2. 向量化:TF-IDF 或 Sentence Embedding 3. 聚类:K-Means(需指定 K=10)或 HDBSCAN(自动确定类数) 4. 或 LDA 主题模型直接输出主题-词分布 5. 评估:看每个簇的高频词判断主题合理性,迭代调整

更多面试题库功能即将上线

信息来源:企业官方招聘页。投递前请以官网信息为准。