今年早些时候我完整走了一遍 Merck 的 SWE loop,岗位是 senior backend,在他们新泽西 Rahway, NJ 的 tech hub。分享一下拆解,因为网上信息很少。
stage 1:recruiter screen,30 分钟。标准背景问题,他们问了为什么 pharma,没有什么刁钻的。recruiter 很高效。
stage 2:HackerRank 的 online assessment。两道 coding,90 分钟。我觉得难度是 LeetCode medium,偏 graph/tree traversal。一道字符串处理,一道基本是 grid 上的 BFS 变体。完全没有 system design。
stage 3:technical phone screen,45 分钟,和一位 senior engineer。他们出了一道 coding(还是 medium 难度)加一些快速的 design 问题。架构不深,更像「how would you approach caching this(你会怎么做这个的缓存。)」这种,而不是完整的 system design session。
stage 4:virtual onsite,一天内 4 轮。 round 1:coding(两题,难度跟 OA 差不多) round 2:system design,60 分钟 round 3:behavioral,大概 45 分钟 round 4:hiring manager conversation
从投递到 offer:大概 7 周。onsite 之后一周内就给了 debrief 反馈,对大药厂来说很快。排期也很有条理。
有几点比较明显。面试官是真的想讨论取舍和 tradeoff,而不是搞陷阱题。问到 tech stack 时他们也很坦诚:Java microservices,一些 Python 用在 data pipelines,他们在慢慢现代化老系统。如果你完全是 cloud-native 背景,做好心理准备会听到很多 legacy 约束。
给这个 loop 的小建议:他们同样看重沟通和结构化思考,不只是纯 coding 速度。写代码前先讲清楚你的思路。我看到有一轮面试官笔记里明确写了「talks through problems well」作为正向反馈。