平台工程师面试问题
拥有成熟平台团队的公司招聘经理报告,60%的候选人在技术面试中失败不是因为工具知识,而是系统设计思维和用业务语言解释基础设施决策的能力 [1]。平台工程面试与通用DevOps面试有一个关键区别:面试官评估你是否将基础设施视为内部产品。
关键要点
- 预期三阶段面试:行为/文化适配、技术深潜、系统设计
- 行为问题聚焦平台即产品思维:开发者同理心、跨团队协作、事件领导力
- 技术问题测试Kubernetes内部、IaC设计和可观测性架构
- 情景题评估你如何优先处理多个团队的竞争需求
- 准备4-5个涵盖平台影响、事件响应和开发者体验改善的STAR故事
行为问题(STAR格式)
1. 描述你构建了一个开发者最初抵制的平台功能。如何推动采纳?
**考察点**:平台工程师构建内部产品。采纳率是终极指标。 **STAR框架**:情境——开发者每周提交50+基础设施工单。行动——开发者访谈、试点构建、安全标准达标验证、指标公开。结果——3个月从1个团队扩展到12个团队,基础设施工单减少67%,满意度从3.2/10提升到8.4/10。
2. 讲述你作为事件指挥官领导的最复杂的生产事件。
3. 两个产品团队对平台有冲突的需求。你如何解决?
4. 如何说服管理层投资平台基础设施而非功能开发?
5. 如何衡量你构建的平台的成功?
**框架**:DORA指标、开发者满意度调查、自助服务采纳率、新工程师首次部署时间、平台可用性SLO。
技术问题
1. 从应用Deployment清单到容器运行,Kubernetes中发生了什么?
**评估**:kubectl → API服务器(认证、授权、准入控制器)→ etcd持久化 → 调度器(过滤、打分、绑定)→ 选定节点的kubelet → CRI调用 → CNI网络 → 就绪探针通过 → 端点注册。
2. 为拥有15个产品团队的组织设计Terraform模块策略。
**评估**:模块组合、状态隔离、远程后端配置、RBAC、模块版本管理、漂移检测策略。
3. 为运行500+Pod的集群实现零停机Kubernetes升级。
**评估**:PodDisruptionBudget、节点池滚动更新、API服务器版本偏差策略、升级前验证、金丝雀集群策略、升级期间监控、回滚程序。
4. 为服务50个微服务的平台设计可观测性栈。
**评估**:指标(Prometheus + Thanos)、日志(Fluent Bit → Loki)、追踪(OpenTelemetry → Tempo/Jaeger)、关联、基于SLO的告警、自助服务Grafana仪表板。
5. 开发者报告部署需要45分钟。如何诊断和优化?
**评估**:系统性追踪流水线:代码检出、依赖安装、构建、测试、镜像推送、ArgoCD同步、Pod调度。先识别瓶颈再优化。
6. Kyverno与OPA/Gatekeeper的区别。何时选择哪个?
**评估**:OPA/Gatekeeper使用Rego语言,学习曲线陡峭,适合复杂跨资源策略。Kyverno使用原生Kubernetes YAML策略,门槛更低,支持验证、变更和生成策略。
情景问题
1. 5人平台团队同时收到8个产品团队的请求。如何优先排序?
**方法**:按影响(受影响开发者数×严重程度)、紧急度、战略对齐分类。透明的接入流程:周度优先级会议、公开路线图、按请求类型的SLA。
2. 新CTO要求6个月内将全部基础设施从AWS迁移到GCP。
**方法**:影响评估、分阶段方法——先通过Terraform模块抽象云耦合、非生产环境POC、有回滚能力的生产迁移。如时间线不现实则提供证据反驳。
3. 工作时间内Kubernetes集群出现间歇性Pod驱逐。
**方法**:检查节点级资源压力、资源请求vs实际使用、嘈杂邻居效应、自动扩缩器日志。实施ResourceQuota和LimitRange。
4. 40%的Terraform状态文件6个月未应用,漂移累积。
**方法**:不盲目terraform apply。对每个状态文件运行plan,分类漂移,实施持续漂移检测,建立治理策略。
5. VP工程要求其团队直接访问生产Kubernetes集群。
**方法**:替代方案:通过RBAC的只读kubectl、Grafana仪表板、临时调试容器、日志聚合。如坚持——实施有审计日志和自动撤销的限时访问。
面试官评估标准
**技术深度(40%)**:能否在组件级别解释系统如何工作? **系统设计(25%)**:能否架构大规模服务多团队的平台组件? **产品与沟通(20%)**:能否用业务术语解释基础设施决策? **事件与运维(15%)**:能否系统性地诊断生产问题并防止再发?
向面试官提问
- "平台团队如何衡量成功?追踪哪些KPI或SLO?"
- "平台团队正在优先解决的当前开发者体验痛点是什么?"
- "平台团队相对于产品团队如何组织?"
- "当前部署频率是多少?瓶颈在哪?"
- "团队最近做出的最具争议性的基础设施决策是什么?"
- "平台团队的值班是什么样的?"
- "是否有架构评审或RFC流程?"
最终要点
平台工程面试评估三个维度:Kubernetes、IaC和云基础设施的技术深度;开发者体验和平台采纳的产品思维;事件响应和系统调试的运营成熟度。准备围绕可衡量的平台成果的STAR故事。
常见问题
预期几轮面试?
通常4-5轮:招聘人员筛选、行为、技术深潜、系统设计、团队/文化面试。2-4周。
创业公司vs大公司准备有何不同?
创业公司强调广度,大公司强调特定领域的深度。
Go编程有多重要?
中级以上越来越重要。如果公司构建自定义Kubernetes operator——事实上必需。
如果没有公司使用的特定工具经验?
聚焦可转移概念。ArgoCD vs Flux——GitOps原则相同。
**引用:** [1] DORA / Google Cloud, "2024 Accelerate State of DevOps Report," dora.dev, 2024.