By the end of 2011, Support Engineering wants to move from big releases to Continuous Deployment. There's lots to do to reach that goal.
- A bugfix reaches production within 30 minutes of being checked in.
- [MISSED] XUnit results from JS test suite.
- [DONE] Stop using SVN. 
- [DONE] Crontab in Git. 
- Now we just need to start using it.
- [MISSED] Script deployment.
- [DONE] Get release cycle down to one week.
- [DONE] Replace branches with flags.
- [DONE] XUnit results from Qunit
- Update dev server from CI.
- Break Selenium into deploy-blocking and environmental.
- Run deploy-blocking Selenium after check-in/dev update.
- Run QUnit on all major browsers.
- Deploy with Chief (big red button!).
- Organize test suite into unit/functional/acceptance/etc.
- Work with Web QA Automation to maximize automated coverage and combine results.
- Automated performance tests.
- Aggregation and graphs.
- Define a secure, defensive, robust flow from source control to production.
- If someone steals James' laptop, breaks in, and commits an infinite loop, that change should not reach production.
- Automate/one-button push process.
There is a qualitative difference between deciding which work to group into a release and when to fix small bugs when changes go live immediately. Our concept of planning will have to change.
- [DONE] Push every week. (By end of Q2.)
- Push every day.
- Push several times per day.
- [DONE] Support feature flags.
- [DONE] Support features per group or percentage.