Cigna · Primly 社区

Cigna senior / L5 system design 面试:会遇到什么,以及他们怎么定级

staff_steph (Primly starter) · 3 条回复

今年早些时候我走完了 Cigna senior SWE 的面试流程。把我在 system design 这一轮学到的东西分享出来,因为真正的信号基本都在这里。

先说清楚:Cigna 不会对外公开 FAANG 那种 L1-L7 的定级。内部大概对应到 Associate、Software Engineer、Senior SWE、Principal。其中「senior」的要求在 scope 上大致相当于 Google 的 L5 或 Meta 的 E5,不过总包更低。

system design 这一轮 60 分钟,两位工程师一起面。一位基本不怎么说话,主要记笔记;另一位主导对话。我拿到的题是:

「Design a member-facing API that lets health insurance customers check their claim status, view EOB documents, and submit appeals.(设计一个面向会员的 API,让医保客户可以查询理赔状态、查看 EOB 文档,并提交申诉。)」

非常领域化。这是刻意的:他们想看你能不能自己把医疗数据的约束想清楚(PHI、HIPAA、FHIR standards),而不是等他们把每个点都喂给你。我没有深入讲 FHIR 合规,但我把它当作约束提了一嘴,他们明显很兴奋。

他们重点问的: 先讲 API 设计(REST vs GraphQL,他们会追问) 认证:他们很在意医疗 portal 里 session vs token-based auth 怎么处理。我把 OAuth 2.0 flow 讲了一遍。 数据存储:EOB 文档(PDFs,大 blob)用 document storage,claim 记录用 relational。他们会问 tradeoff。 延迟和吞吐:这是 portal,不是实时系统,不需要所有请求都 sub-100ms。把这点说清楚并据此设计,似乎会加分。 故障模式:claims backend 很慢时怎么办,appeal 提交流程如何优雅降级。

他们没问的: Kafka 或 event streaming(没人提) ML/AI 集成(不同团队) 全球规模或多 region。他们主要是 US-focus,不要按 Netflix 那样去设计。

从 debrief 里得到的定级信号(recruiter 分享了一些反馈):他们看的是 senior 候选人能否主导对话、主动识别约束、并把合理的取舍说清楚。到了 principal 级别,据说会期待你去挑战题目的 framing 本身。

如果你在准备,我建议花时间在:claims processing 基础、API 里的 HIPAA 覆盖面、文档存储模式、以及防御式 API 设计。你不需要成为医疗领域专家,但懂这些词汇会很有帮助。

由 AI 翻译,查看原文

3 条回复

ds_dmitri (Primly starter)

他们对 senior 的 data 岗(data engineer / data scientist)也有类似的 design 轮吗,还是只有 SWE 流程会有?我下周有个 Cigna Data Platform Engineer screen,但我找不到他们 design 轮具体长什么样。

由 AI 翻译,查看原文

staff_steph (Primly starter)

不是同一条 track。听我内部另一个候选人说,DE 的 design 轮更偏 pipeline:ingest、transform、serving layer、data quality。少聊 API,多聊 Spark/Snowflake/dbt 这类取舍。不过医疗健康领域的约束应该还是会出现。

由 AI 翻译,查看原文

sec_sasha (Primly starter)

HIPAA/PHI 这一点很重要,我会再延伸一下:如果你至少不提静态和传输中的数据加密、对 PHI 访问做审计日志、以及对敏感理赔数据做基于角色的访问控制,你很可能过不了他们在评估的 security competency。医疗公司很看重这个。不需要你回答 20 分钟,但也不能完全不提。

由 AI 翻译,查看原文