The end of the year is the time for a retrospective — not just for a sprint, but for the whole year. 2013 was a year of major changes in our team and technology stack. Here’s a summary.
Technology Changes¶
SVN to Git — the biggest change of the year. Pull requests and code reviews dramatically improved code quality. JBoss AS 7 as the new default app server, replacing GlassFish. Zabbix replacing Nagios for monitoring. HAProxy replacing Apache mod_jk for load balancing. Python for new admin scripts instead of Perl.
Process Changes¶
Scrum for all new projects. ITIL incident management with JIRA. Mandatory code review. Penetration tests as part of the release process. DR plan tested and maintained.
What Worked¶
Git + pull requests = highest ROI change of the year. Scrum retrospectives — continuous improvement. Automated tests (Selenium + JUnit) — regression bugs down 40%. SonarQube for measuring technical debt.
What Didn’t Work¶
ESB on a small project — overhead outweighed the benefit. Migration to Java EE 7 was delayed — the ecosystem is not ready. Full Scrum with a fixed-price contract — we had to find a compromise.
Plan for 2014¶
Java EE 7 for new projects. Centralized log management (ELK stack?). Infrastructure automation (Puppet/Chef). More automated tests. Continuous process improvement.
Main Lesson of the Year¶
Technology changes are easy — cultural changes are hard. Git, Scrum, code review — the tools are easy, convincing the team is the challenge. But when you do it right, the results are dramatic. And a retrospective isn’t just for the end of a sprint — do it at the end of the year. It’s worth it.
Need help with implementation?
Our experts can help with design, implementation, and operations. From architecture to production.
Contact us