Methodologies
- Scrum
- Backlog development (refinement)
- Spring planning
- Agile
- Kanban
- Waterfall
- Extreme programming (XP)
- Lean
- DevOps
- Rapid application development (RAD)
- Test-driven development (TDD)
Production Process
- Technical design doc / RFC + architecture (how components interact)
- Design review + senior engineer feedback loop
- Documentation of subsystems to be built by individual dev teams
- Backlog dev + sprint planning + working with PMs + TPMs to discretize tasks
- Software dev + completing task tickets (JIRA, Linear, Asana)
- Unit + integration tests, static + dynamic analysis
- Code submission review (CR) + pull/merge requests + adherence to style guides + automated checks (CI)
- Test in staging + testing edge cases + performance + security testing (simulate high traffic and security standards)
- Push to production + CI/CD pipeline
- Canary release + blue-green deployment + feature flags (switch to enable/disable a feature)
- Monitoring (error rates, latency, real-time logs) + support tickets + user feedback + incident response (pre-defined rollback plan)
Philosophies
- Scoping + preventing “scope creep”
- Consider data models (database structs + API specs) + trade-offs
- Always start with a solid design doc + architecture
- Built modular from design doc + architecture in chunks
- Always write tests first
- Load balancing + session affinity
- Canary is often released to a small subset of users (e.g. 1%) + A»B (e.g. 90-10, 80-20) since it is meant to validate production functionality
Production Deployment Methodologies
- Canary
- Blue-Green
- Rolling
- Shadow
- A/B Testing
- Big Bang
- Feature flags
- Dark launching
← Back to home