Back to Audits
Deploy & Observe
Can we run and monitor this?
Review deployment pipelines, monitoring coverage, and resilience patterns. Ship confidently and know when things break.
Stage expectations
POC
Skip check
Manual deploy is acceptable
No monitoring required
Just get it running
MVP
Light check
Basic CI/CD in place
Error tracking active
Can deploy without fear
MMP
Full check
Full pipeline with tests
Monitoring dashboard exists
Alerting configured
PROD
Complete check
Runbooks documented
On-call rotation defined
Incident response ready
CI/CD Pipeline
MVP+- Pipeline runs on every push to main
- Pipeline runs on every PR
- Linting runs before build
- Tests run before deploy
- Build fails if tests fail
- Deployments are automated (no manual steps)
- Pipeline status visible to team
Environment Configuration
MVP+- Environment variables separated by environment
- Production secrets not accessible in dev/staging
- Environment variable documentation exists
- .env.example updated with required variables
- Secrets stored in platform secret manager
- No secrets in version control
Preview Deployments
MVP+- Preview deployments created for PRs
- Preview URLs accessible to reviewers
- Preview deployments cleaned up after merge
- Preview environment has test data (not prod)
- Preview URLs protected if needed
Rollback Capability
MMP+- Previous deployment can be restored quickly
- Rollback process documented
- Rollback tested periodically
- Database migrations are reversible
- Feature flags allow quick disable of features
- Rollback doesn't require code changes
Feature Flags
MMP+- Feature flag system in place
- New features deployed behind flags
- Flags can be toggled without deploy
- Flag cleanup process defined
- Kill switches for critical features
- Percentage rollouts possible
Database Migrations
MMP+- Migrations run automatically in pipeline
- Migrations are backward compatible
- Rollback migrations exist
- Migration history tracked
- No manual database changes
- Migration tested in staging before prod
Common Issues & Quick Fixes
Manual deployments required: Set up Vercel/Netlify auto-deploy from main branch
Tests skipped to deploy faster: Make test passing a hard requirement for merge
No way to rollback: Use Vercel instant rollback or implement deployment versioning
Secrets in .env committed: Add .env to .gitignore, use platform secrets
PRs deployed to production: Use preview deployments for PRs, main for prod
Incident Response Template
- 1. Detect: Alert received, verify the issue exists
- 2. Communicate: Notify stakeholders, update status page
- 3. Contain: Prevent further damage (feature flag, rollback)
- 4. Diagnose: Find root cause using logs and monitoring
- 5. Fix: Implement and deploy solution
- 6. Verify: Confirm issue resolved, monitoring normal
- 7. Review: Post-incident review, document learnings
Tools & Resources
CI/CD Platforms
- Vercel — Next.js optimized deployment
- GitHub Actions — CI/CD workflows
- Netlify — Jamstack deployment
- Railway — Infrastructure platform
Error Tracking
Monitoring
- Vercel Analytics — Web analytics and vitals
- Datadog — APM and infrastructure
- Grafana — Metrics dashboards
- UptimeRobot — Uptime monitoring
Feature Flags
- LaunchDarkly — Enterprise feature flags
- Flagsmith — Open source feature flags
- PostHog — Product analytics + flags
- Vercel Edge Config — Edge feature flags
AI Agent Commands
Use these prompts with your AI coding agent to check deployment readiness:
Run the Deploy & Observe audit at MVP levelCheck CI/CD configuration for best practicesFind missing error boundaries in the appAudit health check endpoint coverageCheck for missing environment variable documentation