# CHEAT_SHEET — Integration Engineer 4 (Oracle DBA, CORE)

## 1. Troubleshooting method (Understand–Prepare–Identify–Support)

1. **Understand** — symptom, scope, recency: what changed, who is affected, since when. Pull the first data (see §5) before theorizing.
2. **Prepare** — baseline + blast radius: metrics window, recent deploys/config, guard against making it worse (snapshot, read-only check).
3. **Identify** — narrow with evidence: top wait event / top SQL / error class; form one hypothesis, test it, rule out the trap.
4. **Support** — fix + stay-fixed: remediate, verify metric recovery, write the runbook/automation so the defect class cannot recur. Say the value it maps to.

Say aloud: "Understand, Prepare, Identify, Support — data first, trap ruled out, fix that stays fixed."

## 2. RAC triage checklist

- Interconnect first: latency/errors on cluster interconnect, LMS/GCS wait events (`gc cr block busy`, `gc buffer busy`).
- Quorum second: voting disk health, OCR integrity, node evictions in CRS logs.
- Services third: service placement, TAF/FAN configuration, connection-drain behavior on failover.
- TRAP: claiming RAC = HA without fencing/quorum detail. Say: "Fencing plus voting-disk quorum prevents split-brain; TAF only helps if services are placed correctly."

## 3. DataGuard triage checklist

- Transport lag vs apply lag: query `V$DATAGUARD_STATS` for each; lag source decides the fix (network vs apply rate vs MRP stopped).
- Standby redo logs: sized and present on standby or SYNC redo ships stall.
- FSFO readiness: observer running, thresholds set, application brownout plan for failover.
- Switchover (planned, lossless, role reversal) vs failover (unplanned, possible data loss, reinstate old primary after).
- TRAP: no zero-RPO plan for payments. Say: "SYNC + standby redo + FSFO gives zero data loss only while transport keeps up — monitor lag continuously."

## 4. GoldenGate triage checklist

- Pipeline: extract → pump → replicat; check each process status + trail-file growth + checkpoint lag (`LAG EXTRACT/PUMP/REPLICAT`).
- CDC source: supplemental logging on, archive logs retained, DDL replication configured if needed.
- Conflicts: collision detection + resolution rules per table (latest-timestamp, trusted-source, delta); bi-directional needs loop prevention.
- TRAP: ignoring bi-directional loop risk. Say: "Every bi-directional table gets a conflict rule before go-live, or replication loops."

## 5. AWR/ASH drill order + first data to pull

1. Top wait event (AWR top-5 timed events) — one bottleneck at a time.
2. Top SQL by that wait (ASH + `V$ACTIVE_SESSION_HISTORY` drilldown).
3. `EXPLAIN PLAN` + outline/baseline compare — did the plan change?
4. Baseline vs now: ADDM findings, deploy/config window, stat staleness.
5. OS/storage attribution: OEM host metrics, redo/IO latency, interconnect.

Commands: AWR report (`awrrpt.sql`) · ASH report (`ashrpt.sql`) · ADDM (`addmrpt.sql`) · `SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(...));` · `V$DATAGUARD_STATS` · GoldenGate `INFO ALL`, `LAG *`.

Say aloud: "Top wait first, top SQL second, one hypothesis, then test — never tune without a baseline and a quantified result."

## 6. Backup / recovery / patching runbook

- RMAN: full + incremental + archivelog policy; controlfile/spfile autobackup on; retention matched to RPO.
- Restore proof: scheduled restore-to-test (not just `VALIDATE`); PITR rehearsal with target-time recovery; measured RTO per database tier.
- Patching: pre-patch snapshot/backup, Datapatch plan, rolling vs downtime patch per RAC need, explicit rollback (restore point + backout steps) with owner and timebox.
- Say aloud: "An untested backup is not a backup — restore proves it, and every patch ships with a rollback owner."

## 7. SOX / PCI audit lines

- Least privilege: role-based grants, no direct object grants to users, quarterly access recertification.
- Audit trails: unified auditing on for privileged actions, DBA activity logged, trail retention per policy, Splunk/Datadog forwarding for review.
- Key rotation + secrets: wallet/TDE master-key rotation schedule, no credentials in scripts or Jenkins logs, IAM-style separation even on-prem.
- PII: data masking in non-prod, need-to-know access, breach-notification path known.
- TRAP: vague compliance answer. Always answer with control + evidence: "Control X, evidenced by log/report Y, reviewed on cadence Z."

## 8. Exadata notes

- Smart scan offload: predicate filtering, column projection, and decompression in storage cells — check `cell smart table scan` vs `cell smart index scan` efficiency.
- Offload blockers: PL/SQL functions on indexed columns, bind-mismatch, chained rows, encrypted columns without cell support.
- HCC + partitioning: compression tier by access pattern; partition by the payments query predicate (date/account), local vs global index trade-off.
- Cell health: celldisk balance, flash cache hit rate, IORM plan for mixed workloads.

## 9. STAR story index (Situation 2–3 sent / Task "I owned" / Action longest / Result X-as-measured-by-Y-by-doing-Z + stay-fixed)

| Value | Story | Metric to quote |
|-------|-------|-----------------|
| Excellence | Outage / perf escalation owned end-to-end | MTTR + runbook cut next MTTR |
| Excellence | Diagnostics others missed (AWR deep dive) | Diagnosis time before/after via root-cause data |
| Do the Right Thing | Compliance call (blocked risky change) | Risk avoided + approved path shipped |
| Ownership | 24h workaround, permanent fix next cycle | Time-to-mitigate + ship date |
| Ownership | Resilience save (HA/DR failover executed) | RTO/RPO met + customer impact contained |
| Collaboration | Conflict + cross-team unblock / mentoring | Delivery unblocked across teams |

Mechanics: values in EVERY round, not just behavioral. "I" not "we". Data + recency. 2–3 stories per value in bank.

## 10. Intro spine — Jesus, 23-yr Oracle (90 sec, Capital One Chicago hybrid)

> "I'm Jesus — 23 years solving migration and performance problems on enterprise Oracle: RAC, DataGuard, GoldenGate, AWR-driven tuning, plus backup/recovery and Exadata at scale.
> I do the job this CORE role describes: technical integration lead on Agile teams — design, build, test, and support enterprise-scale Oracle integrations with zero-data-loss HA/DR, and carry them onto the cloud layer with observability and resilience built in.
> I troubleshoot Understand-Prepare-Identify-Support, lead with the first data, and leave fixes that stay fixed.
> I'm targeting Integration Engineer 4 on CORE in Chicago because foundational availability for mission-critical payments is exactly the problem I've spent my career on."

Gap line (honest): "My gap is hands-on AWS-native depth versus Oracle internals — closing it with DMS, RDS, and CloudWatch labs in this 10-day plan, and where I'd need the cloud team I'll say so."
Standing fact: Exceeds-Expectations-level performer since 2018 (update title/year to current record before quoting).
