小米信息部(武汉研发中心)✅
基本信息
- 业务领域: 小米集团企业数字化中台、全球供应链 ERP/CRM、智能办公协同(飞书/小米办公套件集成)、人事与财务运营中台
- 技术栈: Vue3 / React / TypeScript / Node.js / 微前端 (qiankun) / 低代码引擎 / Ant Design / Vite
- 团队规模: 800+ 人(信息部在武汉设有大规模中台产研基地)
- 办公地点: 武汉市东湖高新区高新大道 666 号小米武汉总部大楼
- 公司性质: 500 强知名上市公司核心中枢支撑部门(小米集团)
- 薪资水平: 18k-35k * 14-16薪 + 集团年终奖 + 六险一金
岗位类型
- 企业中台高级前端工程师: 负责全球供应链采购、仓储物流调度、财务对账等核心 ERP/CRM 系统开发。
- 低代码流程平台架构师: 负责集团统一表单构建器、可视化审批流(BPMN)设计器与中后台物料组件库研发。
- 中后台体验与效能专家: 负责微前端主子应用治理、权限中心 SSO 统一单点登录、以及万级数据报表表格性能攻坚。
技术特色
- 企业级超大规模微前端集群:
- 集团信息部门下辖数百个独立的业务中后台子系统,采用微前端(qiankun / 模块联邦)统一集成到集团办公门户,兼顾独立部署交付与主应用全局状态联动。
- 可视化低代码表单与审批流编排(BPMN):
- 自研可视化流程设计器,支持跨部门、多分支并行条件、驳回重审与动态节点审批人员解析。
- 百万级工业数据报表与复杂单元格计算:
- 面对跨国财务结算与供应链库存报表,攻坚双向虚拟滚动、动态单元格合并、行内编辑与公式拓扑解析。
面试流程概览
校招流程
- 统一在线机试 (90min): 计算机基础知识、数据结构与算法编程题。
- 专业一面 (50min): 基础语言掌握度、Vue/React 双栈理解、单链表反转与常见数据结构手撕。
- 专业二面 (60min): 中后台复杂业务场景题(权限设计、表单联动、动态表格)、手撕算法。
- HR 终面 (30min): 综合素养评估、跨部门沟通协作能力考察。
社招流程
- 技术初试 (60min): 深入复盘过往中后台/供应链业务架构,现场编码链表操作与表单联动思路。
- 技术复试 (60-75min): 深入考察微前端沙箱与通信机制、低代码动态表单引擎设计、动态规划算法。
- 部门总监面 (45min): 数字化中台长期技术演进思路、业务价值度量与复杂跨团队推进案例。
- HR 面与发薪: 背景调查与职级薪酬核定。
题库
P0 核心必考题
1. 单链表原地反转(迭代与递归实现及防断链核心推导)?
答案
核心结论:
单链表反转(LeetCode 206. 反转链表)是数据结构中最经典也是考察频率最高的算法题。其核心难点在于:在修改节点指针指向时,原链表的下一个节点引用会丢失(断链)。解题关键是在修改 curr.next 之前,必须使用临时变量 nextTemp 提前保留后继节点引用。双指针迭代法空间复杂度为 $O(1)$,时间复杂度为 $O(N)$,为生产环境最优解。
原理解析与双指针迭代推导:
- 维护两个指针:
prev(初始化为null)与curr(初始化为head)。 - 循环遍历链表直至
curr === null:- 暂存后继:
const nextTemp = curr.next; - 反转指向:
curr.next = prev; - 双双步进:
prev = curr; curr = nextTemp;
- 暂存后继:
- 循环结束时,
prev恰好指向原链表的最后一个节点,即新链表的头节点,直接返回prev。
标准代码手写:
class ListNode {
val: number;
next: ListNode | null = null;
constructor(val?: number, next?: ListNode | null) {
this.val = val === undefined ? 0 : val;
this.next = next === undefined ? null : next;
}
}
// 1. 双指针迭代法 (最优解,推荐面试书写)
function reverseListIterative(head: ListNode | null): ListNode | null {
let prev: ListNode | null = null;
let curr = head;
while (curr !== null) {
const nextTemp: ListNode | null = curr.next; // 1. 暂存后继节点防止断链
curr.next = prev; // 2. 反转当前节点指针
prev = curr; // 3. 前驱指针前移
curr = nextTemp; // 4. 当前指针前移
}
return prev;
}
// 2. 递归法 (辅助拓展)
function reverseListRecursive(head: ListNode | null): ListNode | null {
if (head === null || head.next === null) {
return head;
}
const newHead = reverseListRecursive(head.next);
head.next.next = head; // 让后继节点指向自己
head.next = null; // 断开原正向引用防止成环
return newHead;
}
面试官视角:
- 考核候选人指针操作的熟练度与边界情况考量(空链表、单节点链表)。
- 延伸追问:“如何实现链表内指定区间 $[m, n]$ 的局部反转(LeetCode 92)?”
- 答:“使用虚拟头节点(Dummy Head)定位到第 $m-1$ 个节点,采用头插法将区间内的节点依次前置插入。”
2. 企业数字化中台复杂审批流动态节点校验与 BPMN 流程编排引擎设计?
答案
核心结论: 在企业中台 ERP/OA 体系中,业务审批流包含串行审批、并行网关(会签/或签)、排他网关(条件分支路由)与驳回重申。前端可视化编排引擎采用**图形图元数据模型(Graph Model: Nodes & Edges)+ 状态机执行器(FSM)+ 动态表达式求值(Expression Evaluator)**架构。节点间通过唯一的流转事件驱动,确保在复杂分支与并行合并时能够精准校验流程合法性与合规死锁。
原理解析与架构设计:
- 数据模型(JSON / XML Schema):
- 流程定义抽象为有向图结构,包含
startNode、userTask(审批节点)、exclusiveGateway(分支路由)、parallelGateway(并行会签)与endNode。 - 边(Edge)附带条件表达式(例如:
${amount > 50000 && department === 'IT'})。
- 流程定义抽象为有向图结构,包含
- 合法性与死锁静态校验:
- 流程发布前必须执行图遍历算法:
- 孤立节点检测:除起止节点外,所有节点入度与出度必须 $\ge 1$;
- 环路死锁检测:使用 DFS 深度优先遍历配合染色算法排查非预期的死循环依赖;
- 可达性验证:从开始节点出发必须能够保证存在至少一条有效路径直达结束节点。
- 流程发布前必须执行图遍历算法:
- 动态条件求值:
- 在前端表单填写时,输入数据实时推入流程引擎沙箱,解析网关出边条件,在 UI 上实时高亮预测后续将要流转的审批人,提升审批透明度。
面试官视角:
- 考核候选人对大型企业级复杂业务的建模与系统架构抽象功底,是否具备平台型产品的设计能力。
P1 高频必会题
1. 万级行数、多维度动态合并单元格的 Web 表格高性能渲染方案?
答案
核心结论:
在供应链财务对账场景中,表格数据动辄数万行,且存在多列跨行跨列合并(rowspan / colspan)。若使用原生 <table> 渲染全部 DOM,极易导致浏览器假死。解决方案是采用二维虚拟滚动(2D Virtual Scroll)+ 预编译合并区间映射树(Merge Map):在数据加载后预先计算合并单元格的绝对起始与跨越坐标,渲染视口时,只要合并区域与视口相交,就动态扩展渲染该合并单元格并在视口边缘执行吸顶锚定,兼顾极致流畅度与复杂合并展示。
面试官视角:
- 考察点:是否经历过大中型企业数字化系统的高难性能攻坚,能否驾驭复杂的几何计算与虚拟滚动算法。
真实面经问题精选
一面
- 自我介绍与过往中后台供应链/企业应用核心难点。
- IMSDK 长连接在企业协同工具中的设计与心跳保活。
- 表单动态联动、字段动态校验与条件依赖收集。
- 企业前端架构设计如何保证多团队统一规范落地。
- 最接近目标的三数之和算法手写。
- 单链表原地反转(双指针迭代法)。
二面
- 履历背景核验与工程突破复盘。
- 字符串数字解码方案总数计算(动态规划推导)。
- 字符串模式匹配与排列检测(滑动窗口)。
- 连续子数组最大和(Kadane 算法)。
考察重点速览
- 企业中台架构深度:微前端集群集成、动态表单引擎、低代码可视化流程编排。
- 数据结构与算法基本功:链表操作、双指针相向夹逼、动态规划与滑动窗口。
- 大型数据渲染性能:海量数据表格双向虚拟滚动、复杂单元格合并与 Canvas/DOM 混合渲染。
备考建议
- 链表与算法高频题默写:链表反转、K个一组反转、环形链表必须做到 10 分钟内零 Bug 编写。
- 梳理微前端与中后台架构经验:准备好讲解基于微前端的单点登录、权限模型(RBAC)与样式沙箱隔离方案。
- 理解企业级流程与表单:熟悉基于 JSON Schema 的动态表单设计与 DAG 有向无环图分析。