Epic Systems(位於 Verona, Wisconsin 的醫療資訊巨頭)OA 在 2026 招募季依舊是出名的「混合考核」:情境判斷 + 數學邏輯 + 程式設計三段獨立計分。本指南基於 oavoservice 學員複盤整理,按段拆解高頻題型與失分點。
一、Epic OA 整體結構
職位不同,OA 組合不同。最常見的 SDE / SWE 候選人會拿到三段:
| 段落 | 題量 / 時長 | 題型 |
|---|---|---|
| Situational Judgment Test (SJT) | 30 題 / 30 min | 情境判斷 |
| 數學 / 邏輯 | 25 題 / 35 min | 推理 + 心算 |
| 程式設計 (Coding) | 2 題 / 60–90 min | LC Easy–Med |
三段獨立計分,任何一段不達線都會直接進 reject 池。程式題不是加分項,而是淘汰項。
二、SJT:題面長,看清「Epic 價值觀」
SJT 是大部分候選人栽跟頭的地方。題面通常是 200–400 字的工作場景,讓你對若干應對方案打分(最佳 / 最差)。
Epic 在意的幾個價值觀
| 價值觀 | SJT 中的表現 |
|---|---|
| Customer first | 客戶醫院的需求優先於內部排期 |
| Team transparency | 出問題先告訴同事,再去找 fix |
| Ownership | 不甩鍋、不指責,親自跟到底 |
| Direct communication | 不繞彎,直接說現在哪不行 |
學員還原題(去敏化)
你正在交付一個客戶醫院的緊急 bug fix。同事 A 找你幫忙 review 他另一個專案的 PR,時間衝突。請對以下方案排序: a) 讓 A 等到 fix 上線後再 review b) 立刻停下 fix 幫 A c) 讓 A 找另一個同事 d) 同時做,品質打折
Epic 期望:a 是最佳(直接、客戶優先),d 是最差(品質不可妥協)。注意「立刻停下」這種過度退讓選項往往不是 Epic 想要的答案。
三、數學 / 邏輯:每題平均 84 秒
數學段考察的不是難題,而是速度 + 準確率。常見題型:
| 題型 | 出現頻次 | 關鍵技巧 |
|---|---|---|
| 比例 / 百分比 | 極高 | 分數化 + 估算 |
| 機率 | 高 | 互斥 / 獨立判斷 |
| 數列 / 找規律 | 高 | 二階差分 |
| 單位換算 | 中 | 量綱優先 |
| 簡單組合 | 中 | 乘法原理 |
學員還原題:藥品庫存
一個倉庫每天消耗 X% 的藥品庫存,消耗後立刻補充 Y 單位。已知 7 天前庫存為 1000,現庫存 800,每日補充 50。求每日消耗率(保留 1 位小數)。
思路:列方程式 inv_{t+1} = inv_t * (1 - x) + 50。代入兩端邊界求 x ≈ 6.4%。陷阱:補充先後順序很容易錯。
四、程式設計:2 題,難度 LC Easy–Med
平台是 Epic 自研編輯器(不是 HackerRank),UI 簡陋但功能齊全。注意:
- 不允許外部貼上,但允許編輯器內複製
- 支援 Java / C# / Python / C++ / JavaScript
- 沒有自動樣例,你要自己寫測試案例
學員還原題:藥劑師排班衝突檢測
給定
shifts[i] = (pharmacist, start, end),判斷同一藥劑師是否有時間重疊的排班,回傳所有衝突對。
from collections import defaultdict
def conflicts(shifts):
by_p = defaultdict(list)
for i, (p, s, e) in enumerate(shifts):
by_p[p].append((s, e, i))
out = []
for p, lst in by_p.items():
lst.sort()
for i in range(1, len(lst)):
if lst[i][0] < lst[i-1][1]:
out.append((lst[i-1][2], lst[i][2]))
return out
複雜度:O(n log n)。坑點:邊界 start == end 算不算重疊,要看題面定義;不確定時跟出題人確認是 Epic 鼓勵的做法。
學員還原題:病歷標籤去重
給定一組病歷的標籤列表
cases[i] = [tags...],回傳任意兩個病歷標籤集合相同的所有 case 對。要求 O(N + total) 平均複雜度。
from collections import defaultdict
def dup_cases(cases):
sig = defaultdict(list)
for i, tags in enumerate(cases):
key = frozenset(tags)
sig[key].append(i)
pairs = []
for ids in sig.values():
if len(ids) >= 2:
for a in range(len(ids)):
for b in range(a + 1, len(ids)):
pairs.append((ids[a], ids[b]))
return pairs
追問:如果標籤是 100 萬種、case 是 1000 萬條怎麼辦?答:把 frozenset 換成有序陣列的 hash,避免 hash 衝突;分散式情境用 MinHash 近似。
五、得分閾值與通過率
22 份樣本資料:
全段通過 ████ 18%
SJT 卡線 ████████ 35%
數學卡線 ██████ 27%
程式卡線 ████ 18%
其他 █ 2%
通過率約 18%。SJT + 數學是最容易卡的兩段。程式段反而通過率較高(題不難,但需要細心)。
六、4 週備戰節奏
| 週次 | 任務 |
|---|---|
| W1 | SJT 價值觀對齊 + 30 題真題練習 |
| W2 | 數學速算 + 機率 / 數列模板 |
| W3 | LC Easy–Med 限時 mock × 5 |
| W4 | 全段連考模擬 + 失分診斷 |
七、面試官評分維度(來自學員 debrief)
| 維度 | 占比 | 觸發關鍵詞 |
|---|---|---|
| 客戶視角 | 30% | "patient", "hospital workflow" |
| 溝通透明 | 25% | "I would tell", "share early" |
| 程式可讀性 | 20% | 命名 + 註解 + 函式劃分 |
| 複雜度意識 | 15% | 主動給 Big-O |
| 邊界處理 | 10% | 主動列 edge case |
oavoservice 在 Epic OA 階段提供 SJT 價值觀題庫、數學速算包、Coding 限時 mock + 1v1 複盤 一站式方案。
FAQ
Epic 給 OA 邀請後多久要做?
通常 7 天視窗,且只能做一次。建議安排在精神最好的那 3 小時連續做完,中途不能存檔。
Epic OA 重考機會?
冷凍期 12 個月,期間換職位 / 換 BU 可繞開。但 SJT 題庫本身就大,重考很難依賴記憶。
Epic 在意學歷背景嗎?
Epic 招很多非頂校的候選人,OA 表現 + culture fit > 學校排名。但需要願意搬到 Wisconsin(hybrid)。
數學段允許用計算機嗎?
不允許。提前練心算和快速估算是關鍵。
正在準備 2026 Epic OA?
oavoservice 跟蹤 Epic OA 已經超過 3 年,覆蓋 SJT / 數學 / 程式三段全流程。提供 題型預測、限時 mock、SJT 價值觀對齊、得分診斷 全鏈路服務。
👉 立即加微信:Coding0201,獲取 Epic 當週 OA 真題與備考方案。
聯絡方式
Email: [email protected]
Telegram: @OAVOProxy