intermediate
Static analysis
Combine TypeScript, dependency checks, security scanners, and domain-specific rules to catch problems before runtime.
Static analysis combines TypeScript strictness, dependency boundary checks, security scanners, dead-code detection, and custom architectural rules. It finds whole-class defects before runtime: unsafe casts, missing exhaustiveness, forbidden imports, and known vulnerable dependency versions. The goal is fast feedback with low false-positive fatigue.
On interviews: compare compiler errors, lint rules, and deeper analyzers like dependency-cruiser or Semgrep. Explain triage when signal is noisy.
Common pitfalls: running analyzers only locally; ignoring findings in legacy folders forever; rules without owners or rollback plan.
The trade-off is flexibility versus complexity—know when the simpler path is enough.
Checklist:
- Layer checks from fast local to slower CI jobs.
- Track analyzer versions and baselines.
- Assign owners for new rule categories.
- Tie high-severity findings to merge blockers.